Skip to content
Back to skills

Cis Docker V170 5.21

ASecurity

Ensure that the host's UTS namespace is not shared

  • 2,182 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 3, 2026
securitygobashdockersecurity

Security analysis

A100/100

Scanned September 3, 2026

npx -y skills add CyberStrikeus/CyberStrike --skill cis-docker-v170-5.21 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cis Docker V170 5.21?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cis Docker V170 5.21
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cyberstrikeus-cis-docker-v170-5-21/badge)](https://www.skillsdirectory.com/skills/cyberstrikeus-cis-docker-v170-5-21)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: cis-docker-v170-5.21
description: "Ensure that the host's UTS namespace is not shared"
category: cis-docker
version: "1.7.0"
author: cyberstrike-official
tags: [cis, docker, runtime, namespace, uts]
cis_id: "5.21"
cis_benchmark: "CIS Docker Benchmark v1.7.0"
tech_stack: [docker]
cwe_ids: []
chains_with: []
prerequisites: []
severity_boost: {}
---

# CIS Docker Benchmark v1.7.0 - Control 5.21

## Profile Applicability

- **Level:** 1
- **Type:** Manual
- **Platform:** Docker - Linux

## Description

UTS namespaces provide isolation between two system identifiers: the hostname and the NIS domain name. It is used to set the hostname and the domain which are visible to running processes in that namespace. Processes running within containers do not typically require to know either the hostname or the domain name. The UTS namespace should therefore not be shared with the host.

## Rationale

Sharing the UTS namespace with the host provides full permission for each container to change the hostname of the host. This is not in line with good security practice and should not be permitted.

## Impact

None.

## Audit Procedure

You should run the following command:

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

If the above command returns `host`, it means that the host UTS namespace is shared with the container and this recommendation is non-compliant. If the above command returns nothing, then the host's UTS namespace is not shared. This recommendation is then compliant.

## Remediation

You should not start a container with the `--uts=host` argument.

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

```bash
docker run --rm --interactive --tty --uts=host rhel7.2
```

## Default Value

By default, all containers have the UTS namespace enabled and the host UTS namespace is not shared with any containers.

## References

1. https://docs.docker.com/engine/reference/run/#uts-settings---uts
2. https://www.man7.org/linux/man-pages/man7/uts_namespaces.7.html

## CIS Controls

**v8:**

- **13.4 Perform Traffic Filtering Between Network Segments**
  - Perform traffic filtering between network segments, where appropriate.

**v7:**

- **14.1 Segment the Network Based on Sensitivity**
  - Segment the network based on the label or classification level of the information stored on the servers, locate all sensitive information on separated Virtual Local Area Networks (VLANs).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…