Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/docker/docker-bench-security
Escáneres de VulnerabilidadesSeguridad de ContenedoresAuditoría de ConfiguraciónDevSecOps
GitHubdocker/docker-bench-security

docker-bench-security

Docker Bench for Security es un script que verifica docenas de mejores prácticas comunes en torno al despliegue de contenedores Docker en producción.

Ver Repositorio
9.7k1.0k6hace 3 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Docker Bench for Security

Docker Bench for Security running

Docker Bench for Security es un script que verifica docenas de buenas prácticas comunes en torno al despliegue de contenedores Docker en producción. Todas las pruebas están automatizadas y se basan en el CIS Docker Benchmark v1.6.0.

Lo ponemos a disposición como una utilidad de código abierto para que la comunidad Docker pueda tener una forma sencilla de autoevaluar sus hosts y contenedores Docker según este benchmark.

VersiónCIS
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

Ejecutar Docker Bench for Security

Ejecutar desde el host base

Puedes ejecutar este script simplemente desde tu host base con:

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

Nota: jq es una dependencia opcional pero recomendada.

Ejecutar con Docker

Construir la imagen Docker

Tienes dos opciones si deseas construir y ejecutar este contenedor tú mismo:

  1. Usar 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 .

Seguido de un comando docker run adecuado como se indica a continuación.

  1. Usar 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

Ten en cuenta que la imagen docker/docker-bench-security está desactualizada y se requiere una compilación manual. Consulta #405 para más información.

Ten en cuenta que este contenedor se ejecuta con muchos privilegios: comparte el sistema de archivos, los espacios de nombres de PID y red del host, debido a que partes del benchmark se aplican al host en ejecución.

Usar el contenedor

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

No olvides ajustar los volúmenes compartidos según tu sistema operativo. Algunos ejemplos son:

  1. En Ubuntu, los archivos docker.service y docker.secret se encuentran en la carpeta /lib/systemd/system por defecto.
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. El archivo /etc/hostname falta en macOS, por lo que deberá crearse primero. Además, Docker Desktop en macOS no tiene /usr/lib/systemd ni los binarios de Docker mencionados anteriormente.
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

Nota

Docker bench requiere Docker 1.13.0 o posterior para ejecutarse.

Ten en cuenta que cuando las distribuciones no contienen auditctl, las pruebas de auditoría verificarán /etc/audit/audit.rules para comprobar si hay una regla presente en su lugar.

Opciones de Docker Bench for Security

-b optional No imprimir colores -h optional Mostrar este mensaje de ayuda -l FILE optional Registrar salida en FILE, dentro del contenedor si se ejecuta con docker -u USERS optional Lista separada por comas de usuarios docker de confianza -c CHECK optional Lista separada por comas de ID(s) de verificación específica(s) -e CHECK optional Lista separada por comas de ID(s) de verificación específica(s) a excluir -i INCLUDE optional Lista separada por comas de patrones dentro de un contenedor o nombre de imagen a verificar -x EXCLUDE optional Lista separada por comas de patrones dentro de un contenedor o nombre de imagen a excluir de la verificación -t LABEL optional Lista separada por comas de etiquetas dentro de un contenedor o imagen a verificar -n LIMIT optional En salida JSON, al informar listas de elementos (contenedores, imágenes, etc.), limitar el número de elementos informados a LIMIT. Por defecto 0 (sin límite). -p PRINT optional Deshabilitar la impresión de medidas de remediación. Por defecto: imprimir medidas de remediación.

Por defecto, el script Docker Bench for Security ejecutará todas las pruebas CIS disponibles y generará registros en la carpeta de registros del directorio actual, con los nombres docker-bench-security.log.json y docker-bench-security.log.

Si se usa el contenedor Docker, los archivos de registro se crearán dentro del contenedor en la ubicación /usr/local/bin/log/. Si deseas acceder a ellos desde el host después de que el contenedor se haya ejecutado, deberás montar un volumen para almacenarlos.

Las verificaciones basadas en CIS se denominan check_<section>_<number>, p. ej. check_2_6 y las verificaciones aportadas por la comunidad se denominan check_c_<number>.

sh docker-bench-security.sh -c check_2_2 solo ejecutará la verificación 2.2 Asegurar que el nivel de registro esté configurado a 'info'.

sh docker-bench-security.sh -e check_2_2 ejecutará todas las verificaciones disponibles excepto 2.2 Asegurar que el nivel de registro esté configurado a 'info'.

sh docker-bench-security.sh -e docker_enterprise_configuration ejecutará todas las verificaciones disponibles excepto el grupo docker_enterprise_configuration.

sh docker-bench-security.sh -e docker_enterprise_configuration,check_2_2 ejecutará todas las verificaciones disponibles excepto el grupo docker_enterprise_configuration y 2.2 Asegurar que el nivel de registro esté configurado a 'info'.

sh docker-bench-security.sh -c container_images,container_runtime ejecutará solo las verificaciones container_images y container_runtime.

sh docker-bench-security.sh -c container_images -e check_4_5 ejecutará solo las verificaciones container_images excepto 4.5 Asegurar que Content trust para Docker esté habilitado.

Ten en cuenta que al enviar verificaciones, proporciona información de por qué es una prueba razonable de agregar e incluye algún tipo de documentación oficial que verifique esa información.

Descargar herramienta