Что такое SCA
Анализ зависимостей на уязвимости
SCA (Software Composition Analysis) — это процесс автоматического анализа компонентов и зависимостей программного обеспечения для выявления известных уязвимостей.
Что анализирует SCA
- Open-source библиотеки — npm, PyPI, Maven пакеты
- Лицензии — совместимость с политикой компании
- Устаревшие версии — компоненты без поддержки
- Известные уязвимости — CVE из баз данных
Базы уязвимостей
- NVD (National Vulnerability Database) — основная база NIST
- GitHub Advisory Database — уязвимости GitHub
- Snyk Vulnerability DB — коммерческая база
- OSV (Open Source Vulnerabilities) — база Google
Популярные SCA-инструменты
- Snyk — облачный сервис с CI/CD интеграцией
- Dependabot — автоматические PR с обновлениями
- OWASP Dependency-Check — бесплатный сканер
- WhiteSource (Mend) — enterprise решение
Интеграция в процесс разработки
- Проверка при каждом коммите
- Блокировка сборки при критических уязвимостях
- Автоматическое создание тикетов
- Еженедельные отчёты по безопасности