Zum Inhalt springen
Treten Sie dem Censys Community Forum bei: Verbinden, teilen und gedeihen! | Start hier
Blogs

Neues Protokoll: Offengelegte Kubernetes-Komponenten finden

Veröffentlicht am 13. August 2019

Kubernetes (manchmal auch als K8s abgekürzt) ist ein 2015 veröffentlichtes Open-Source-Container-Orchestrierungssystem, das häufig zur Automatisierung der Anwendungsbereitstellung, Skalierung und Verwaltung verwendet wird. Kubernetes erfreut sich zunehmender Beliebtheit, da es den Entwicklungsteams Zeit spart und die Arbeit in großem Umfang erleichtert. Da die Technologie noch relativ neu ist und die Akzeptanz so hoch ist, lernen viele Entwickler die Verwendung nach und nach, was oft zu Fehlkonfigurationen und eingebauten Unsicherheiten führt.

In letzter Zeit hat sich die Community sehr stark auf die Sicherheit von Kubernetes konzentriert. Erst letzte Woche gab es auf der Black Hat USA 2019 mehrere Schulungen zu diesem Thema und ein Briefing mit dem Titel "The Path Less Traveled", das sich speziell mit Angriffen auf Kubernetes befasste:Abusing Kubernetes Defaults".

Um Forschern, die sich mit dem Thema beschäftigen, und Sicherheitsteams in Unternehmen, die nach unbekannten und ungeschützten Kubernetes-Komponenten suchen, zu helfen, haben wir kürzlich das Kubernetes-Protokoll zu unserem IPv4-Datensatz hinzugefügt. Wir werden später in diesem Beitrag mehr ins Detail gehen, aber wir erkennen derzeit etwa 16.000 Hosts auf der ganzen Welt, auf denen Kubernetes läuft, wobei die meisten Hosts die Versionen 1.13 und 1.10 verwenden.

Glücklicherweise haben viele Unternehmen begonnen, den Risiken, die das Containerisierungsprotokoll mit sich bringen kann, mehr Aufmerksamkeit zu widmen.

Reale Angriffe, die Schwächen von Kubernetes ausnutzen

Kubernetes-Sicherheitsschwachstellen sind ein heißes Thema in der Community. Es gibt zwar einige echte Schwachstellen und Exploits, aber Fehlkonfigurationen sind ein viel häufigeres Problem.

  • Shopify machte kürzlich Schlagzeilen, als ein Bug-Bounty-Forscher das Unternehmen auf eine Schwachstelle aufmerksam machte, die es ihm ermöglichte, die Kontrolle über den Container-Cluster zu erlangen. Es ist zwar nicht klar, ob dies speziell mit Kubernetes zusammenhängt, aber es handelt sich um eine ähnliche Art von Sicherheitsrisiko, das mit Orchestrierungs-Tools verbunden ist.

  • Anfang 2018 wurde Tesla dank eines Versehens in der Kubernetes-Einrichtung Opfer eines Kubernetes-basierten Angriffs, bei dem nicht einmal ein Passwort für den Zugriff erforderlich war. "Innerhalb dieses einen Kubernetes-Pods waren die Zugangsdaten zur AWS-Umgebung von Tesla offengelegt, die einen Amazon S3 (Amazon Simple Storage Service)-Bucket mit sensiblen Daten wie Telemetriedaten enthielt", so die RedLock-Forscher.
  • Unsere Freunde von Laceworks Labs haben mit Hilfe der Daten von Censys nach verwundbaren Kubernetes-Instanzen in der freien Wildbahn gesucht. Konkret nutzten sie unsere Daten, um nach Kubernetes-Dashboards zu suchen.
  • "In unserer jüngsten Analyse haben wir über 500 [Kubernetes-Dashboards] gefunden, die dem Internet ausgesetzt sind. Für den API-Server haben wir wiederum Censys verwendet und über 21.000 zugängliche API-Server und 800 unsichere API-Server gefunden (keine Authentifizierung oder Autorisierung, weitere Untersuchungen folgen!)." Ihr Blog zu diesem Thema geht noch weiter ins Detail. Tatsächlich haben sie ihre Forschung auf der BSidesSF 2019 vorgestellt und ihr Vortrag ist sehenswert.
  • StackRox und Skybox haben kürzlich einen Bericht veröffentlicht, in dem sie vor den Gefahren und potenziellen Sicherheitsauswirkungen schlechter Container-Sicherheitspraktiken warnen .

Nachdem wir nun festgestellt haben, dass es laufend Angriffe auf diese Art von Orchestrierungs-Tools gibt, wollen wir uns genauer ansehen, wie Sie Kubernetes-Komponenten finden können, die im Internet offengelegt sind.

Wie finde ich Kubernetes unter Censys?

Glücklicherweise ist dies eine einfache Aufgabe, da wir ein neues Protokoll hinzugefügt haben: Port 6443. Sie können einfach unser Protokoll-Tag(protocols: "6443/kubernetes") verwenden, um sie schnell zu finden.

Wir empfehlen, mit der Suche nach Kubernetes zu beginnen , wenn das Dashboard läuft, da dies oft eine besondere Schwachstelle in diesen Komponenten ist.

Um speziell nach Kubernetes-Komponenten zu suchen, die mit Ihrem ASN- oder CIDR-Block verknüpft sind, fügen Sie einfach "AND [ASN][CIDR]" zu dieser Abfrage hinzu.

Für jede Kubernetes-Komponente, die wir finden konnten, finden Sie die folgenden Daten:

  • Namen
  • Adressen (intern und extern),
  • Wenn das Web-UI-Dashboard ausgeführt wird
  • rbac-Rollen
  • Informationen auf dem Host-Rechner oder Gast-Knoten:
    • OS
    • Kernel
    • Architektur
    • Docker-Version
    • kubelet Version
    • kube proxy version
    • Container-Bilder
    • beigefügte Bände
    • genutzte Volumina

Das folgende Bild stammt von einem einzelnen Host, den wir bei unseren Scans gefunden haben:

Zusätzlich zu diesen Attributen sammeln wir Daten zu Sicherheitsrollen und Pods. Das Risiko falsch konfigurierter Sicherheitsrollen besteht in der Möglichkeit von Angriffen zur Privilegienerweiterung. Wir versuchen auch festzustellen, ob das WEB UI Dashboard läuft, das als unsicher gilt, selbst wenn eine Authentifizierung erforderlich ist.

Tipps für die ordnungsgemäße Sicherung von Kubernetes

Zuallererst empfehlen wir dringend, Kubernetes, das von Natur aus ein ziemlich unsicherer Port ist, nicht dem Internet auszusetzen. Es gibt keinen wirklichen Vorteil, ihn zu verbinden, und alles, was es tut, ist, Sie für Risiken zu öffnen.

Zweitens: Lassen Sie keine anonyme Authentifizierung zu, die in einigen sehr speziellen Situationen bei einigen Kubernetes-Versionen standardmäßig aktiviert sein kann.

Ein paar Schritte, um diese richtig zu sichern:

Generell sollten Sie sicherstellen, dass Ihre Komponenten ordnungsgemäß eingerichtet und konfiguriert sind. Der CIS-Kubernetes-Sicherheitsbenchmark ist eine gute Grundlage, um sich selbst daran zu messen. Jeder Schritt, den Sie in diesem Prozess auslassen, kann später zu einem großen Problem werden und zu einem erheblichen Sicherheitsproblem führen. Die Überwachung der Konfiguration in diesem ersten Schritt ist entscheidend.

Kubernetes bietet einen recht ausführlichen Artikel über Sicherheitsprobleme und "Stolpersteine" und wie man sie vermeiden kann, der es wert ist, gelesen zu werden. Anstatt einfach nur das wiederzukäuen, was sie bereits zur Verfügung gestellt haben, werden wir Sie auf ihre Website schicken, um sehr spezifische Vorschläge zur Sicherheit Ihrer Kubernetes-Komponenten zu erhalten.

Denken Sie daran, dass Sie mit Censys alle Arten von exponierten Geräten und Infrastrukturen finden können. Sehen Sie sich einige der jüngsten Ergänzungen unserer Datensätze an: Microsoft Server Message Blocks (SMBs) und Remote-Desktop-Anwendungen wie pcAnywhere, Remote-Desktop-Protokoll (RDP) und Virtual Network Computing (VNC), zum Beispiel.

Wenn Sie auf der Suche nach weiteren Tipps wie diesen sind, wie Sie die Daten von Censys nutzen können, um Ihr Unternehmensnetzwerk sicher zu halten, sollten Sie unseren Blog im Auge behalten und unseren Twitter-Feed @censysio abonnieren.

Lösungen für das Management von Angriffsflächen
Mehr erfahren