Kubernetes

Terraform으로 정의하는 Kubernetes 리소스의 접근 제어와 워크로드 운영 관련 문서입니다.

문서 목록

문서 경로
컨테이너 AppArmor 적용 상태 점검 terraform/kubernetes/missing_app_armor_config
컨테이너 CPU limit 설정 점검 terraform/kubernetes/cpu_limits_not_set
컨테이너 CPU request 설정 점검 terraform/kubernetes/cpu_requests_not_set
컨테이너의 호스트 PID 네임스페이스 공유 terraform/kubernetes/container_host_pid_is_true
컨테이너 자원 요청량과 제한 설정 점검 terraform/kubernetes/container_resources_limits_undefined
컨테이너 Linux capability 추가 설정 점검 terraform/kubernetes/container_with_added_capabilities
CronJob 시작 마감 시간 점검 terraform/kubernetes/cronjob_deadline_not_configured
Deployment 파드 분산 배치 점검 terraform/kubernetes/deployment_has_no_pod_anti_affinity
Deployment PodDisruptionBudget 구성 점검 terraform/kubernetes/deployment_without_pod_disruption_budget
컨테이너의 Docker 데몬 소켓 접근 점검 terraform/kubernetes/docker_daemon_socket_is_exposed_to_containers
HPA Object 메트릭 참조 구성 점검 terraform/kubernetes/hpa_targets_invalid_object
호스트 IPC 공유를 허용하는 Kubernetes PodSecurityPolicy terraform/kubernetes/psp_allows_sharing_host_ipc
파드의 호스트 IPC 네임스페이스 공유 terraform/kubernetes/shared_host_ipc_namespace
호스트 네트워크 공유를 허용하는 Kubernetes PodSecurityPolicy terraform/kubernetes/psp_allows_containers_to_share_the_host_network_namespace
파드의 호스트 네트워크 네임스페이스 공유 terraform/kubernetes/shared_host_network_namespace
Kubernetes Ingress의 워크로드 공개 범위 점검 terraform/kubernetes/ingress_controller_exposes_workload
컨테이너 메모리 limit 설정 점검 terraform/kubernetes/memory_limits_not_defined
컨테이너 메모리 request 설정 점검 terraform/kubernetes/memory_requests_not_defined
컨테이너 NET_RAW 권한 제거 설정 점검 terraform/kubernetes/net_raw_capabilities_not_being_dropped
정책의 NET_RAW 권한 제거 요구사항 점검 terraform/kubernetes/net_raw_capabilities_disabled_for_psp
Pod·컨테이너 Security Context 점검 terraform/kubernetes/pod_or_container_without_security_context
Pod 생성 권한 과다 허용 terraform/kubernetes/permissive_access_to_create_pods
NetworkPolicy 대상 파드 선택 점검 terraform/kubernetes/network_policy_is_not_targeting_any_pod
권한 상승을 허용하는 Kubernetes PodSecurityPolicy terraform/kubernetes/psp_allows_privilege_escalation
권한 상승이 허용된 Kubernetes 컨테이너 terraform/kubernetes/privilege_escalation_allowed
Privileged 모드로 실행되는 Kubernetes 컨테이너 terraform/kubernetes/container_is_privileged
Privileged 실행을 허용하는 Kubernetes PodSecurityPolicy terraform/kubernetes/psp_set_to_privileged
컨테이너 readiness probe 구성 점검 terraform/kubernetes/readiness_probe_is_not_configured
컨테이너 root 실행 허용 정책 점검 terraform/kubernetes/root_containers_admitted
SYS_ADMIN capability가 추가된 Kubernetes 컨테이너 terraform/kubernetes/containers_with_sys_admin_capabilities
컨테이너 seccomp 프로파일 적용 점검 terraform/kubernetes/secoomp_profile_is_not_configured
Secret 환경 변수 노출 위험 점검 terraform/kubernetes/secrets_as_environment_variables
Secret 읽기 권한이 있는 RBAC Role terraform/kubernetes/rbac_roles_with_read_secrets_permissions
ServiceAccount 공유 범위 점검 terraform/kubernetes/shared_service_account
ServiceAccount 이름 미지정 terraform/kubernetes/service_account_name_undefined_or_empty
ServiceAccount 토큰 자동 마운트 설정 점검 terraform/kubernetes/service_account_token_automount_not_disabled
ServiceAccount의 Secret 접근 권한 점검 terraform/kubernetes/service_account_allows_access_secrets
Kubernetes NodePort 서비스 접근 범위 점검 terraform/kubernetes/service_type_is_nodeport
StatefulSet Headless Service 연결 점검 terraform/kubernetes/statefulset_without_service_name
StatefulSet PodDisruptionBudget 구성 점검 terraform/kubernetes/statefulset_without_pod_disruption_budget
StatefulSet 영구 스토리지 요구 사항 점검 terraform/kubernetes/statefulset_requests_storage
Tiller (Helm v2)가 배포된 Kubernetes 환경 terraform/kubernetes/tiller_is_deployed
Unmasked proc mount를 허용하는 Kubernetes 보안 정책 terraform/kubernetes/container_runs_unmasked
Unsafe sysctl을 허용하는 Kubernetes 구성 terraform/kubernetes/cluster_allows_unsafe_sysctls
워크로드 host_port 사용 필요성 점검 terraform/kubernetes/workload_host_port_not_specified
cluster-admin ClusterRoleBinding 권한 점검 terraform/kubernetes/cluster_admin_role_binding_with_super_user_permissions
컨테이너 liveness probe 필요성 점검 terraform/kubernetes/liveness_probe_is_not_defined
Kubernetes 기본 네임스페이스 사용 점검 terraform/kubernetes/using_default_namespace
기본 ServiceAccount 권한과 토큰 자동 마운트 점검 terraform/kubernetes/default_service_account_in_use
기본 ServiceAccount에 RoleBinding 연결 terraform/kubernetes/role_binding_to_default_service_account
민감한 호스트 디렉터리를 사용하는 Kubernetes 워크로드 terraform/kubernetes/workload_mounting_with_sensitive_os_directory
Kubernetes OS 디렉터리 마운트 보호 점검 terraform/kubernetes/volume_mount_with_os_directory_write_permissions
Kubernetes LoadBalancer 서비스 공개 범위 점검 terraform/kubernetes/service_with_external_load_balancer
컨테이너 이미지 다이제스트 고정 점검 terraform/kubernetes/image_without_digest
일반 Kubernetes 워크로드의 hostPath 사용 점검 terraform/kubernetes/non_kube_system_pod_with_host_mount
볼륨 클레임 접근 모드 점검 terraform/kubernetes/incorrect_volume_claim_access_mode_read_write_once
Kubernetes 메타데이터 라벨 형식 점검 terraform/kubernetes/metadata_label_is_invalid
컨테이너 이미지 참조 점검 terraform/kubernetes/invalid_image
추가 capabilities를 허용하는 Kubernetes PodSecurityPolicy terraform/kubernetes/psp_with_added_capabilities
컨테이너 Linux capability 축소 점검 terraform/kubernetes/no_drop_capabilities_for_containers
컨테이너 이미지 pull 정책 점검 terraform/kubernetes/image_pull_policy_of_container_is_not_always
컨테이너 루트 파일 시스템 쓰기 보호 점검 terraform/kubernetes/root_container_not_mounted_as_read_only

관련 문서62

컨테이너 AppArmor 적용 상태 점검

노드 지원과 실제 프로파일을 확인하고 필요한 AppArmor 제한을 적용하세요.

컨테이너 CPU limit 설정 점검

CPU 상한의 필요성과 throttling 영향을 워크로드 요구에 맞춰 검토하세요.

컨테이너 CPU request 설정 점검

실제 CPU 요구량에 맞는 스케줄링 기준을 설정하세요.

컨테이너의 호스트 PID 네임스페이스 공유

호스트 프로세스 접근이 필요하지 않은 파드에서 host_pid를 비활성화하세요.

컨테이너 자원 요청량과 제한 설정 점검

필요한 CPU·메모리 요청량과 사용 상한을 실제 워크로드에 맞게 구성하세요.

컨테이너 Linux capability 추가 설정 점검

추가 권한의 필요성을 확인하고 실제 capability 집합을 최소화하세요.

CronJob 시작 마감 시간 점검

늦은 실행을 허용할 범위를 작업의 시간 요구사항에 맞게 정하세요.

Deployment 파드 분산 배치 점검

복제본을 장애 영역에 맞게 분산하고 실제 배치를 확인하세요.

Deployment PodDisruptionBudget 구성 점검

유지보수 중 허용할 자발적 파드 중단 수를 서비스 요구에 맞게 정하세요.

컨테이너의 Docker 데몬 소켓 접근 점검

일반 애플리케이션에 호스트 Docker 데몬 소켓을 제공하지 마세요.

HPA Object 메트릭 참조 구성 점검

측정 대상 객체와 실제로 확장할 워크로드를 구분해 구성하세요.

호스트 IPC 공유를 허용하는 Kubernetes PodSecurityPolicy

정책에서 불필요한 호스트 IPC 네임스페이스 공유를 차단하세요.

파드의 호스트 IPC 네임스페이스 공유

호스트 IPC 자원이 필요하지 않은 파드에서 host_ipc를 비활성화하세요.

호스트 네트워크 공유를 허용하는 Kubernetes PodSecurityPolicy

불필요한 호스트 네트워크 공유를 정책에서 제한하세요.

파드의 호스트 네트워크 네임스페이스 공유

호스트 네트워크가 필요하지 않은 파드에는 별도 네트워크 네임스페이스를 사용하세요.

Kubernetes Ingress의 워크로드 공개 범위 점검

Ingress의 실제 접근 경로와 인증·TLS 구성이 서비스 요구사항에 맞는지 확인하세요.

컨테이너 메모리 limit 설정 점검

메모리 사용량에 맞는 상한과 실제 적용되는 제한을 확인하세요.

컨테이너 메모리 request 설정 점검

실제 메모리 요구량에 맞는 request와 적용되는 기본값을 확인하세요.

컨테이너 NET_RAW 권한 제거 설정 점검

raw socket이 필요하지 않은 컨테이너에서 NET_RAW를 제거하세요.

정책의 NET_RAW 권한 제거 요구사항 점검

raw socket이 불필요한 워크로드에 NET_RAW 제거를 요구하세요.

Pod·컨테이너 Security Context 점검

실제 실행 권한을 확인하고 필요한 보안 컨텍스트를 적용하세요.

Pod 생성 권한 과다 허용

Pod 생성 권한을 필요한 주체로 제한하고 허용할 워크로드 구성을 통제하세요.

NetworkPolicy 대상 파드 선택 점검

정책이 의도한 네임스페이스와 파드를 실제로 선택하는지 확인하세요.

권한 상승을 허용하는 Kubernetes PodSecurityPolicy

권한 상승 제한을 보안 정책에 적용해 여러 워크로드의 최소 권한 기준을 유지하세요.

권한 상승이 허용된 Kubernetes 컨테이너

실행 파일을 통한 추가 권한 획득을 제한하도록 컨테이너의 권한 상승 설정을 구성하세요.

Privileged 모드로 실행되는 Kubernetes 컨테이너

Kubernetes 컨테이너의 불필요한 privileged 모드를 해제하세요.

Privileged 실행을 허용하는 Kubernetes PodSecurityPolicy

일반 워크로드의 privileged 실행을 정책에서 금지하세요.

컨테이너 readiness probe 구성 점검

서비스 요청을 처리할 준비 상태를 실제 애플리케이션 기준으로 확인하세요.

컨테이너 root 실행 허용 정책 점검

비 root 실행과 권한 상승 제한을 구분해 적용하세요.

SYS_ADMIN capability가 추가된 Kubernetes 컨테이너

컨테이너에 불필요한 SYS_ADMIN capability를 부여하지 마세요.

컨테이너 seccomp 프로파일 적용 점검

Linux 컨테이너에 적절한 seccomp 프로파일을 적용하고 실제 동작을 확인하세요.

Secret 환경 변수 노출 위험 점검

Secret 전달 방식과 로그·진단 도구의 비밀값 노출을 함께 관리하세요.

Secret 읽기 권한이 있는 RBAC Role

Secret 조회 권한은 필요한 주체와 네임스페이스로 제한하세요.

ServiceAccount 공유 범위 점검

업무와 권한이 다른 워크로드는 ServiceAccount를 분리하세요.

ServiceAccount 이름 미지정

파드가 사용할 계정을 명시하고 실제 권한을 확인하세요.

ServiceAccount 토큰 자동 마운트 설정 점검

Kubernetes API 토큰이 필요하지 않은 파드에는 자동 마운트를 비활성화하세요.

ServiceAccount의 Secret 접근 권한 점검

ServiceAccount에 연결된 Secret 조회 권한은 필요한 범위로 제한하세요.

Kubernetes NodePort 서비스 접근 범위 점검

NodePort가 필요한지 확인하고 실제 노드 접근 경로를 제한하세요.

StatefulSet Headless Service 연결 점검

StatefulSet의 고정 네트워크 식별자에 사용할 Headless Service를 구성하세요.

StatefulSet PodDisruptionBudget 구성 점검

상태 저장 애플리케이션이 허용할 수 있는 자발적 중단 수를 정하세요.

StatefulSet 영구 스토리지 요구 사항 점검

데이터 지속 저장 필요성과 용량·보존 정책을 함께 검토하세요.

Tiller (Helm v2)가 배포된 Kubernetes 환경

지원이 종료된 Helm v2의 Tiller를 제거하고 지원되는 배포 방식으로 이전하세요.

Unmasked proc mount를 허용하는 Kubernetes 보안 정책

Unmasked proc mount 허용을 제거해 /proc의 기본 보호를 유지하세요.

Unsafe sysctl을 허용하는 Kubernetes 구성

Unsafe sysctl 허용을 제한해 Pod 격리와 노드 안정성을 보호하세요.

워크로드 host_port 사용 필요성 점검

host_port가 필요한 경우에만 노드 포트 연결과 접근 범위를 구성하세요.

cluster-admin ClusterRoleBinding 권한 점검

cluster-admin은 클러스터 전체 관리가 필요한 주체에만 부여하세요.

컨테이너 liveness probe 필요성 점검

재시작으로 복구할 수 있는 비정상 상태에 liveness probe를 사용하세요.

Kubernetes 기본 네임스페이스 사용 점검

네임스페이스를 명시하고 RBAC·네트워크·리소스 정책을 함께 구성하세요.

기본 ServiceAccount 권한과 토큰 자동 마운트 점검

워크로드별 권한을 분리하고 필요하지 않은 API 토큰은 자동 마운트하지 마세요.

기본 ServiceAccount에 RoleBinding 연결

기본 계정에 불필요한 권한을 부여하지 말고 용도별 계정을 사용하세요.