Skip to content

Kubernetes Security Technical Implementation Guide

Rules, Groups, and Values defined within the XCCDF Benchmark

  • The Kubernetes API server must have anonymous authentication disabled.

    <VulnDiscussion>The Kubernetes API Server controls Kubernetes via an API interface. A user who has access to the API essentially has root acc...
    Rule High Severity
  • SRG-APP-000033-CTR-000090

    <GroupDescription></GroupDescription>
    Group
  • The Kubernetes Kubelet must have anonymous authentication disabled.

    &lt;VulnDiscussion&gt;A user who has access to the Kubelet essentially has root access to the nodes contained within the Kubernetes Control Plane. ...
    Rule High Severity
  • SRG-APP-000033-CTR-000095

    <GroupDescription></GroupDescription>
    Group
  • The Kubernetes kubelet must enable explicit authorization.

    &lt;VulnDiscussion&gt;Kubelet is the primary agent on each node. The API server communicates with each kubelet to perform tasks such as starting/st...
    Rule High Severity
  • SRG-APP-000033-CTR-000095

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes Worker Nodes must not have sshd service running.

    &lt;VulnDiscussion&gt;Worker Nodes are maintained and monitored by the Control Plane. Direct access and manipulation of the nodes should not take p...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000095

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes Worker Nodes must not have the sshd service enabled.

    &lt;VulnDiscussion&gt;Worker Nodes are maintained and monitored by the Control Plane. Direct access and manipulation of the nodes must not take pla...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000095

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes dashboard must not be enabled.

    &lt;VulnDiscussion&gt;While the Kubernetes dashboard is not inherently insecure on its own, it is often coupled with a misconfiguration of Role-Bas...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000090

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes Kubectl cp command must give expected access and results.

    &lt;VulnDiscussion&gt;One of the tools heavily used to interact with containers in the Kubernetes cluster is kubectl. The command is the tool Syste...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000090

    <GroupDescription></GroupDescription>
    Group
  • The Kubernetes kubelet staticPodPath must not enable static pods.

    &lt;VulnDiscussion&gt;Allowing kubelet to set a staticPodPath gives containers with root access permissions to traverse the hosting filesystem. The...
    Rule High Severity
  • SRG-APP-000033-CTR-000100

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes DynamicAuditing must not be enabled.

    &lt;VulnDiscussion&gt;Protecting the audit data from change or deletion is important when an attack occurs. One way an attacker can cover their tra...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000095

    <GroupDescription></GroupDescription>
    Group
  • Kubernetes DynamicKubeletConfig must not be enabled.

    &lt;VulnDiscussion&gt;Kubernetes allows a user to configure kubelets with dynamic configurations. When dynamic configuration is used, the kubelet w...
    Rule Medium Severity
  • SRG-APP-000033-CTR-000090

    <GroupDescription></GroupDescription>
    Group

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.

Capacity
Modules