Trivy — один из самых удобных open-source инструментов для поиска уязвимостей, секретов и misconfiguration в контейнерах, файловых системах, репозиториях и IaC. Его часто выбирают за простоту: поставили, запустили, получили понятный отчет.
Что умеет Trivy
- Сканирует Docker-образы на CVE
- Проверяет Kubernetes, Terraform, Dockerfile, Helm, YAML
- Ищет секреты: токены, ключи, пароли
- Работает в CI/CD и локально
- Поддерживает вывод в JSON, таблицах, SARIF
Установка
Самый быстрый способ на Linux/macOS:
brew install trivy
или:
sudo apt install trivy
Проверить установку:
trivy --version
1. Сканирование контейнерного образа
Пример для Nginx:
trivy image nginx:latest
Что покажет отчет:
- уязвимые пакеты
- severity: LOW, MEDIUM, HIGH, CRITICAL
- установленную и исправленную версии
- путь, где найдена проблема
Чтобы вывести только критичные и высокие:
trivy image --severity HIGH,CRITICAL nginx:latest
Чтобы завершать CI с ошибкой при опасных уязвимостях:
trivy image --exit-code 1 --severity CRITICAL nginx:latest
2. Сканирование файловой системы проекта
Полезно для локальной проверки приложения:
trivy fs .
Так можно найти:
- уязвимые зависимости
- секреты в коде
- небезопасные конфиги
3. Проверка IaC: Terraform, Kubernetes, Dockerfile
Сканирование каталога с инфраструктурным кодом:
trivy config .
Trivy обнаружит типовые ошибки:
- открытые security groups
- контейнеры с
privileged: true - отсутствие resource limits
- запуск от root
- опасные настройки S3, IAM, Kubernetes
Проверка конкретного файла:
trivy config deployment.yaml
4. Поиск секретов
Если нужен акцент именно на утечках:
trivy fs --scanners secret .
Это помогает находить:
- AWS keys
- GitHub tokens
- private keys
- hardcoded passwords
5. JSON-отчет для автоматизации
Для интеграции в пайплайны и системы отчетности:
trivy image -f json -o trivy-report.json nginx:latest
Практические советы
- Сканируйте образы до деплоя, а не после
- Добавляйте
--exit-code 1в CI/CD для HIGH/CRITICAL - Проверяйте не только image, но и
configдля IaC - Исключайте шум через
.trivyignore, но не злоупотребляйте - Обновляйте базу уязвимостей перед важными проверками
Минимальный сценарий для DevSecOps ⚙️
trivy fs .— проверка проектаtrivy config .— проверка IaCtrivy image app:tag— проверка контейнера- блокировка релиза при CRITICAL
Почему Trivy популярен
Он закрывает сразу несколько задач безопасности одним CLI-инструментом. Для команд, где важны скорость, автоматизация и понятный onboarding, это один из лучших стартовых вариантов. ✅