Проект представляет из себя базу данных с информацией об уязвимостях открытого ПО - OSV (Open Source Vulnerabilities), а также непосредственно набор инструментов для поиска известных уязвимостей в программных продуктах - OSV-Scanner.
Сама база данных содержит информацию о проблемах в репозиториях 16-ти программных экосистем (дистрибутивов, пакетных менеджеров). Среди них:
- ядро Linux - информация о дырах в ядре;
- репозитории Debian, Alpine;
- PyPI - данные о проблемах с безопасностью в пакетах Python;
- Packagist - пакеты PHP;
- NPM - о безопасности JavaScript / TypeScript пакетов;
- Maven - для Java;
- NuGet - пакетный менеджер C#;
- RubyGems - пакеты для языка Ruby;
- пакеты для языка Go;
- пакеты для ОС Android;
и т.д.
В целом, распределение записей в базе данных OSV по различным экосистемам выглядит следующим образом:
Всего записей в базе данных более 38 тысяч, что делает OSV.dev самой большой открытой базой данных об уязвимостях ПО.
Стоит также отметить, что сканирование ведётся рекурсивно по зависимостям программных проектов. Приблизительно отчёт выглядит так:
Здесь мы видим:
- источник - файл с зависимостями,
- экосистема - о каком пакетном менеджере / операционке и т.д. идёт речь,
- пакет, о котором известно, что там есть проблема,
- используемая версия,
- URL, где описана уязвимость.
Как по мне, замечательный проект, который позволяет автоматизировать поиск проблем в ПО. Надо будет поискать способы добавить эту проверку, например, на push-хук git-а или на push в docker-registry.