Docker Enterprise 2.x Linux/UNIX Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
Docker Enterprise hosts network namespace must not be shared.
The networking mode on a container when set to --net=host, skips placing the container inside separate network stack. In essence, this choice tells Docker to not containerize the container's networ...Rule High Severity -
SRG-APP-000141
Group -
Memory usage for all containers must be limited in Docker Enterprise.
By default, all containers on a Docker host share the resources equally. By using the resource management capabilities of Docker host, such as memory limit, the amount of memory that a container ma...Rule Medium Severity -
SRG-APP-000141
Group -
SRG-APP-000516
Group -
SRG-APP-000141
Group -
All Docker Enterprise containers root filesystem must be mounted as read only.
The container's root filesystem should be treated as a 'golden image' by using Docker run's --read-only option. This prevents any writes to the container's root filesystem at container runtime and ...Rule High Severity -
SRG-APP-000141
Group -
Docker Enterprise host devices must not be directly exposed to containers.
Host devices can be directly exposed to containers at runtime. Do not directly expose host devices to containers especially for containers that are not trusted. The --device option exposes the hos...Rule High Severity -
SRG-APP-000141
Group -
Mount propagation mode must not set to shared in Docker Enterprise.
Mount propagation mode allows mounting volumes in shared, slave or private mode on a container. Do not use shared mount propagation mode until needed. A shared mount is replicated at all mounts an...Rule Medium Severity -
SRG-APP-000141
Group -
SRG-APP-000141
Group -
The Docker Enterprise default seccomp profile must not be disabled.
Seccomp filtering provides a means for a process to specify a filter for incoming system calls. The default Docker seccomp profile works on whitelist basis and allows 311 system calls blocking all ...Rule High Severity -
SRG-APP-000141
Group -
Docker Enterprise exec commands must not be used with privileged option.
Do not use docker exec with --privileged option. Using --privileged option in docker exec gives extended Linux capabilities to the command. Do not run docker exec with the --privileged option, esp...Rule High Severity -
SRG-APP-000141
Group -
Docker Enterprise exec commands must not be used with the user option.
Do not docker exec with --user option. Using --user option in docker exec executes the command within the container as that user. Do not run docker exec with the --user option , especially when ru...Rule Medium Severity -
SRG-APP-000141
Group -
cgroup usage must be confirmed in Docker Enterprise.
It is possible to attach to a particular cgroup on container run. Confirming cgroup usage would ensure that containers are running under defined cgroups. System administrators typically define cgr...Rule Medium Severity -
SRG-APP-000141
Group -
SRG-APP-000141
Group -
The Docker Enterprise hosts user namespace must not be shared.
Do not share the host's user namespaces with the containers. User namespaces ensure that a root process inside the container will be mapped to a non-root process outside the container. Sharing the...Rule High Severity -
SRG-APP-000141
Group -
The Docker Enterprise socket must not be mounted inside any containers.
The docker socket docker.sock (Linux) and \\.\pipe\docker_engine (Windows) should not be mounted inside a container, with the exception case being during the installation of Universal Control Plane...Rule High Severity -
SRG-APP-000142
Group -
Docker Enterprise privileged ports must not be mapped within containers.
The TCP/IP port numbers below 1024 are considered privileged ports. Normal users and processes are not allowed to use them for various security reasons. Docker allows a container port to be mapped ...Rule High Severity -
SRG-APP-000142
Group -
SRG-APP-000149
Group -
SRG-APP-000175
Group -
The certificate chain used by Universal Control Plane (UCP) client bundles must match what is defined in the System Security Plan (SSP) in Docker Enterprise.
Both the UCP and Docker Trusted Registry (DTR) components of Docker Enterprise leverage the same authentication and authorization backplane known as eNZi. UCP has the ability to use external certif...Rule Medium Severity -
SRG-APP-000176
Group -
Docker Enterprise Swarm manager must be run in auto-lock mode.
Run Docker swarm manager in auto-lock mode. When Docker restarts, both the TLS key used to encrypt communication among swarm nodes, and the key used to encrypt and decrypt Raft logs on disk, are l...Rule Medium Severity -
SRG-APP-000176
Group -
Docker Enterprise secret management commands must be used for managing secrets in a Swarm cluster.
Use Docker's in-built secret management commands for managing sensitive data that which can be stored in key/value pairs. Examples include API tokens, database connection strings and credentials, S...Rule Medium Severity -
SRG-APP-000190
Group -
The Lifetime Minutes and Renewal Threshold Minutes Login Session Controls must be set to 10 and 0 respectively in Docker Enterprise.
The Universal Control Plane (UCP) component of Docker Enterprise includes a built-in access authorization mechanism called eNZi which can be integrated with an LDAP server and subsequently terminat...Rule Medium Severity -
SRG-APP-000231
Group -
Docker Secrets must be used to store configuration files and small amounts of user-generated data (up to 500 kb in size) in Docker Enterprise.
By leveraging Docker Secrets or Kubernetes secrets to store configuration files and small amounts of user-generated data (up to 500 kb in size), the data is encrypted at rest by the Engine's FIPS-v...Rule Medium Severity -
SRG-APP-000247
Group -
SRG-APP-000247
Group -
PIDs cgroup limits must be used in Docker Enterprise.
Use --pids-limit flag at container runtime. Attackers could launch a fork bomb with a single command inside the container. This fork bomb can crash the entire system and requires a restart of the ...Rule Medium Severity -
SRG-APP-000295
Group -
The Docker Enterprise per user limit login session control must be set per the requirements in the System Security Plan (SSP).
The Universal Control Plane (UCP) component of Docker Enterprise includes a built-in access authorization mechanism called eNZi which can be integrated with an LDAP server and allows for automatic ...Rule Low Severity -
SRG-APP-000342
Group -
Docker Enterprise images must be built with the USER instruction to prevent containers from running as root.
Both the Universal Control Plane (UCP) and Docker Trusted Registry (DTR) components of Docker Enterprise leverage the same authentication and authorization backplane known as eNZi. The eNZi backpla...Rule Medium Severity -
SRG-APP-000343
Group -
An appropriate Docker Engine - Enterprise log driver plugin must be configured to collect audit events from Universal Control Plane (UCP) and Docker Trusted Registry (DTR).
The UCP and DTR components of Docker Enterprise provide audit record generation capabilities. Audit logs capture all HTTP actions for the following endpoints: Kubernetes API, Swarm API and UCP API....Rule Medium Severity -
SRG-APP-000357
Group -
SRG-APP-000358
Group
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.