Docker
TMA-DOCKER-5.8
Ensure privileged ports are not mapped within containers
СреднийУровень 1Автоматическаяdocker
Описание
Mapping container ports to host ports below 1024 lets containers occupy ports normally reserved for privileged host services. The audit inspects every running container (docker ps -q) and prints the offending names; a host with no running containers is compliant.
Как проверяется
Метод проверки: Команда оболочки
shell
ids=$(docker ps -q) || exit 1; [ -z "$ids" ] && { echo compliant; exit 0; }; out=$(docker inspect --format '{{.Name}}{{range $p, $c := .NetworkSettings.Ports}}{{range $c}} {{.HostPort}}{{end}}{{end}}' $ids) || exit 1; bad=$(printf '%s\n' "$out" | awk '{for(i=2;i<=NF;i++) if($i+0>0 && $i+0<1024) print $1" "$i}'); [ -z "$bad" ] && echo compliant || printf '%s\n' "$bad"- Ожидаемый вывод
compliant
Как исправляется
Метод исправления: Рекомендация или патч инфраструктуры
Republish the container on a host port >= 1024 (docker run -p 8080:80 ...) and remove privileged port mappings from compose files.
Свойства
- Операционные системы
- Любая
- Теги
- dockerruntimenetwork
- Источник
- CIS Docker Benchmark v1.9.0 - 5.8 Ensure privileged ports are not mapped within containers
Проверить этот хост
Выполните команду на компьютере, аудит которого вам разрешён. Сканирование работает только на чтение.
shell
tmaegis scan --target docker