CNTR-K8-000320 - The Kubernetes API server must have the insecure port flag disabled.

Information

By default, the API server will listen on two ports. One port is the secure port and the other port is called the 'localhost port'. This port is also called the 'insecure port', port 8080. Any requests to this port bypass authentication and authorization checks. If this port is left open, anyone who gains access to the host on which the Control Plane is running can bypass all authorization and authentication mechanisms put in place, and have full control over the entire cluster.

Close the insecure port by setting the API server's '--insecure-port' flag to '0', ensuring that the '--insecure-bind-address' is not set.

Solution

Edit the Kubernetes API Server manifest file in the /etc/kubernetes/manifests directory on the Kubernetes Control Plane.

Set the value of '--insecure-port' to '0'.

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_Kubernetes_V1R11_STIG.zip

Item Details

Category: ACCESS CONTROL

References: 800-53|AC-3, CAT|I, CCI|CCI-000213, Rule-ID|SV-242386r927241_rule, STIG-ID|CNTR-K8-000320, Vuln-ID|V-242386

Plugin: Unix

Control ID: 2745861a5c8eacd521734d220b5a94e88b8e02d11f6a86d88b4dea64f8ce85f9