Инструмент статического анализа для инфраструктуры как код, который обнаруживает облачные неверные конфигурации, уязвимости и секреты в Terraform, Kubernetes, CloudFormation и образах контейнеров во время сборки.
Checkov — это инструмент статического анализа кода для инфраструктуры как кода (IaC), а также инструмент анализа состава программного обеспечения (SCA) для образов и пакетов с открытым исходным кодом.
Он сканирует облачную инфраструктуру, развёрнутую с помощью Terraform, Terraform plan, Cloudformation, AWS SAM, Kubernetes, Helm charts, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Templates или OpenTofu, и выявляет ошибки конфигурации, связанные с безопасностью и соответствием требованиям, с помощью сканирования на основе графов.
Он выполняет сканирование состава программного обеспечения (SCA), которое представляет собой проверку пакетов с открытым исходным кодом и образов на наличие известных уязвимостей и экспозиций (CVE).
Checkov также лежит в основе Prisma Cloud Application Security — платформы, ориентированной в первую очередь на разработчиков, которая кодифицирует и упрощает облачную безопасность на протяжении всего жизненного цикла разработки. Prisma Cloud выявляет, исправляет и предотвращает ошибки конфигурации в облачных ресурсах и файлах инфраструктуры как кода.
Результаты сканирования в CLI

Результат запланированного сканирования в Jenkins

Чтобы установить pip, следуйте официальной документации
pip3 install checkov
В некоторых окружениях (например, Debian 12) может потребоваться установка Checkov в виртуальном окружении
# Create and activate a virtual environment
python3 -m venv /path/to/venv/checkov
cd /path/to/venv/checkov
source ./bin/activate