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.
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.
(