Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
docker-bench-security — Docker Bench for Security — это скрипт, который проверяет десятки общепринятых лучших практик развёртывания контейнеров Docker в production. | Kitploit
Инструменты/GitHubGitHub/docker/docker-bench-security
Сканеры уязвимостейБезопасность контейнеровАудит конфигурацииDevSecOps
GitHubdocker/docker-bench-security

docker-bench-security

Docker Bench for Security — это скрипт, который проверяет десятки общепринятых лучших практик развёртывания контейнеров Docker в production.

Репозиторий
9.7k1.0k2 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Docker Bench для безопасности

Docker Bench для безопасности в работе

Docker Bench for Security — это скрипт, который проверяет десятки общепринятых лучших практик по развертыванию контейнеров Docker в production. Все тесты автоматизированы и основаны на CIS Docker Benchmark v1.6.0.

Мы предоставляем эту утилиту с открытым исходным кодом, чтобы сообщество Docker могло легко самостоятельно оценивать свои хосты и контейнеры Docker на соответствие этому бенчмарку.

ReleaseCIS
1.6.01.6.0
1.5.01.5.0
1.3.61.4.0
1.3.51.2.0
1.3.31.1.0
1.3.01.13.0

Запуск Docker Bench для безопасности

Запуск с базового хоста

Вы можете просто запустить этот скрипт с вашего базового хоста, выполнив:

root@kitploit:~
git clone https://github.com/docker/docker-bench-security.git
cd docker-bench-security
sudo sh docker-bench-security.sh

Примечание: jq — необязательная, но рекомендуемая зависимость.

Запуск с Docker

Сборка Docker-образа

У вас есть два варианта, если вы хотите собрать и запустить этот контейнер самостоятельно:

  1. Используйте Docker Build:
root@kitploit:~
git clone https://github.com/docker/docker-bench-security.git
cd docker-bench-security
docker build --no-cache -t docker-bench-security .

Затем выполните соответствующую команду docker run, как указано ниже.

  1. Используйте Docker Compose:
root@kitploit:~
git clone https://github.com/docker/docker-bench-security.git
cd docker-bench-security
docker-compose run --rm docker-bench-security

Обратите внимание, что образ docker/docker-bench-security устарел и требуется ручная сборка. Смотрите #405 для получения дополнительной информации.

Обратите внимание, что этот контейнер запускается с большим количеством привилегий — разделяет файловую систему хоста, пространства идентификаторов процессов и сети, так как части бенчмарка применяются к работающему хосту.

Использование контейнера

root@kitploit:~
docker run --rm --net host --pid host --userns host --cap-add audit_control \
    -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \
    -v /etc:/etc:ro \
    -v /usr/bin/containerd:/usr/bin/containerd:ro \
    -v /usr/bin/runc:/usr/bin/runc:ro \
    -v /usr/lib/systemd:/usr/lib/systemd:ro \
    -v /var/lib:/var/lib:ro \
    -v /var/run/docker.sock:/var/run/docker.sock:ro \
    --label docker_bench_security \
    docker-bench-security

Не забудьте настроить общие тома в соответствии с вашей операционной системой. Вот несколько примеров:

  1. В Ubuntu файлы docker.service и docker.secret по умолчанию находятся в папке /lib/systemd/system.
root@kitploit:~
docker run --rm --net host --pid host --userns host --cap-add audit_control \
    -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \
    -v /etc:/etc:ro \
    -v /lib/systemd/system:/lib/systemd/system:ro \
    -v /usr/bin/containerd:/usr/bin/containerd:ro \
    -v /usr/bin/runc:/usr/bin/runc:ro \
    -v /usr/lib/systemd:/usr/lib/systemd:ro \
    -v /var/lib:/var/lib:ro \
    -v /var/run/docker.sock:/var/run/docker.sock:ro \
    --label docker_bench_security \
    docker-bench-security
  1. Файл /etc/hostname отсутствует в macOS, поэтому его необходимо предварительно создать. Кроме того, Docker Desktop на macOS не содержит /usr/lib/systemd или указанных выше бинарных файлов Docker.
root@kitploit:~
sudo touch /etc/hostname

docker run --rm --net host --pid host --userns host --cap-add audit_control \
    -e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \
    -v /etc:/etc \
    -v /var/lib:/var/lib:ro \
    -v /var/run/docker.sock:/var/run/docker.sock:ro \
    --label docker_bench_security \
    docker-bench-security

Примечание

Docker bench требует Docker версии 1.13.0 или новее для работы.

Обратите внимание, что если в дистрибутивах отсутствует auditctl, тесты аудита вместо этого будут проверять /etc/audit/audit.rules на наличие правила.

Параметры Docker Bench для безопасности

root@kitploit:~
  -b           optional  Не выводить цвета
  -h           optional  Вывести это справочное сообщение
  -l FILE      optional  Записывать вывод в FILE, внутри контейнера при запуске через docker
  -u USERS     optional  Разделенный запятыми список доверенных пользователей docker
  -c CHECK     optional  Разделенный запятыми список идентификаторов конкретных проверок
  -e CHECK     optional  Разделенный запятыми список идентификаторов проверок для исключения
  -i INCLUDE   optional  Разделенный запятыми список шаблонов в имени контейнера или образа для проверки
  -x EXCLUDE   optional  Разделенный запятыми список шаблонов в имени контейнера или образа для исключения из проверки
  -t LABEL     optional  Разделенный запятыми список меток в контейнере или образе для проверки
  -n LIMIT     optional  В JSON-выводе при отчете по спискам элементов (контейнеры, образы и т.д.) ограничить количество отображаемых элементов до LIMIT. По умолчанию 0 (без ограничений).
  -p PRINT     optional  Отключить вывод мер по исправлению. По умолчанию: выводить меры по исправлению.

По умолчанию скрипт Docker Bench для безопасности выполняет все доступные тесты CIS и создает журналы в папке log из текущего каталога, с именами docker-bench-security.log.json и docker-bench-security.log.

Если используется Docker-контейнер, файлы журналов будут созданы внутри контейнера в расположении /usr/local/bin/log/. Если вы хотите получить к ним доступ с хоста после запуска контейнера, вам потребуется смонтировать том для их хранения.

Проверки на основе CIS называются check_<section>_<number>, например, check_2_6, а проверки, предоставленные сообществом, называются check_c_<number>.

sh docker-bench-security.sh -c check_2_2 выполнит только проверку 2.2 Убедитесь, что уровень журналирования установлен на 'info'.

sh docker-bench-security.sh -e check_2_2 выполнит все доступные проверки, кроме 2.2 Убедитесь, что уровень журналирования установлен на 'info'.

sh docker-bench-security.sh -e docker_enterprise_configuration выполнит все доступные проверки, кроме группы docker_enterprise_configuration.

sh docker-bench-security.sh -e docker_enterprise_configuration,check_2_2 выполнит все доступные проверки, кроме группы docker_enterprise_configuration и 2.2 Убедитесь, что уровень журналирования установлен на 'info'.

sh docker-bench-security.sh -c container_images,container_runtime выполнит только проверки container_images и container_runtime.

sh docker-bench-security.sh -c container_images -e check_4_5 выполнит только проверки container_images, кроме 4.5 Убедитесь, что доверие к содержимому Docker включено.

Обратите внимание: при отправке проверок предоставьте информацию о том, почему это разумный тест для добавления, и, пожалуйста, включите какую-либо официальную документацию, подтверждающую эту информацию.

Скачать инструмент