Dockle: линтер безопасности для Docker-образов — 26 мая 2026 г. в 08:51:45.096
Dockle: линтер безопасности для Docker-образов 👋 Приветствую в мире цифровой безопасности! Поговорим об инструменте, который проверяет Docker-образы на реальные проблемы безопасности, а не просто синтаксис Dockerfile. ⏺Dockle берёт готовый образ и прогоняет его по чеклисту CIS Benchmarks для Docker. Находит запуск от root, секреты в ENV-переменных, setuid-файлы, незачищенный кэш пакетного менеджера, тег latest и ещё десяток проблем которые в реальных образах встречаются постоянно. ⏺ Установка: brew install goodwithtech/r/dockle # macOS/Linux # Ubuntu/Debian VERSION=$(curl --silent "https://api.github.com/repos/goodwithtech/dockle/releases/latest" | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') curl -L -o dockle.deb https://github.com/goodwithtech/dockle/releases/download/v${VERSION}/dockle_${VERSION}_Linux-64bit.deb sudo dpkg -i dockle.deb ⏺ Базовый запуск - просто указываешь образ: dockle your-image:tag # Без установки через Docker docker run --rm -v /var/run/docker.sock:/var/run/docker.sock \ goodwithtech/dockle your-image:tag ⏺ Полезные флаги: # Упасть с ненулевым кодом если нашлись проблемы — для CI dockle --exit-code 1 your-image:tag # Реагировать только на критические находки dockle --exit-code 1 --exit-level fatal your-image:tag # Результат в JSON dockle -f json -o results.json your-image:tag # Игнорировать конкретный чекпоинт dockle -i CIS-DI-0001 -i DKL-DI-0006 your-image:tag # Сканировать локальный tar-архив docker save alpine:latest -o alpine.tar dockle --input alpine.tar ⏺Или через .dockleignore если нужно системно исключить ряд проверок: # запуск от root — намеренно для nginx CIS-DI-0001 # latest — только для локальных тестов DKL-DI-0006 ⏺Самые частые FATAL в реальных образах: контейнер работает от root, секреты захардкожены в Dockerfile или ENV, ADD используется вместо COPY, кэш apt не очищается после установки пакетов, пустые пароли у системных пользователей. ⏺ В CI встраивается через GitHub Action: - uses: goodwithtech/dockle-action@main with: image: 'your-image:tag' exit-code: '1' exit-level: 'warn' ignore: 'CIS-DI-0001' 🤖[Бесплатный ChatGPT]hj(https://max.ru/id551504939598_1_bot)

