Originalbeitrag von David Fiser, Jakub Urbanec und Jaromir Horejsi
Falsche Konfigurationen stellen immer ein Risiko dar. Die Sicherheitsforscher von Trend Micro entdeckten über ihre Honeypots eine Angriffsmöglichkeit über eine Fehlkonfiguration eines APIs im quelloffenen Docker Engine-Community, wobei die Angreifer Container infiltrieren können und eine Variante (Backdoor.Linux.DOFLOO.AA) der Linux Botnet Malware AESDDoS verwenden. Docker APIs, die auf Container-Hosts laufen, ermöglichen es den Hosts, alle Container-bezogenen Befehle zu empfangen, die der Daemon mit Root-Rechten ausführt. Wenn ein externer Zugriff – absichtlich oder durch eine Fehlkonfiguration – auf API-Ports möglich ist, können Angreifer den Host übernehmen und Instanzen mit Schadsoftware „vergiften“. Auf diese Weise erlangen sie einen Remote-Zugriff auf Server von Nutzern und andere Hardware-Ressourcen. Es hat schon einige Fälle gegeben, wo die Cyberkriminellen etwa Krypto-Mining Malware installierten.
Der Angriff
Bei diesem neuen Angriff scannt der Angreifer erst extern eine Reihe vorgegebener IPs, indem er ein TCP SYN Packet an Port 2375 sendet, den Standard Port für die Kommunikation mit dem Docker Daemon. Dann wird eine Verbindung erstellt, die nach laufenden Containern fragt. Sobald ein solcher entdeckt wird, installiert sich der AESDDoS-Bot mithilfe des docker exec-Befehls, der einen Shell-Zugriff auf alle verfügbaren Container innerhalb des exponierten Hosts ermöglicht. Technische Details zum Angriff und den Tools liefert der Originalbeitrag.
DevOps-Sicherheitsempfehlungen und Trend Micro-Lösungen
Docker warnt explizit davor, den Docker Daemon so aufzusetzen, dass er auf Port 2375 horcht, denn damit hätte jeder die Möglichkeit, einen Root-Zugriff auf den Host zu erlangen, wo der Daemon läuft.
Um Container-bezogene Vorfälle zu verhindern, sollten Unternehmen die folgenden Leitlinien beachten:
- Checken der API-Konfiguration. Systemadministratoren und Entwickler sollten sicherstellen, dass die APIs so aufgesetzt sind, dass sie Anfragen nur von festgelegten Hosts oder internen Netzwerken empfangen. API-Endpoints HTTPS und Zertifikaten sichern.
- Das Prinzip der „Least Privilege“ anwenden. Es sollte sichergestellt sein, dass Container Images signiert und authentifiziert sind. Der Zugriff auf kritische Komponenten wie den Daemon-Service muss eingeschränkt werden. Netzwerkverbindungen sollten verschlüsselt sein.
- Befolgen der empfohlenen Best Practices. Docker liefert eine umfassende Liste mit Best Practices und hat eingebaute Sicherheitsfunktionen.
- Anwenden von automatisiertem Laufzeit- und Image-Scanning, um bessere Einsichten in die Prozesse des Containers zu erlangen (etwa um feststellen zu können, ob sie modifiziert wurden oder Lücken vorhanden sind). Applikationskontrolle und Integrity Monitoring helfen dabei, verdächtige Modifikationen auf Servern, in Dateien und Systembereichen zu überwachen.
Trend Micro unterstützt DevOps Teams Systeme sicher zu erstellen, sie schnell auszuliefern und sie überall laufen zu lassen. Trend Micro™ Hybrid Cloud Security liefert funktionsstarke, schlanke und automatisierte Sicherheit für die DevOps Pipeline mit mehreren XGen™ Threat Defense Techniken zum Schutz von physischen, virtuellen und Cloud Workloads. Die Lösung kann auch Container schützen mithilfe von Deep Security™ und Deep Security Smart Check, wobei Docker Container Images auf Malware und Sicherheitslücken in selbst bestimmten Zeiträumen gescannT werden. Der Originalbeitrag umfasst auch die Indicators of Compromise.