Google har introduceret OSV-Scanner-værktøjssættet til at tjekke for uoprettede sårbarheder i kode og applikationer under hensyntagen til hele kæden af afhængigheder forbundet med koden. OSV-Scanner giver dig mulighed for at identificere situationer, hvor en applikation bliver sårbar på grund af problemer i et af de biblioteker, der bruges som afhængighed. I dette tilfælde kan det sårbare bibliotek bruges indirekte, dvs. blive kaldt gennem en anden afhængighed. Projektkoden er skrevet i Go og distribueret under Apache 2.0-licensen.
OSV-Scanner kan automatisk rekursivt scanne et mappetræ, identificere projekter og applikationer ved tilstedeværelsen af git-mapper (oplysninger om sårbarheder bestemmes gennem analyse af commit-hash), SBOM-filer (Software Bill Of Material i SPDX- og CycloneDX-formater), manifester eller låse filer pakke managers såsom Yarn, NPM, GEM, PIP og Cargo. Det understøtter også scanning af indholdet af Docker-containerbilleder bygget fra pakker fra Debian-lagre.
Oplysninger om sårbarheder er hentet fra OSV (Open Source Vulnerabilities) databasen, som dækker information om sikkerhedsproblemer i Crates.io (Rust), Go, Maven, NPM (JavaScript), NuGet (C#), Packagist (PHP), PyPI (Python), RubyGems, Android, Debian og Alpine, samt data om sårbarheder i Linux-kernen og information fra sårbarhedsrapporter i projekter hostet på GitHub. OSV-databasen afspejler status for problemløsningen, angiver commits med udseende og korrektion af sårbarheden, rækken af versioner, der er påvirket af sårbarheden, links til projektets lager med koden og en meddelelse om problemet. Den medfølgende API giver dig mulighed for at spore manifestationen af sårbarheder på niveauet af commits og tags og analysere modtageligheden af afledte produkter og afhængigheder til problemet.
Kilde: opennet.ru