Docker
TMA-DOCKER-5.26
Ensure that the container is restricted from acquiring additional privileges
HochStufe 1Automatisiertdocker
Beschreibung
no-new-privileges stops processes in the container gaining privileges through setuid/setgid binaries. Compliant when it is set daemon-wide in daemon.json (container SecurityOpt then stays empty) or every running container has it in SecurityOpt. The audit inspects every running container (docker ps -q) and prints the offending names; a host with no running containers is compliant.
So wird geprüft
Prüfmethode: Shell-Befehl
shell
grep -Eq '"no-new-privileges"[[:space:]]*:[[:space:]]*true' /etc/docker/daemon.json 2>/dev/null && { echo compliant; exit 0; }; ids=$(docker ps -q) || exit 1; [ -z "$ids" ] && { echo compliant; exit 0; }; out=$(docker inspect --format '{{.Name}}{{range .HostConfig.SecurityOpt}} {{.}}{{end}}' $ids) || exit 1; bad=$(printf '%s\n' "$out" | awk '!/no-new-privileges(:true|=true)?( |$)/{print $1}'); [ -z "$bad" ] && echo compliant || printf '%s\n' "$bad"- Erwartete Ausgabe
compliant
So wird behoben
Behebungsmethode: Anleitung oder Infrastruktur-Patch
Run containers with --security-opt=no-new-privileges (compose: security_opt: ["no-new-privileges:true"]) or set "no-new-privileges": true in /etc/docker/daemon.json.
Eigenschaften
- Betriebssysteme
- Beliebig
- Tags
- dockerruntime
- Referenz
- CIS Docker Benchmark v1.9.0 - 5.26 Ensure that the container is restricted from acquiring additional privileges
Diesen Host prüfen
Führen Sie dies auf einem Rechner aus, den Sie prüfen dürfen. Der Scan ist schreibgeschützt.
shell
tmaegis scan --target docker