Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitHubGitHub/docker/docker-bench-security
Scanner di VulnerabilitàSicurezza dei ContenitoriAudit di ConfigurazioneDevSecOps
GitHubdocker/docker-bench-security

docker-bench-security

Docker Bench for Security è uno script che verifica decine di buone pratiche comuni relative alla distribuzione di container Docker in produzione.

Vedi Repository
9.7k1.0k2 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Docker Bench per la Sicurezza

Docker Bench per la Sicurezza in esecuzione

Docker Bench per la Sicurezza è uno script che controlla decine di buone pratiche comuni relative al deployment di container Docker in produzione. I test sono tutti automatizzati e si basano sul CIS Docker Benchmark v1.6.0.

Lo rendiamo disponibile come utilità open-source in modo che la community Docker possa avere un modo semplice per autovalutare i propri host e container Docker rispetto a questo benchmark.

VersioneCIS
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

Esecuzione di Docker Bench per la Sicurezza

Esecuzione dall'host di base

Puoi semplicemente eseguire questo script dal tuo host di 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 è una dipendenza opzionale ma raccomandata.

Esecuzione con Docker

Creazione dell'immagine Docker

Hai due opzioni se desideri creare ed eseguire questo container da solo:

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

Seguito da un appropriato comando docker run come indicato di seguito.

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

Nota bene: l'immagine docker/docker-bench-security è obsoleta ed è necessaria una build manuale. Vedi #405 per maggiori informazioni.

Nota che questo container viene eseguito con molti privilegi -- condividendo il filesystem dell'host, i namespace dei pid e di rete, poiché parti del benchmark si applicano all'host in esecuzione.

Utilizzo del container

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

Non dimenticare di regolare i volumi condivisi in base al tuo sistema operativo. Alcuni esempi sono:

  1. Su Ubuntu i file docker.service e docker.secret si trovano nella cartella /lib/systemd/system di default.
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. Il file /etc/hostname è assente su macOS, quindi dovrà essere creato prima. Inoltre, Docker Desktop su macOS non ha /usr/lib/systemd né i binari Docker sopra menzionati.
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 richiede Docker 1.13.0 o successivo per essere eseguito.

Nota che quando le distribuzioni non contengono auditctl, i test di audit controlleranno /etc/audit/audit.rules per vedere se è presente una regola al suo posto.

Opzioni di Docker Bench per la Sicurezza

root@kitploit:~
  -b           optional  Do not print colors
  -h           optional  Print this help message
  -l FILE      optional  Log output in FILE, inside container if run using docker
  -u USERS     optional  Comma delimited list of trusted docker user(s)
  -c CHECK     optional  Comma delimited list of specific check(s) id
  -e CHECK     optional  Comma delimited list of specific check(s) id to exclude
  -i INCLUDE   optional  Comma delimited list of patterns within a container or image name to check
  -x EXCLUDE   optional  Comma delimited list of patterns within a container or image name to exclude from check
  -t LABEL     optional  Comma delimited list of labels within a container or image to check
  -n LIMIT     optional  In JSON output, when reporting lists of items (containers, images, etc.), limit the number of reported items to LIMIT. Default 0 (no limit).
  -p PRINT     optional  Disable the printing of remediation measures. Default: print remediation measures.

Di default lo script Docker Bench per la Sicurezza eseguirà tutti i test CIS disponibili e produrrà log nella cartella log dalla directory corrente, denominati docker-bench-security.log.json e docker-bench-security.log.

Se viene utilizzato il container docker, i file di log verranno creati all'interno del container nella posizione /usr/local/bin/log/. Se desideri accedervi dall'host dopo l'esecuzione del container, dovrai montare un volume per conservarli.

I controlli basati su CIS sono denominati check_<section>_<number>, ad es. check_2_6 e i controlli contribuiti dalla community sono denominati check_c_<number>.

sh docker-bench-security.sh -c check_2_2 eseguirà solo il controllo 2.2 Assicurarsi che il livello di logging sia impostato su 'info'.

sh docker-bench-security.sh -e check_2_2 eseguirà tutti i controlli disponibili tranne 2.2 Assicurarsi che il livello di logging sia impostato su 'info'.

sh docker-bench-security.sh -e docker_enterprise_configuration eseguirà tutti i controlli disponibili tranne il gruppo docker_enterprise_configuration

sh docker-bench-security.sh -e docker_enterprise_configuration,check_2_2 eseguirà tutti i controlli disponibili tranne il gruppo docker_enterprise_configuration e 2.2 Assicurarsi che il livello di logging sia impostato su 'info'

sh docker-bench-security.sh -c container_images,container_runtime eseguirà solo i controlli container_images e container_runtime

sh docker-bench-security.sh -c container_images -e check_4_5 eseguirà solo i controlli container_images tranne 4.5 Assicurarsi che Content trust per Docker sia abilitato

Nota che quando si inviano controlli, fornisci informazioni sul motivo per cui è un test ragionevole da aggiungere e includi una qualche forma di documentazione ufficiale che verifichi tali informazioni.

Scarica lo strumento