Google wprowadził zestaw narzędzi OSV-Scanner do sprawdzania niezałatanych luk w kodzie i aplikacjach, biorąc pod uwagę cały łańcuch zależności związanych z kodem. OSV-Scanner pozwala zidentyfikować sytuacje, w których aplikacja staje się podatna na ataki z powodu problemów w jednej z bibliotek używanych jako zależność. W tym przypadku podatną bibliotekę można wykorzystać pośrednio, tj. być wywoływane poprzez inną zależność. Kod projektu napisany jest w Go i rozpowszechniany na licencji Apache 2.0.
OSV-Scanner może automatycznie rekurencyjnie skanować drzewo katalogów, identyfikując projekty i aplikacje na podstawie obecności katalogów Git (informacje o podatnościach są określane poprzez analizę skrótów commitów), plików SBOM (Software Bill of Material w formatach SPDX i CycloneDX) oraz manifestów lub plików blokad z menedżerów pakietów, takich jak Yarn, NPM, GEM, PIP i Cargo. Obsługuje również skanowanie ładunku obrazów kontenerów Docker zbudowanych z pakietów w repozytoriach. Debian.

Informacje o lukach w zabezpieczeniach pochodzą z bazy danych OSV (Open Source Vulnerabilities), która obejmuje informacje o problemach bezpieczeństwa w następujących repozytoriach: Crate.io (Rust), Go, Maven, NPM (JavaScript), NuGet (C#), Packagist (PHP), PyPI (Python), RubyGems, Android, Debian i Alpine, a także dane dotyczące luk w zabezpieczeniach jądra Linux oraz informacje z raportów o podatnościach w projektach hostowanych w serwisie GitHub. Baza danych OSV odzwierciedla status rozwiązania problemu, zatwierdzenia, które wprowadziły i naprawiły lukę, zakres wersji, których dotyczy problem, linki do repozytorium kodu projektu oraz powiadomienie o problemie. Dostarczony interfejs API umożliwia wykrywanie podatności na poziomie zatwierdzenia i tagu oraz analizę wpływu podatności na produkty pochodne i zależności.

Źródło: opennet.ru
