Moderne Versionen der Open-Source-Lösung Prometheus
Die Sicherheitsforscher Andrey Polkovnychenko und Shachar Menashe von JFrog weisen nun auf die fehlenden Sicherheitsmechanismen hin und empfehlen dringend die Implementierung von TLS und einfacher Authentifizierung.
Die Lösung zur metrikbasierten Ereignisüberwachung und Alarmierung für Cloud-Anwendungen wird von fast 800 Cloud-nativen Unternehmen verwendet, darunter Uber, Slack, Robinhood und viele mehr. Durch das Scraping von Echtzeit-Metriken von verschiedenen Endpunkten ermöglicht Prometheus eine einfache Beobachtung des Systemzustands. Es ermöglicht darüber hinaus eine Beobachtung von Hardware- und Software-Metriken wie Speicher- und Netzwerknutzung sowie softwarespezifisch definierten Metriken z. B. Anzahl der fehlgeschlagenen Anmeldeversuche bei einer Webanwendung.
Da die von Prometheus erfassten numerischen Metriken nicht als sensible Daten gelten, hat Prometheus verständlicherweise auf die integrierte Unterstützung von Sicherheitsfunktionen wie Authentifizierung und Verschlüsselung verzichtet, um sich auf die Entwicklung der überwachungsbezogenen Funktionen zu konzentrieren. Dies änderte sich vor etwa einem Jahr mit der Veröffentlichung von Version 2.24.0, in der Transport Layer Security (TLS) und grundlegende Authentifizierungsunterstützun
Da die Authentifizierungs- und Verschlüsselungsunterstützung relativ neu ist, haben viele Organisationen, die Prometheus verwenden, diese Funktionen noch nicht aktiviert, so dass viele Prometheus-Endpunkte vollständig dem Internet und damit Cybergefahren ausgesetzt sind, z. B. Endpunkte, auf denen frühere Versionen ausgeführt werden, wodurch Metrik- und Metadaten durchsickern können. Dies könnten dazu führen, dass über die Open Source-Software Prometheus Daten unbemerkt abfließen und verbirgt sich hinter der zu Beginn beschriebenen Metapher. Bei Suchen über spezielle Schwachstellen-Suchmaschinen wie Shodan konnten weltweit mehr als 27.000 verwundbare Endpunkte ausgemacht werden, über 3.000 davon in Deutschland.
Asaf Karas, JFrog Security CTO, kommentiert die Forschungsergebnisse wie folgt: „Dies ist in dreifacher Hinsicht von Bedeutung. Erstens ist Prometheus ein äußerst beliebtes Framework, das heute von vielen Unternehmen verwendet wird. Wenn das System in der Cloud eingesetzt wird, wird Prometheus höchstwahrscheinlich verwendet, um die Cloud-Anwendungen zu überwachen. Zweitens ist Prometheus zwar schon seit Jahren im Einsatz, aber die Sicherheitsmechanismen wurden erst im Januar 2021 hinzugefügt. Und schließlich, und das ist vielleicht das Wichtigste, geben die Entwickler wahrscheinlich unwissentlich sensible Informationen, einschließlich Anmeldedaten, preis, weil sie die Sicherheitsvorkehrungen wahrscheinlich nicht einsetzen.“
Fazit
Seit dem Aufkommen von dynamischen Service-Erkennungsmechanismen und dynamischen Kennzeichnungen ist es für Entwickler und IT-Serviceteams immer schwieriger geworden, nachzuvollziehen, welche Betriebsdaten tatsächlich von Prometheus offengelegt werden und diese Daten können sich ohne Vorankündigung ändern. Daher empfehlen die Sicherheitsforscher dringend die Verwendung von Authentifizierungs- und Verschlüsselungsmechanismen bei der Bereitstellung von Prometheus, um die unbeabsichtigte Weitergabe sensibler Informationen zu verhindern. Die Implementierung dieser Funktionen in Prometheus 2.24.0 und späteren Versionen ist dank der integrierten Unterstützung, die das Prometheus-Team im Januar hinzugefügt hat, einfacher denn je.
Zusätzlich zur Aktivierung dieser Mechanismen empfehlen sie jedem Entwickler zu überprüfen, ob vor der Implementierung der Authentifizierungs- und TLS-Funktionen in Prometheus möglicherweise sensible Daten offengelegt wurden.
Organisationen und Unternehmen, die eine stärkere Authentifizierung oder Verschlüsselung als die von Prometheus bereitgestellte benötigen, sollten erwägen eine zusätzliche Sicherheitsebene in der Systemarchitektur einzurichten, um die Sicherheit des gesamten Systems zu erhöhen. Ein Beispiel dafür ist ein nginx-Reverse-Proxy der vor Prometheus bei Bedarf erweiterte Authentifizierungsoptionen wie die Bearer-HTTP-Authentifizierung bereitstellt.
www.jfrog.com