반응형
✅ 1. The 4Cs of Cloud Native Security
4C = Code → Container → Cluster → Cloud
이건 보안 레이어를 안쪽부터 바깥쪽으로 쌓아 올리는 개념이야. 각각이 독립적이면서도 서로 영향을 줘.
계층 설명 핵심 개념
Code | 어플리케이션 소스코드 보안 | - Static Analysis (SAST)- Secrets 관리- 의존성 취약점 분석 (SCA) |
Container | 이미지 자체의 보안 | - 최소한의 Base Image 사용- 멀티스테이지 빌드- 이미지 서명 및 취약점 스캔- 루트 계정 미사용 |
Cluster | 쿠버네티스 클러스터 보안 | - RBAC- PodSecurityContext- NetworkPolicy- Admission Controller (OPA, Kyverno 등) |
Cloud | 클라우드 인프라 자체의 보안 | - IAM Least Privilege- VPC 보안- Secret Manager 사용- 로그 및 감사 |
✅ 2. Cloud Provider and Infrastructure Security
이건 클라우드 환경 자체를 안전하게 구성하는 방법에 집중한 항목이야.
구분 설명 체크리스트
IAM 보안 | 최소 권한 원칙 | - 서비스 계정 최소 권한- Cloud IAM 역할 검토- 사용자 인증 MFA 적용 |
VPC & 네트워크 보안 | 네트워크 레벨 격리 | - Public IP 최소화- CIDR 제한- Cloud NAT 구성 |
Audit & Logging | 이상 징후 탐지 | - Cloud Audit Logs 활성화- Cloud Logging & Monitoring 설정 |
Kubernetes 클러스터 설정 | 관리 계층 보호 | - Control Plane 접근 제한 (Private endpoint)- 클러스터 관리자는 최소화 |
✅ 3. Controls and Frameworks
보안을 어떻게 관리·운영하고 정책화할지를 다루는 영역이야.
요소 설명 실무 적용
RBAC (Role-Based Access Control) | 사용자/서비스 권한 제어 | kubectl create role, rolebinding 설정 |
Pod Security Standards (PSS) | 파드 보안 정책 표준 | restricted, baseline, privileged |
NetworkPolicy | 파드 간 통신 제한 | namespaceSelector, podSelector로 제한 |
Admission Controller | 리소스 생성시 정책 검증 | - Kyverno / OPA Gatekeeper로 규칙 설정 |
CIS Benchmarks | 보안 설정 기준 | kube-bench로 확인 가능 |
Seccomp, AppArmor, SELinux | 런타임 보안 프로파일 | 노드 및 파드에 적용 가능한 커널 보안 설정 |
✅ 4. Isolation Techniques
멀티 테넌시 환경이나 보안 요구사항 높은 환경에서 리소스를 어떻게 격리할 것인가?
레벨 격리 대상 기술
Namespace | 논리적 구분 | 각 팀마다 네임스페이스 분리 |
RBAC + Namespace | 권한 격리 | 네임스페이스별 역할 설정 |
Node Pool / Node Affinity | 물리적 자원 분리 | 특정 파드만 특정 노드에서 실행 |
Pod SecurityContext | 파드 수준 보안 | readOnlyRootFS, runAsNonRoot 등 |
NetworkPolicy | 네트워크 격리 | 특정 파드끼리만 통신 허용 |
Runtime Sandbox | 격리된 실행 환경 | gVisor, Kata Containers (특히 하이보안 요구 시) |
✅ 5. Artifact Repository and Image Security
도커 이미지와 저장소 관련 보안은 정말 중요해. 악성 이미지가 유포되면 큰일이니까!
항목 설명 체크포인트
Private Registry 사용 | 외부 노출 최소화 | - Harbor, ECR, GCR 같은 Private Registry 사용 |
이미지 서명 | 위조 방지 | - Notary, Cosign으로 이미지 서명 |
취약점 스캔 | 자동화 도구 사용 | - Trivy, Clair, Anchore 등으로 이미지 검사 |
Base Image 최소화 | 공격 표면 줄이기 | - Distroless, Alpine 등 사용 |
멀티스테이지 빌드 | 불필요한 파일 제거 | - 빌드툴과 실행환경 분리 |
레이어 캐싱 주의 | 민감정보 노출 방지 | - RUN echo $SECRET > file 같은 명령 피하기 |
✅ 6. Workload and Application Code Security
이건 결국 파드와 컨테이너 안에서 돌아가는 어플리케이션 코드의 보안이야.
분야 설명 적용 방법
Secrets 관리 | 민감정보는 코드에 쓰지 않기 | - Secret 리소스 사용- External Secrets 사용 (Vault 등) |
환경변수 주의 | 노출 가능성 있음 | - env로 민감정보 전달 X |
SAST/DAST | 정적/동적 코드 분석 | - SonarQube, Snyk 사용 |
취약한 라이브러리 | 의존성 스캔 | - SCA 도구 사용: Snyk, Trivy, osv-scanner |
서버 설정 보안 | 인증/인가/로깅 설정 | - HTTPS 강제, 인증 필수화, 에러 메시지 최소화 |
리소스 제한 설정 | 리소스 남용 방지 | - resources.requests, limits 설정 |
반응형
'Certificated 도전 > KCSA - Kubernetes' 카테고리의 다른 글
[KCSA]Kubernetes 애플리케이션 보안 체크리스트 (개발자용) (0) | 2025.03.30 |
---|---|
[KCSA]Kubernetes 보안 체크리스트 요약 (한눈에 보기) (0) | 2025.03.30 |
[KCSA] SecurityContext란? (0) | 2025.03.30 |
[KCSA] Kubernetes API 서버 우회 위험 및 대응 가이드 (0) | 2025.03.30 |
[KCSA]Kubernetes 인증 메커니즘 하드닝 가이드 (0) | 2025.03.30 |