Die Testergebnisse von Tools zur Erkennung nicht gepatchter Sicherheitsanfälligkeiten und zur Identifizierung von Sicherheitsproblemen in isolierten Docker-Container-Abbildern. Die Überprüfung ergab, dass in 4 von 6 bekannten Docker-Image-Scannern kritische Sicherheitsanfälligkeiten vorhanden waren, die einen direkten Angriff auf den Scanner selbst ermöglichten und die Ausführung eigenen Codes im System ermöglichten, in einigen Fällen (z.B. bei der Nutzung von Snyk) mit Root-Rechten.
Für den Angriff reicht es aus, die Überprüfung des eigenen Dockerfile oder manifest.json zu initiieren, das speziell formatierte Metadaten enthält, oder Dateien wie Podfile und gradlew innerhalb des Abbilds abzulegen. Exploit-Prototypen für die Systeme
, ,
und
. Das Paket , das ursprünglich mit dem Fokus auf Sicherheitsvorkehrungen entwickelt wurde, zeigte die beste Sicherheit. Auch im Paket wurden keine Probleme festgestellt. Insgesamt wurde die Schlussfolgerung gezogen, dass Docker-Container-Scanner in isolierten Umgebungen ausgeführt oder nur zur Überprüfung eigener Abbilder verwendet werden sollten, und dass Vorsicht geboten ist, wenn solche Tools in automatisierte Systeme der kontinuierlichen Integration integriert werden.
Bei FOSSA, Snyk und WhiteSource war die Sicherheitsanfälligkeit mit dem Aufruf eines externen Paketmanagers zur Bestimmung von Abhängigkeiten verbunden, und es war möglich, die Ausführung eigenen Codes über die Angabe der Befehle touch und system in den Dateien und .
Zusätzlich wurden bei Snyk und WhiteSource , Bei Anchore war die Sicherheitsanfälligkeit
verursacht durch skopeo Der gleiche Autor führte eine Studie zur Effektivität der Entdeckung nicht gepatchter Sicherheitsanfälligkeiten durch Sicherheits-Scanner von Docker-Containern durch und zum Niveau der Fehlalarme (
Teil 3, , ). Nachfolgend sind die Testergebnisse von 73 Images aufgeführt, die bekannte Schwachstellen enthalten, sowie eine Bewertung der Effektivität der Erkennung gängiger Anwendungen in den Images (nginx, tomcat, haproxy, gunicorn, redis, ruby, node).
Quelle: opennet.ru
