Rancher Government Solutions RKE2 Security Technical Implementation Guide
Description
This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DOD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via email to the following address: [email protected].
Details
Version / Release: V1R2
Published: 2023-02-27
Updated At: 2023-05-04 00:37:19
Compare/View Releases
Select any two versions of this STIG to compare the individual requirements
Select any old version/release of this STIG to view the previous requirements
Actions
Download
Filter
Severity | Open | Not Reviewed | Not Applicable | Not a Finding |
---|---|---|---|---|
Overall | 0 | 0 | 0 | 0 |
Low | 0 | 0 | 0 | 0 |
Medium | 0 | 0 | 0 | 0 |
High | 0 | 0 | 0 | 0 |
Vuln | Rule | Version | CCI | Severity | Title | Description | Status | Finding Details | Comments |
---|---|---|---|---|---|---|---|---|---|
SV-254553r894451_rule | CNTR-R2-000010 | CCI-000068 | HIGH | Rancher RKE2 must protect authenticity of communications sessions with the use of FIPS-validated 140-2 or 140-3 security requirements for cryptographic modules. | Use strong TLS settings. RKE2 uses FIPS validated BoringCrypto modules. RKE2 Server can prohibit the use of SSL and unauthorized versions of TLS protocols to properly secure communication. There is a lot of traffic between RKE2 nodes to deploy, update, a | ||||
SV-254554r879522_rule | CNTR-R2-000030 | CCI-000015 | MEDIUM | RKE2 must use a centralized user management solution to support account management functions. | The Kubernetes Controller Manager is a background process that embeds core control loops regulating cluster system state through the API Server. Every process executed in a pod has an associated service account. By default, service accounts use the same c | ||||
SV-254555r894454_rule | CNTR-R2-000060 | CCI-000018 | MEDIUM | Rancher RKE2 components must be configured in accordance with the security configuration settings based on DoD security configuration or implementation guidance, including SRGs, STIGs, NSA configuration guides, CTOs, and DTMs. | Once an attacker establishes access to a system, the attacker often attempts to create a persistent method of re-establishing access. One way to accomplish this is for the attacker to modify an existing account. Auditing of account creation is one method | ||||
SV-254556r879530_rule | CNTR-R2-000100 | CCI-000213 | MEDIUM | The Kubernetes Controller Manager must have secure binding. | Limiting the number of attack vectors and implementing authentication and encryption on the endpoints available to external sources is paramount when securing the overall Kubernetes cluster. The Controller Manager API service exposes port 10252/TCP by def | ||||
SV-254557r879530_rule | CNTR-R2-000110 | CCI-000213 | MEDIUM | The Kubernetes Kubelet must have anonymous authentication disabled. | RKE2 registry is used to store images and is the keeper of truth for trusted images within the platform. To guarantee the images integrity, access to the registry must be limited to those individuals who need to perform tasks to the images such as the upd | ||||
SV-254558r894457_rule | CNTR-R2-000120 | CCI-000213 | HIGH | The Kubernetes API server must have the insecure port flag disabled. | 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 | ||||
SV-254559r879530_rule | CNTR-R2-000130 | CCI-000213 | HIGH | The Kubernetes Kubelet must have the read-only port flag disabled. | Kubelet serves a small REST API with read access to port 10255. The read-only port for Kubernetes provides no authentication or authorization security control. Providing unrestricted access on port 10255 exposes Kubernetes pods and containers to malicious | ||||
SV-254560r879530_rule | CNTR-R2-000140 | CCI-000213 | HIGH | The Kubernetes API server must have the insecure bind address not set. | By default, the API server will listen on two ports and addresses. One address is the secure address and the other address is called the "insecure bind" address and is set by default to localhost. Any requests to this address bypass authentication and aut | ||||
SV-254561r879530_rule | CNTR-R2-000150 | CCI-000213 | HIGH | The Kubernetes kubelet must enable explicit authorization. | Kubelet is the primary agent on each node. The API server communicates with each kubelet to perform tasks such as starting/stopping pods. By default, kubelets allow all authenticated requests, even anonymous ones, without requiring any authorization check | ||||
SV-254562r879530_rule | CNTR-R2-000160 | CCI-000213 | HIGH | The Kubernetes API server must have anonymous authentication disabled. | The Kubernetes API Server controls Kubernetes via an API interface. A user who has access to the API essentially has root access to the entire Kubernetes cluster. To control access, users must be authenticated and authorized. By allowing anonymous connect | ||||
SV-254563r879568_rule | CNTR-R2-000320 | CCI-001487 | MEDIUM | All audit records must identify any containers associated with the event within Rancher RKE2. | Ensure that the --audit-log-maxage argument is set to 30 or as appropriate. Retaining logs for at least 30 days ensures that you can go back in time and investigate or correlate any events. Set your audit log retention period to 30 days or as per your bu | ||||
SV-254564r879586_rule | CNTR-R2-000520 | CCI-001499 | MEDIUM | Configuration and authentication files for Rancher RKE2 must be protected. | There are various configuration files, logs, access credentials, and other files stored on the host filesystem that contain sensitive information. These files could potentially put at risk, along with other specific workloads and components: - API serve | ||||
SV-254565r879587_rule | CNTR-R2-000550 | CCI-000381 | MEDIUM | Rancher RKE2 must be configured with only essential configurations. | It is important to disable any unnecessary components to reduce any potential attack surfaces. RKE2 allows disabling the following components: - rke2-canal - rke2-coredns - rke2-ingress-nginx - rke2-kube-proxy - rke2-metrics-server If utilizing any of | ||||
SV-254566r894459_rule | CNTR-R2-000580 | CCI-000382 | MEDIUM | Rancher RKE2 runtime must enforce ports, protocols, and services that adhere to the PPSM CAL. | Ports, protocols, and services within the RKE2 runtime must be controlled and conform to the PPSM CAL. Those ports, protocols, and services that fall outside the PPSM CAL must be blocked by the runtime. Instructions on the PPSM can be found in DoD Instruc | ||||
SV-254567r894461_rule | CNTR-R2-000800 | CCI-000196 | MEDIUM | Rancher RKE2 must store only cryptographic representations of passwords. | Secrets, such as passwords, keys, tokens, and certificates should not be stored as environment variables. These environment variables are accessible inside RKE2 by the "Get Pod" API call, and by any system, such as CI/CD pipeline, which has access to the | ||||
SV-254568r894464_rule | CNTR-R2-000890 | CCI-001133 | MEDIUM | Rancher RKE2 must terminate all network connections associated with a communications session at the end of the session, or as follows: for in-band management sessions (privileged sessions), the session must be terminated after five minutes of inactivity. | Terminating an idle session within a short time period reduces the window of opportunity for unauthorized personnel to take control of a management session enabled on the console or console port that has been left unattended. In addition, quickly terminat | ||||
SV-254569r879643_rule | CNTR-R2-000940 | CCI-001084 | MEDIUM | Rancher RKE2 runtime must isolate security functions from nonsecurity functions. | RKE2 runs as isolated as possible. RKE2 is a container-based Kubernetes distribution. A container image is essentially a complete and executable version of an application, which relies only on the host's OS kernel. Running containers use resource isolati | ||||
SV-254570r879649_rule | CNTR-R2-000970 | CCI-001082 | MEDIUM | Rancher RKE2 runtime must maintain separate execution domains for each container by assigning each container a separate address space to prevent unauthorized and unintended information transfer via shared system resources. | Separating user functionality from management functionality is a requirement for all the components within the Kubernetes Control Plane. Without the separation, users may have access to management functions that can degrade the Kubernetes architecture and | ||||
SV-254571r894467_rule | CNTR-R2-001130 | CCI-002233 | MEDIUM | Rancher RKE2 must prevent nonprivileged users from executing privileged functions to include disabling, circumventing, or altering implemented security safeguards/countermeasures. | Admission controllers intercept requests to the Kubernetes API before an object is instantiated. Enabling the admissions webhook allows for Kubernetes to apply policies against objects that are to be created, read, updated or deleted. Admissions controll | ||||
SV-254572r879751_rule | CNTR-R2-001270 | CCI-001812 | MEDIUM | Rancher RKE2 must prohibit the installation of patches, updates, and instantiation of container images without explicit privileged status. | Controlling access to those users and roles responsible for patching and updating RKE2 reduces the risk of untested or potentially malicious software from being installed within the platform. This access may be separate from the access required to install | ||||
SV-254573r879800_rule | CNTR-R2-001500 | CCI-002476 | MEDIUM | Rancher RKE2 keystore must implement encryption to prevent unauthorized disclosure of information at rest within Rancher RKE2. | Encrypting secrets at rest in etcd. By default, RKE2 will create an encryption key and configuration file and pass these to the Kubernetes API server. The result is that RKE2 automatically encrypts Kubernetes Secret objects when writing them to etcd. | ||||
SV-254574r879825_rule | CNTR-R2-001580 | CCI-002617 | MEDIUM | Rancher RKE2 must remove old components after updated versions have been installed. | Previous versions of Rancher RKE2 components that are not removed after updates have been installed may be exploited by adversaries by causing older components to execute which contain vulnerabilities. When these components are deleted, the likelihood of | ||||
SV-254575r879827_rule | CNTR-R2-001620 | CCI-002605 | MEDIUM | Rancher RKE2 registry must contain the latest images with most recent updates and execute within Rancher RKE2 runtime as authorized by IAVM, CTOs, DTMs, and STIGs. | Software supporting RKE2, images in the registry must stay up to date with the latest patches, service packs, and hot fixes. Not updating RKE2 and container images will expose the organization to vulnerabilities. Flaws discovered during security assessme | ||||