4.22 CIS Kubernetes 벤치마크
인터넷 보안 센터(Center for Internet Security, CIS )는 ‘ CIS ’ Kubernetes 벤치마크를 발표하고 있으며, 이는 Kubernetes 을 보다 안전하게 구성하고 다양한 산업 규제에 부합하는 표준을 준수하기 위한 구체적인 단계의 프레임워크를 제시합니다. 이 문서에는 Red Hat OpenShift on IBM Cloud 버전 4.22 을 실행하는 클러스터에 대한 버전 1.12 CIS Kubernetes 벤치마크 결과가 포함되어 있습니다. 벤치마크에 대한 자세한 정보나 이해에 도움이 필요하면 ‘벤치마크 사용 방법’을 참조하십시오.
1. 제어 평면 보안 구성
1.1 제어 플레인 Node 의 구성 파일
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 1.1.1 | API 서버 포드 사양 파일의 권한이 ‘ 600 ’로 설정되어 있거나, 이보다 더 제한적인지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.2 | API 서버 팟(Pod) 스펙 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.3 | 컨트롤러 매니저 포드 사양 파일의 권한이 ‘ 600 ’ 또는 이보다 더 제한적인 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.4 | 제어기 관리자 팟(Pod) 스펙 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.5 | 스케줄러 포드 사양 파일의 권한이 ‘ 600 ’로 설정되어 있거나, 이보다 더 엄격하게 제한되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.6 | 스케줄러 팟(Pod) 스펙 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.7 | etcd 포드 사양 파일의 권한이 ‘ 600 ’ 또는 이보다 더 제한적인 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.8 | etcd 팟(Pod) 스펙 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.9 | 컨테이너 네트워크 인터페이스 파일의 권한이 600 또는 이보다 더 엄격한 수준으로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 1.1.10 | 컨테이너 네트워크 인터페이스 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 1.1.11 | etcd 데이터 디렉토리 권한이 700 또는 좀 더 제한적인 값으로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.12 | etcd 데이터 디렉토리 소유권이 etcd:etcd로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.13 | 기본 관리자 자격 증명 파일의 권한이 ‘ 600 ’로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.14 | 기본 관리자 자격 증명 파일의 소유자가 root:root 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.15 | scheduler.conf 파일의 권한이 ‘ 600 ’로 설정되어 있는지, 또는 이보다 더 제한적인 권한으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.16 | scheduler.conf 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.17 | controller-manager.conf 파일의 권한이 ‘ 600 ’로 설정되어 있는지, 또는 이보다 더 제한적인 권한으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.18 | controller-manager.conf 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.19 | Kubernetes PKI 디렉토리 및 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.1.20 | Kubernetes PKI 파일 권한이 644 또는 좀 더 제한적인 값으로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 1.1.21 | Kubernetes PKI 키 파일 권한이 600 또는 좀 더 제한적인 값으로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
1.2 API 서버
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 1.2.1 | --anonymous-auth 인수가 false로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 1.2.2 | --token-auth-file 매개변수가 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.3 | DenyServiceExternalIPs 가 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 1.2.4 | --kubelet-client-certificate 및 --kubelet-client-key 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.5 | --kubelet-certificate-authority 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.6 | --authorization-mode 인수가 AlwaysAllow로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.7 | --authorization-mode 인수에 Node 가 포함되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.8 | --authorization-mode 인수에 RBAC가 포함되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.9 | 승인 제어 플러그인 EventRateLimit가 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 1.2.10 | 승인 제어 플러그인 AlwaysAdmit이 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.11 | 승인 제어 플러그인 AlwaysPullImages가 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 1.2.12 | 승인 제어 플러그인 ServiceAccount가 설정되어 있는지 확인하십시오. |
스코어링됨 | 2 | 통과 | IBM |
| 1.2.13 | 승인 제어 플러그인 NamespaceLifecycle가 설정되어 있는지 확인하십시오. |
스코어링됨 | 2 | 통과 | IBM |
| 1.2.14 | 승인 제어 플러그인 NodeRestriction가 설정되어 있는지 확인하십시오. |
스코어링됨 | 2 | 통과 | IBM |
| 1.2.15 | --profiling 인수가 false로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.16 | --audit-log-path 인수가 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | 공유 |
| 1.2.17 | --audit-log-maxage 인수가 30 또는 적절한 값으로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 실패 | 공유 |
| 1.2.18 | --audit-log-maxbackup 인수가 10 또는 적절한 값으로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | 공유 |
| 1.2.19 | --audit-log-maxsize 인수가 100 또는 적절한 값으로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | 공유 |
| 1.2.20 | --request-timeout 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 1.2.21 | --service-account-lookup 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.22 | --service-account-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.23 | --etcd-certfile 및 --etcd-keyfile 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.24 | --tls-cert-file 및 --tls-private-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.25 | --client-ca-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.26 | --etcd-cafile 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.2.27 | --encryption-provider-config 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | 공유 |
| 1.2.28 | 암호화 제공자가 올바르게 구성되었는지 확인하십시오. | 스코어링되지 않음 | 1 | 실패 | 공유 |
| 1.2.29 | API 서버가 강력한 암호화 암호만 활용하는지 확인하십시오. | 스코어링되지 않음 | 1 | 통과 | IBM |
| 1.2.30 | --service-account-extend-token-expiration 매개변수가 false 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 실패 | IBM |
1.3 제어기 관리자
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 1.3.1 | --terminated-pod-gc-threshold 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 1.3.2 | --profiling 인수가 false로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.3.3 | --use-service-account-credentials 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.3.4 | --service-account-private-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.3.5 | --root-ca-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.3.6 | RotateKubeletServerCertificate 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.3.7 | --bind-address 인수가 127.0.0.1로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
1.4 스케줄러
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 1.4.1 | --profiling 인수가 false로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 1.4.2 | --bind-address 인수가 127.0.0.1로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
2 etcd 노드 구성
| 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 | |
|---|---|---|---|---|---|
| 2.1 | --cert-file 및 --key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.2 | --client-cert-auth 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.3 | --auto-tls 인수가 true로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.4 | --peer-cert-file 및 --peer-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.5 | --peer-client-cert-auth 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.6 | --peer-auto-tls 인수가 true로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 2.7 | 고유 인증 기관이 etcd에 사용되는지 확인하십시오. | 스코어링되지 않음 | 2 | 통과 | IBM |
3 제어 플레인 구성
3.2 로깅
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 3.2.1 | 최소 감사 정책이 작성되었는지 확인하십시오. | 스코어링되지 않음 | 1 | 실패 | 공유 |
| 3.2.2 | 감사 정책으로 키 보안 문제가 해결되는지 확인하십시오. | 스코어링되지 않음 | 2 | 실패 | 공유 |
4개의 워커 노드 ( RHEL_9_64 )
4.1 작업자 노드 구성 파일
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.1.1 | kubelet 서비스 파일의 권한이 ‘ 600 ’로 설정되어 있거나, 이보다 더 제한적인지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.2 | kubelet 서비스 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.3 | kubeconfig 프록시 파일이 존재하는 경우, 권한이 ‘ 600 ’로 설정되어 있는지, 또는 이보다 더 제한적인 권한으로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.4 | kubeconfig 프록시 파일이 존재하는 경우, 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.5 | --kubeconfig`` kubelet.conf 파일의 권한이 600 또는 이보다 더 제한적인 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.6 | --kubeconfig`` kubelet.conf 파일의 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.7 | 인증 기관 파일 권한이 644 또는 좀 더 제한적인 값으로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.8 | 클라이언트 인증 기관 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.9 | kubelet config.yaml 구성 파일을 사용하는 경우, 권한이 600 로 설정되어 있는지, 또는 이보다 더 엄격한 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.10 | kubelet config.yaml 구성 파일을 사용하는 경우, 파일 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
4.2 Kubelet
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.2.1 | --anonymous-auth 인수가 false로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.2 | --authorization-mode 인수가 AlwaysAllow로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.3 | --client-ca-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.4 | readOnlyPort 가 정의되어 있다면, 해당 값이 0 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.5 | --streaming-connection-idle-timeout 인수가 0로 설정되지 않았는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.6 | --make-iptables-util-chains 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.7 | --hostname-override 인수가 설정되지 않았는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 4.2.8 | eventRecordQPS 인수가 적절한 이벤트 캡처를 보장할 수 있는 수준으로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 2 | 통과 | IBM |
| 4.2.9 | --tls-cert-file 및 --tls-private-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.10 | --rotate-certificates 인수가 false로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 실패 | IBM |
| 4.2.11 | RotateKubeletServerCertificate 인수가 true 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.12 | Kubelet가 강력한 암호화 암호만 활용하는지 확인하십시오. | 스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.13 | PIDs 에 대한 제한이 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.14 | --seccomp-default 매개변수가 true 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
4.3 Kube-proxy
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.3.1 | kube-proxy 메트릭 서비스가 localhost에 바인딩되어 있는지 확인하십시오. | 스코어링됨 | 1 | 통과 | IBM |
4. 워커 노드 보안 구성 (RHCOS)
4.1 작업자 노드 구성 파일
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.1.1 | kubelet 서비스 파일의 권한이 ‘ 600 ’로 설정되어 있거나, 이보다 더 제한적인지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.2 | kubelet 서비스 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.3 | kubeconfig 프록시 파일이 존재하는 경우, 권한이 ‘ 600 ’로 설정되어 있는지, 또는 이보다 더 제한적인 권한으로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.4 | kubeconfig 프록시 파일이 존재하는 경우, 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.5 | --kubeconfig`` kubelet.conf 파일의 권한이 600 또는 이보다 더 제한적인 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.6 | --kubeconfig`` kubelet.conf 파일의 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.7 | 인증 기관 파일 권한이 644 또는 좀 더 제한적인 값으로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.8 | 클라이언트 인증 기관 파일 소유권이 root:root로 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.1.9 | kubelet config.yaml 구성 파일을 사용하는 경우, 권한이 600 로 설정되어 있는지, 또는 이보다 더 엄격한 수준으로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.1.10 | kubelet config.yaml 구성 파일을 사용하는 경우, 파일 소유권이 root:root 로 설정되어 있는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
4.2 Kubelet
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.2.1 | --anonymous-auth 인수가 false로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.2 | --authorization-mode 인수가 AlwaysAllow로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.3 | --client-ca-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.4 | readOnlyPort 가 정의되어 있다면, 해당 값이 0 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.5 | --streaming-connection-idle-timeout 인수가 0로 설정되지 않았는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.6 | --make-iptables-util-chains 인수가 true로 설정되었는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.7 | --hostname-override 인수가 설정되지 않았는지 확인하십시오. |
스코어링되지 않음 | 1 | 실패 | IBM |
| 4.2.8 | eventRecordQPS 인수가 적절한 이벤트 캡처를 보장할 수 있는 수준으로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 2 | 통과 | IBM |
| 4.2.9 | --tls-cert-file 및 --tls-private-key-file 인수가 올바르게 설정되었는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.10 | --rotate-certificates 인수가 false로 설정되지 않았는지 확인하십시오. |
스코어링됨 | 1 | 통과 | IBM |
| 4.2.11 | RotateKubeletServerCertificate 인수가 true 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.12 | Kubelet가 강력한 암호화 암호만 활용하는지 확인하십시오. | 스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.13 | PIDs 에 대한 제한이 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
| 4.2.14 | --seccomp-default 매개변수가 true 로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 1 | 통과 | IBM |
4.3 Kube-proxy
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 4.3.1 | kube-proxy 메트릭 서비스가 localhost에 바인딩되어 있는지 확인하십시오. | 스코어링됨 | 1 | 통과 | IBM |
5가지 정책
5.1 RBAC 및 서비스 계정
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.1.1 | cluster-admin 역할은 필요한 경우에만 사용되도록 하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.2 | 시크릿에 대한 액세스를 최소화하십시오. | 스코어링되지 않음 | 1 | 실패 | 공유 |
| 5.1.3 | Roles 및ClusterRoles에 와일드카드 사용을 최소화하십시오. |
스코어링되지 않음 | 1 | 실패 | 공유 |
| 5.1.4 | 팟(Pod)을 작성하기 위한 액세스를 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.5 | 기본 서비스 계정이 능동적으로 사용되지 않았는지 확인하십시오. | 스코어링되지 않음 | 1 | 실패 | 공유 |
| 5.1.6 | 서비스 계정 토큰이 필요한 위치로만 마운트되는지 확인하십시오. | 스코어링되지 않음 | 1 | 실패 | 공유 |
| 5.1.7 | system:masters 그룹의 사용을 피하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.8 | Kubernetes 클러스터에서 ‘Bind’, ‘Impersonate’ 및 ‘Escalate’ 권한의 사용을 제한하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.9 | 지속적 볼륨 생성을 위한 접근 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.10 | 노드의 프록시 하위 리소스에 대한 액세스를 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.11 | certificatesigningrequests 객체의 승인 하위 리소스에 대한 접근 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.12 | 웹훅 구성 객체에 대한 접근을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.1.13 | 서비스 계정 토큰 생성에 대한 접근 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
5.2 Pod 보안 표준
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.2.1 | 클러스터에 최소한 하나의 활성 정책 제어 메커니즘이 구현되어 있는지 확인하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.2 | 권한 있는 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.3 | 호스트 프로세스 ID 네임스페이스의 공유를 원하는 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.4 | 호스트 IPC 네임스페이스의 공유를 원하는 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.5 | 호스트 네트워크 네임스페이스의 공유를 원하는 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.6 | allowPrivilegeEscalation으로 컨테이너의 권한을 최소화하십시오. |
스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.7 | 루트 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 2 | 통과 | 공유 |
| 5.2.8 | NET_RAW 기능을 가진 컨테이너의 수용을 최소화하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.9 | 지정된 기능으로 컨테이너의 권한을 최소화하십시오. | 스코어링되지 않음 | 2 | 통과 | 공유 |
| 5.2.10 | Windows HostProcess 컨테이너의 수용을 최소화하십시오. |
스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.11 | HostPath 볼륨의 인수를 최소화하십시오. |
스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.2.12 | HostPorts 를 사용하는 컨테이너의 도입을 최소화하십시오. |
스코어링되지 않음 | 1 | 통과 | 공유 |
5.3 네트워크 정책 및 CNI
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.3.1 | 사용 중인 CNI가 네트워크 정책을 지원하는지 확인하십시오. | 스코어링되지 않음 | 1 | 통과 | IBM |
| 5.3.2 | 모든 네임스페이스에 네트워크 정책이 정의되어 있는지 확인하십시오. | 스코어링되지 않음 | 2 | 통과 | 공유 |
5.4 시크릿 관리
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.4.1 | 환경 변수로서의 시크릿보다 파일로서의 시크릿 사용을 선호하십시오. | 스코어링되지 않음 | 2 | 실패 | 공유 |
| 5.4.2 | 외부 시크릿 스토리지를 고려하십시오. | 스코어링되지 않음 | 2 | 실패 | 공유 |
5.5 확장 가능한 승인 제어
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.5.1 | ImagePolicyWebhook 권한 제어기를 사용하여 이미지 출처를 구성하십시오. |
스코어링되지 않음 | 2 | 실패 | 공유 |
5.6 일반 정책
| 섹션 | 권장 사항. | 득점했나요? | 레벨 | 결과 | 책임 |
|---|---|---|---|---|---|
| 5.6.1 | 네임스페이스를 사용하여 리소스 간의 관리 경계를 작성하십시오. | 스코어링되지 않음 | 1 | 통과 | 공유 |
| 5.6.2 | 포드 정의에서 ‘ seccomp ’ 프로필이 ‘docker/default’로 설정되어 있는지 확인하십시오. |
스코어링되지 않음 | 2 | 실패 | 공유 |
| 5.6.3 | 보안 컨텍스트를 팟(Pod) 및 컨테이너에 적용하십시오. | 스코어링되지 않음 | 2 | 실패 | 공유 |
| 5.6.4 | 기본 네임스페이스를 사용하면 안 됩니다. | 스코어링되지 않음 | 2 | 통과 | 공유 |
IBM 조치방안 및 설명
| 섹션 | Remediation and explanation. |
|---|---|
| 1.2.1 | Red Hat OpenShift on IBM Cloud는 클러스터 보호를 위해 RBAC를 활용하지만 CIS Kubernetes 벤치마크에 따라 합리적인 것으로 간주되는 익명 검색을 허용합니다. |
| 1.2.3 | OpenShift 서비스 외부 접속을 제한하기 위해 다른 완화 조치를 적용하고 있습니다. IPs. |
| 1.2.9 | Red Hat OpenShift on IBM Cloud는 Kubernetes 알파 기능이므로 EventRateLimit 승인 제어기를 사용으로 설정하지 않습니다. |
| 1.2.11 | Red Hat OpenShift on IBM Cloud 이 설정은 AlwaysPullImages 컨테이너의 imagePullPolicy 설정을 재정의하고 성능에 영향을 줄 수 있으므로 어드미션 컨트롤러를 활성화하지 않습니다. |
| 1.2.17 | Red Hat OpenShift on IBM Cloud는 선택적으로 Kubernetes API 서버 감사를 사용으로 설정할 수 있습니다. |
| 1.2.27 | Red Hat OpenShift on IBM Cloud는 선택적으로 Kubernetes 키 관리 서비스(KMS) 제공자를 사용으로 설정할 수 있습니다. |
| 1.2.28 | Red Hat OpenShift on IBM Cloud는 선택적으로 Kubernetes 키 관리 서비스(KMS) 제공자를 사용으로 설정할 수 있습니다. |
| 1.2.30 | OpenShift --service-account-extend-token-expiration 의 비활성화 기능을 지원하지 않습니다. |
| 3.2.1 | Red Hat OpenShift on IBM Cloud는 선택적으로 Kubernetes API 서버 감사를 사용으로 설정할 수 있습니다. |
| 3.2.2 | Red Hat OpenShift on IBM Cloud는 선택적으로 Kubernetes API 서버 감사를 사용으로 설정할 수 있습니다. |
| 4.2.7 | Red Hat OpenShift on IBM Cloud는 인프라에서 발행된 이름과 호스트 이름이 일치하도록 합니다. |
| 4.2.10 | Red Hat OpenShift on IBM Cloud 모든 워커 노드의 재시작 또는 업데이트 시마다 인증서를 교체합니다. |
| 5.1.2 | Red Hat OpenShift on IBM Cloud는 Kubernetes 시크릿 액세스가 더 제한될 수 있는 일부 시스템 컴포넌트를 배치합니다. |
| 5.1.3 | Red Hat OpenShift on IBM Cloud는 Kubernetes 리소스 액세스가 더 제한될 수 있는 일부 시스템 컴포넌트를 배치합니다. |
| 5.1.5 | Red Hat OpenShift on IBM Cloud는 각 기본 서비스 계정에 대해 automountServiceAccountToken: false를 설정하지 않습니다. |
| 5.1.6 | Red Hat OpenShift on IBM Cloud는 automountServiceAccountToken: false를 설정할 수 있는 일부 시스템 컴포넌트를 배치합니다. |
| 5.2.2 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.3 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.4 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.5 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.6 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.7 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.8 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.2.9 | Red Hat OpenShift on IBM Cloud 선택적으로 OpenShift 보안 컨텍스트 제약 조건 및 Kubernetes pod 보안 승인 을 구성할 수 있으며, 이는 더 이상 사용되지 않는 Kubernetes pod 보안 정책 과 유사합니다. |
| 5.4.1 | Red Hat OpenShift on IBM Cloud는 시크릿을 환경 변수로 사용하는 것보다 파일로 사용하는 것을 선호할 수 있는 일부 시스템 컴포넌트를 배치합니다. |
| 5.4.2 | Red Hat OpenShift on IBM Cloud 선택적으로 ‘ Secrets Manager ’ 서비스를 활성화할 수 있습니다. |
| 5.5.1 | Red Hat OpenShift on IBM Cloud는 선택적으로 이미지 보안 적용을 사용으로 설정할 수 있습니다. |
| 5.6.2 | Red Hat OpenShift on IBM Cloud 모든 파드에 ‘ seccomp ’ 프로필을 적용하지는 않습니다. |
| 5.6.3 | Red Hat OpenShift on IBM Cloud는 팟(Pod) 또는 컨테이너 securityContext를 설정하지 않는 일부 시스템 컴포넌트를 배치합니다. |