일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Kubernetes
- Kubernetes 인증
- mlops
- MLflow
- Pulumi
- serving
- opentelemetry
- eBPF
- opensearch
- seldon core
- blue/green
- CANARY
- kubernetes operator
- Kopf
- gitops
- 오퍼레이터
- tekton
- Litmus
- Continuous Deployment
- xdp
- operator
- knative
- 카오스 엔지니어링
- Kubeflow
- keda
- Model Serving
- argocd
- nginx ingress
- CI/CD
- Argo
- Today
- Total
Kubernetes 이야기
Container/Kubernetes Compliance ( 컨테이너/쿠베네티스 규정 준수 ) 본문
Container Compliance란 무엇인가?
많은 Application들이 컨테이너와 Kubernetes로 개발되어 배포되고 있다. 이 추세는 앞으로 더욱 더 많아 질 것으로 예상된다. 이렇게 사용하는 Container와 Kubernetes가 규정을 준수하는지 확인하고 이 새로운 유형의 인프라에 규정 준수 제어를 적용하는데는 어느 정도 학습 곡선이 필요하다.
컨테이너 규정을 준수하는지 확인할 때 조직이 직면하는 몇 가지 주요 과제는 아래와 같다.
- 취약성 관리 —컨테이너는 종종 취약성을 포함할 수 있는 오픈 소스 이미지를 사용합니다. 프로덕션에서 사용하기 전에 이러한 이미지를 모니터링하고 취약점을 수정해야 합니다.
- 네트워크 보안 —컨테이너가 실행되는 위치를 추적하고 컨테이너 간의 네트워크 트래픽을 모니터링하는 것은 어렵습니다. 그러나 무단 액세스 및 측면 이동을 방지하려면 이러한 모니터링을 수행하는 것이 필수적입니다.
- 위협 분석 및 완화 —컨테이너화된 환경에는 정책 기반 보안 규칙과 이러한 규칙이 충족되는지 확인하고 악의적인 활동을 방지하기 위한 자동 검사가 있어야 합니다.
- 사용자 액세스 제어 — 특정 작업 관련 요구 사항이 있는 사용자 또는 응용 프로그램만 컨테이너에 액세스할 수 있어야 하며 액세스는 실제로 필요한 최소 수준으로 제한되어야 합니다.
- 데이터 보호 —조직은 컨테이너화된 환경에 대한 실시간 가시성과 이벤트 감사 추적이 필요합니다. 민감한 데이터 및 시스템(각 규정 준수 표준에 정의된 대로)에 대한 액세스는 기록되고 감사되어야 합니다. 이는 기존 감사 방법에서 지원되지 않을 수 있습니다.
컨테이너에 대한 규정 준수를 발표하는 몇개의 대표적인 기관을 알아보자.
1. CIS Benchmarks
CIS(Center for Internet Security)는 컨테이너화된 환경을 포함하여 다양한 IT 환경에서 사이버 보안에 대한 모범 사례를 게시한다. CIS 벤치마크 문서는 컨테이너에 대한 안전하고 규정을 준수하는 구성을 보장하기 위해 업계에서 널리 사용된다. CIS 모범 사례에 대해 컨테이너화된 워크로드를 자동으로 테스트하기 위해 여러 도구를 사용할 수 있다.
Docker 용 CIS 벤치마크
Docker의 CIS 벤치마크를 사용하여 Docker 호스트 구성, Daemon 구성, 컨테이너 런타임 및 Docker Swarm 구성을 포함하여 Docker 컨테이너 및 Docker 런타임이 가능한 한 안전하게 구성되도록 할 수 있다.
https://www.cisecurity.org/benchmark/docker
Kubernetes 용 CIS 벤치마크 테스트
Kubernetes 제어 평면, 작업자 노드 보안 및 RBAC, 네트워킹 및 비밀에 대한 보안 정책 설정에 대한 지침이 포함되어 있다.
https://www.cisecurity.org/benchmark/kubernetes
2. NIST
컨테이너 보안을 강화하는 방법을 이해하기 위한 한 가지 도구는 NIST(National Institute of Standards and Technology)에서 제공한다.
국립 표준 기술 연구소(National Institute of Standards and Technology) 특별 간행물 800-190은 컨테이너 기술과 관련된 보안 문제를 설명하기 위해 고안되었다. 또한 간행물 전반에 걸쳐 요약된 우려 사항을 해결하기 위한 권장 사항이 제공된다.
https://csrc.nist.gov/publications/detail/sp/800-190/final
NIST 에서 권장하는 보안사항은 아래와 같다.
- 이미지 취약성 관리 — 파이프라인에 통합할 수 있고 정책 기반 시행을 사용하는 컨테이너 네이티브 취약성 관리 솔루션을 사용합니다.
- 이미지 구성 결함 —이미지 규정 준수를 확인하고 시행하는 프로세스를 구현합니다. 예를 들어 런타임 컨테이너에 대한 사용자 액세스를 제어합니다.
- 임베디드 멀웨어 — 멀웨어 서명 세트를 포함하여 임베디드 멀웨어에 대한 이미지를 지속적으로 모니터링합니다.
- 레지스트리에 대한 안전하지 않은 연결 - 레지스트리 에 대한 모든 연결과 레지스트리와 엔드포인트 간에 이동하는 모든 데이터를 암호화합니다.
- 안전한 관리 액세스 — 오케스트레이터가 민감한 리소스에 대한 사용자 액세스를 제한하는 "최소 권한" 액세스 모델을 구현해야 합니다.
- 취약성 감지를 자동화할 수 있는 도구를 사용 하여 취약성에 대한 컨테이너 런타임을 모니터링합니다 .
- 가능한 경우 범용 OS 대신 컨테이너 OS를 사용하고 호스트의 취약성을 지속적으로 검색하여 공격 표면을 최소화합니다 .
- 동일한 호스트에서 컨테이너화 되지 않은 워크로드와 컨테이너화된 워크로드를 혼합하지 마십시오 . 그렇지 않으면 컨테이너 보호를 위한 대책을 쉽게 적용할 수 없습니다.
3. FedRAMP
FedRAMP(Federal Risk and Authorization Management Program)는 클라우드 제품 및 서비스에 적용되는 보안 평가, 인증 및 지속적인 모니터링의 표준화된 접근 방식을 제공하는 미국 정부 차원의 프로그램이다.
컨테이너 기술의 가장 일반적인 특성을 다음과 같이 소개하고 있다.
- 컨테이너는 다른 프로세스와 격리되어야 하는 애플리케이션 및 해당 종속성을 실행한다.
- 컨테이너에는 호스트 독립적인 네트워크 연결이 있다.
- 컨테이너는 본질적으로 탄력적이며 때로는 임시적이다.
- 컨테이너는 변경할 수 없으며 보안 스테이징의 소스 이미지에서 업그레이드가 발생한다.
- 환경 및 컨테이너 업그레이드에는 기존 컨테이너를 파괴하고 새 컨테이너로 교체하는 작업이 포함된다.
이와 같은 컨테이너화 기술 사용과 관련된 중요한 위험 및 위협은 다음과 같다.
- 검증되지 않은 외부 소프트웨어
- 비표준 구성
- 모니터링되지 않는 컨테이너 간 통신
- 무단 액세스
- 관리되지 않는 레지스트리/리포지토리
컨테이너 기술을 사용하는 시스템의 스캔 요구 사항은 아래와 같이 설명되어 있다.
- 강화 된 이미지 : CSP는 이미지가 "강화"된 컨테이너만 사용해야 한다. NIST(National Institute of Standards and Technology) SP 800-70에서 정의한 관련 벤치마크를 따라야한다.
- 컨테이너 구축, 테스트 및 오케스트레이션 파이프라인 : CSP는 자동화된 컨테이너 오케스트레이션 도구를 활용하여 컨테이너를 구축, 테스트 및 프로덕션 환경에 배포해야 한다. 이러한 자동화 도구는 CA-2, CM-2, CM-3, SC-28, SI-3 및 SI-7 (https://www.gsa.gov/cdnstatic/FedRAMP_Control_Quick_Guide_V12_%281%29.pdf) 의 기준 제어에 대한 FedRAMP 요구 사항을 충족하도록 3PAO (제3자 평가 기관을 의미)의 검증을 받아야 한다.
- 컨테이너 이미지에 대한 취약점 스캔 : 가능한 경우 컨테이너 오케스트레이션 프로세스는 스캔을 배포 파이프라인의 단계 중 하나로 통합해야 한다. 30일 취약점 스캔 기간 내에 스캔된 이미지의 컨테이너만 프로덕션 환경에 적극적으로 배포할 수 있다.
- 레지스트리 모니터링 : 컨테이너 레지스트리는 30일 취약점 검색 기간 내에 검색되지 않은 이미지에 해당하는 컨테이너가 프로덕션에 적극적으로 배포되지 않도록 고유한 이미지별로 모니터링해야 한다.
4. NSA, CISA
미국 NSA(National Security Agency)와 CISA(Cybersecurity and Infrastructure Security Agency)는 2021년 8월 3일 " Kubernetes 강화 지침 "을 발표했다. 이 지침은 Kubernetes 환경에 대한 위협을 자세히 설명하고 위험을 최소화하기 위한 안전한 구성 지침을 제공한다.
https://www.nsa.gov/Press-Room/News-Highlights/Article/Article/2716980/nsa-cisa-release-kubernetes-hardening-guidance/
위의 내요을 간략히 정리한 Kubernetes 공식 블로그는 아래에 있다.
https://kubernetes.io/blog/2021/10/05/nsa-cisa-kubernetes-hardening-guidance/
주요 내요은 아래와 같다.
- 취약점이나 잘못된 구성에 대해 컨테이너와 포드를 스캔
- 가능한 최소한의 권한으로 컨테이너와 파드를 실행
- 네트워크 분리를 사용하여 손상으로 인한 피해량 제어
- 방화벽을 사용하여 불필요한 네트워크 연결을 제한하고 암호화를 사용하여 기밀을 보호
- 강력한 인증 및 권한 부여를 사용하여 사용자 및 관리자 제한
- 관리자가 잠재적인 악의적인 활동에 대해 경고할 수 있도록 감사 로그를 캡처하고 모니터링
- 정기적으로 모든 Kubernetes 설정을 검토하고 취약성 스캔을 사용하여 위험이 적절하게 설명되고 보안 패치가 적용되었는지 확인
'Kubernetes > 보안' 카테고리의 다른 글
pod security admission (0) | 2022.08.31 |
---|---|
KubeClarity (0) | 2022.08.25 |
Kubernetes scan 도구 - popeye (0) | 2022.05.15 |
Network Policy (0) | 2022.05.08 |
Kubescape (0) | 2022.05.01 |