Googles Schwachstellen-Scanner prĂĽft Container-Layer und Maven-Projekte

Die neue Version von Googles Open-Source-Vulnerabilty-Scanner untersucht Abhängigkeiten in Container-Image-Layern und Maven-Projekten.

vorlesen Druckansicht 2 Kommentare lesen
Viele schwarze Würfel. In der Mitte ist ein roter Würfel mit einem Käfer darauf.

(Bild: Andrii Yalanskyi/Shutterstock.com)

Lesezeit: 3 Min.
close notice

This article is also available in English. It was translated with technical assistance and editorially reviewed before publication.

Google hat die zweite Version seines Schwachstellen-Scanners für Open-Source-Projekte veröffentlicht, der nun tiefergehende Analysen in komplexen Projekten und Containern durchführt. Außerdem unterstützt er Java-Projekte via Maven und wirft die Ergebnisse als interaktiv filterbares HTML aus.

Mit dieser Version verbindet Google das 2022 vorgestellte Konsolen-Tool Open-Source-Vulnerability-Scanner (OSV-Scanner) mit der Analyse-Bibliothek OSV-Scalibr (Software Composition Analysis LIBRary), die verzweigte Projekt- und Abhängigkeitsstrukturen in Repositories und Containern untersucht.

Der Scanner analysiert damit nun die Ebenen von Container-Images und kann Aussagen treffen, in welchem Layer ein Paket zugefügt wurde, wie das Basis-Image gestaltet ist, welche Befehle ausgeführt wurden und welches Betriebssystem zugrunde liegt. Dabei filtert es Schwachstellen heraus, die das Image wahrscheinlich nicht beeinträchtigen. Die Layer-Analyse funktioniert mit Images von Alpine OS, Debian und Ubuntu sowie Code in den Sprachumgebungen Go, Java, Node.js und Python. Der Scan-Befehl lautet:

osv-scanner scan image <image-name>:<tag>

Außerdem entdeckt der Scanner jetzt Schwachstellen in weiteren Formaten von Abhängigkeiten von Projekten und Containern: Node-Module, Python-Wheels, Java-Uber-Jars und Go-Binaries sowie Lock- und Manifest-Dateien wie .NET deps.json, Python uv.lock, JavaScript bun.lock und Haskell cabal.project.freeze und stack.yaml.lock.

Videos by heise

Eine geführte Bereinigung (Guided Remediation), die Abhängigkeiten in Manifest- und Lock-Dateien untersucht, gibt es seit April 2024 für npm-Pakete und jetzt auch für Java durch die Unterstützung von Mavens pom.xml-Dateien. OSV-Scanner untersucht dabei nicht nur die Abhängigkeiten, sondern schreibt Änderungen in die lokale und die lokale Parent-pom.xml (override). Noch experimentell ist ein Kommando, um automatisch alle abhängigen Pakete zu aktualisieren. Die Maven-Bereinigung funktioniert derzeit nur nicht-interaktiv, Anwenderinnen und Anwender sollten daher ein Backup anlegen. Der Befehl lautet:

osv-scanner fix --non-interactive --strategy=override -M path/to/pom.xml

Interaktiv hingegen zeigt sich das neue HTML-Format für die Scan-Ergebnisse, das einfach zugängliche Filtermöglichkeiten bietet, beispielsweise nach Schweregrad, Container-Layer oder Paket-IDs. Ebenso griffbereit sind hier ausführliche Hinweise für die Bereinigung der Probleme.

Der OSV-Scanner zeigt farbig den Schweregrad einer Sicherheitslücke und weitere Informationen dazu im nächsten Tab.

(Bild: Google)

Die Open-Source-Sicherheits-Tools von Google umfassen die drei Komponenten OSV-Scanner, OSV-Scalibr und OSV.dev. Letzteres ist die Schwachstellendatenbank, von der die beiden anderen Tools die Metadaten beziehen. Scanner und Bibliothek waren bislang getrennt, mit der aktuellen Version wird der Scanner die offizielle Tool-Oberfläche der Bibliothek, jedoch noch nicht alle Funktionen umfassend, beispielsweise fehlt der Secrets-Scan.

Das plant das Google-Team jedoch für die nächsten Versionen. Außerdem soll das Tool künftig die komplette Dateisystemstruktur von Container-Layern analysieren. Hinzu kommt die Unterstützung weiterer Formate und Sprachen.

(who)