OpenParable
Skip to content
← Back to skills

Cis Docker 5.5

DevOps & Security
cis-docker-5.5

Cis Docker 5.5 is an Agent Skill for devops & security published in the CyberStrikeus/CyberStrike repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Ensure that privileged containers are not used

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/CyberStrikeus/CyberStrike/blob/HEAD/.cyberstrike/skill/CIS_benchmarks/Server_Software/Docker/CIS_Docker_Benchmark_v1.8.0/cis-docker-5.5/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/cis-docker-5-5, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

5.5 Ensure that privileged containers are not used (Manual)

Profile Applicability

  • Level 1 - Docker - Linux

Description

Using the --privileged flag provides all Linux kernel capabilities to the container to which it is applied and therefore overwrites the --cap-add and --cap-drop flags. For this reason you should ensure that it is not used.

Rationale

The --privileged flag provides all capabilities to the container to which it is applied, and also lifts all the limitations enforced by the device cgroup controller. As a consequence this the container has most of the rights of the underlying host. This flag only exists to allow for specific use cases (for example running Docker within Docker) and should not generally be used.

Impact

If you start a container without the --privileged flag, it will not have excessive default capabilities.

Audit Procedure

You should run the command below:

docker ps --quiet --all | xargs docker inspect --format='{{ .Id }}: Privileged={{ .HostConfig.Privileged }}'

The above command should return Privileged=false for each container instance.

Remediation

You should not run containers with the --privileged flag.

For example, do not start a container using the command below:

docker run --interactive --tty --privileged centos /bin/bash

Default Value

False.

References

  1. https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities

CIS Controls

v8

5.4 Restrict Administrator Privileges to Dedicated Administrator Accounts

Restrict administrator privileges to dedicated administrator accounts on enterprise assets. Conduct general computing activities, such as internet browsing, email, and productivity suite use, from the user's primary, non-privileged account.

v7

4 Controlled Use of Administrative Privileges

Controlled Use of Administrative Privileges