Amazon EKS에 대한 Security Hub 제어
이러한 Security Hub 제어는 Amazon Elastic Kubernetes Service(Amazon EKS) 서비스 및 리소스를 평가합니다.
AWS 리전에서는 이러한 제어를 모두 사용하지 못할 수도 있습니다. 자세한 내용은 리전별 제어 기능 사용 가능 여부 섹션을 참조하세요.
[EKS.1] EKS 클러스터 엔드포인트는 공개적으로 액세스할 수 없어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-21, NIST.800-53.r5 AC-3, NIST.800-53.r5 AC-3(7), NIST.800-53.r5 AC-4, NIST.800-53.r5 AC-4(21), NIST.800-53.r5 AC-6, NIST.800-53.r5 SC-7, NIST.800-53.r5 SC-7(11), NIST.800-53.r5 SC-7(16), NIST.800-53.r5 SC-7(20), NIST.800-53.r5 SC-7(21), NIST.800-53.r5 SC-7(3), NIST.800-53.r5 SC-7(4), NIST.800-53.r5 SC-7(9)
범주: 보호 > 보안 네트워크 구성 > 공개적으로 액세스할 수 없는 리소스
심각도: 높음
리소스 유형: AWS::EKS::Cluster
AWS Config 규칙: eks-endpoint-no-public-access
스케줄 유형: 주기적
파라미터: 없음
이 제어는 Amazon EKS 클러스터 엔드포인트에 공개적으로 액세스할 수 있는지 여부를 확인합니다. EKS 클러스터에 공개적으로 액세스할 수 있는 엔드포인트가 있는 경우, 제어가 실패합니다.
새로운 클러스터를 생성하면 Amazon EKS는 클러스터와 통신하는 데 사용하는 관리형 Kubernetes API 서버에 대한 엔드포인트를 생성합니다. 기본적으로 이 API 서버 엔드포인트는 인터넷에 공개적으로 사용할 수 있습니다. API 서버에 대한 액세스는 AWS Identity and Access Management (IAM) 및 기본 Kubernetes RBAC(역할 기반 액세스 제어)의 조합을 통해 보호됩니다. 엔드포인트에 대한 퍼블릭 액세스를 제거하면 클러스터에 대한 의도하지 않은 노출 및 액세스를 방지할 수 있습니다.
이제 Security Hub가 와 통합되었습니다
기존 EKS 클러스터의 엔드포인트 액세스를 수정하려면 Amazon EKS 사용 설명서의 클러스터 엔드포인트 액세스 수정을 참조하세요. 새로운 EKS 클러스터를 생성할 때 해당 클러스터에 대한 엔드포인트 액세스를 설정할 수 있습니다. 새로운 Amazon EKS 클러스터 생성에 대한 지침은 Amazon EKS 사용 설명서의 Amazon EKS 클러스터 생성을 참조하세요.
[EKS.2] EKS 클러스터는 지원되는 Kubernetes 버전에서 실행되어야 합니다.
관련 요구 사항: NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-2, NIST.800-53.r5 SI-2, NIST.800-53.r5 SI-2(2), NIST.800-53.r5 SI-2(4), NIST.800-53.r5 SI-2(5)
범주: 식별 > 취약성, 패치 및 버전 관리
심각도: 높음
리소스 유형: AWS::EKS::Cluster
AWS Config 규칙: eks-cluster-supported-version
스케줄 유형: 변경이 트리거됨
파라미터:
-
oldestVersionSupported
:1.28
(사용자 지정할 수 없음)
이 제어는 Amazon Elastic Kubernetes Service(Amazon EKS) 클러스터가 지원되는 Kubernetes 버전에서 실행되고 있는지 여부를 확인합니다. EKS 클러스터가 지원되지 않는 버전에서 실행 중인 경우, 제어가 실패합니다.
애플리케이션에 특정 버전의 Kubernetes가 필요하지 않은 경우, 클러스터에 대해 EKS에서 지원하는 사용 가능한 최신 Kubernetes 버전을 사용하는 것이 좋습니다. 자세한 내용은 Amazon EKS 사용 설명서의 Amazon EKS Kubernetes 릴리스 일정과 Amazon EKS 버전 지원 및 FAQ를 참조하세요.
이제 Security Hub가 와 통합되었습니다
EKS 클러스터를 업데이트하려면 Amazon EKS 사용 설명서의 Amazon EKS 클러스터 Kubernetes 버전 업데이트를 참조하세요.
[EKS.3] EKS 클러스터는 암호화된 Kubernetes 보안 암호를 사용해야 합니다.
관련 요구 사항: NIST.800-53.r5 SC-8, NIST.800-53.r5 SC-12, NIST.800-53.r5 SC-13, NIST.800-53.r5 SI-28
범주: 보호 > 데이터 보호 > 저장 데이터 암호화
심각도: 중간
리소스 유형: AWS::EKS::Cluster
AWS Config 규칙: eks-secrets-encrypted
스케줄 유형: 주기적
파라미터: 없음
이 제어는 Amazon EKS 클러스터가 암호화된 Kubernetes 보안 암호를 사용하는지 확인합니다. 클러스터의 Kubernetes 보안 암호가 암호화되지 않으면 제어가 실패합니다.
보안 암호를 암호화할 때 AWS Key Management Service (AWS KMS) 키를 사용하여 클러스터의 etcd에 저장된 Kubernetes 보안 암호의 엔벨로프 암호화를 제공할 수 있습니다. 이 암호화는 EKS 클러스터의 일부로 etcd에 저장된 모든 데이터(보안 암호 포함)에 대해 기본적으로 활성화되는 EBS 볼륨 암호화에 추가됩니다. EKS 클러스터에 보안 암호 암호화를 사용하면 정의 및 관리하는 KMS 키로 Kubernetes 보안 암호를 암호화하여 Kubernetes 애플리케이션에 대한 심층 방어 전략을 배포할 수 있습니다.
이제 Security Hub가 와 통합되었습니다
EKS 클러스터에서 보안 암호 암호화를 활성화하려면 Amazon EKS 사용 설명서의 기존 클러스터에서 보안 암호 암호화 활성화를 참조하세요.
[EKS.6] EKS 클러스터에 태그를 지정해야 합니다.
범주: 식별 > 인벤토리 > 태그 지정
심각도: 낮음
리소스 유형: AWS::EKS::Cluster
AWS Config 규칙: tagged-eks-cluster
(사용자 지정 Security Hub 규칙)
스케줄 유형: 변경이 트리거됨
파라미터:
파라미터 | 설명 | 형식 | 허용된 사용자 지정 값 | Security Hub 기본값 |
---|---|---|---|---|
requiredTagKeys
|
평가된 리소스에 포함되어야 하는 비시스템 태그 키 목록입니다. 태그 키는 대소문자를 구별합니다. | StringList | AWS 요구 사항을 충족하는 태그 목록 | 기본값 없음 |
이 제어는 Amazon EKS 클러스터에 파라미터 requiredTagKeys
에 정의된 특정 키가 있는 태그가 있는지 확인합니다. 클러스터에 태그 키가 없거나 파라미터 requiredTagKeys
에 지정된 모든 키가 없는 경우, 제어가 실패합니다. 파라미터 requiredTagKeys
이 제공되지 않은 경우, 제어는 태그 키의 존재만 확인하고 클러스터에 키로 태그가 지정되지 않은 경우, 제어가 실패합니다. 자동으로 적용되고 aws:
로 시작하는 시스템 태그는 무시됩니다.
태그는 AWS 리소스에 할당할 수 있는 레이블이며, 태그는 키 및 선택적 값으로 구성됩니다. 태그를 생성하여 용도, 소유자, 환경 또는 기타 기준으로 리소스를 분류할 수 있습니다. 태그를 사용하면 리소스를 식별, 정리, 검색 및 필터링하는 데 도움을 줍니다. 태그 지정은 또한 작업 및 알림에 대한 책임 리소스 소유자를 추적하는 데도 도움이 됩니다. 태그 지정을 사용하는 경우, 속성 기반 액세스 제어(ABAC)를 태그를 기반으로 권한을 정의하는 권한 부여 전략으로 구현할 수 있습니다. IAM 엔터티(사용자 또는 역할) 및 AWS 리소스에 태그를 연결할 수 있습니다. IAM 보안 주체에 대해 단일 ABAC 정책 또는 별도의 정책 세트를 생성할 수 있습니다. 이러한 ABAC 정책은 보안 주체의 태그가 리소스 태그와 일치할 때 작업을 허용하도록 설계할 수 있습니다. 자세한 내용은 IAM 사용 설명서에서 AWS용 ABAC란 무엇입니까?를 참조하세요.
참고
개인 식별 정보(PII)나 기타 기밀 정보 또는 민감한 정보를 태그에 추가하지 않습니다. AWS Billing를 비롯한 많은 AWS 서비스에서 태그에 액세스할 수 있습니다. 태그 지정 모범 사례에 대한 자세한 내용은 AWS 일반 참조의 AWS 리소스 태그 지정을 참조하세요.
이제 Security Hub가 와 통합되었습니다
EKS 클러스터에 태그를 추가하려면 Amazon EKS 사용 설명서의 Amazon EKS 리소스 태그 지정을 참조하세요.
[EKS.7] EKS ID 공급자 구성에 태그를 지정해야 합니다.
범주: 식별 > 인벤토리 > 태그 지정
심각도: 낮음
리소스 유형: AWS::EKS::IdentityProviderConfig
AWS Config 규칙: tagged-eks-identityproviderconfig
(사용자 지정 Security Hub 규칙)
스케줄 유형: 변경이 트리거됨
파라미터:
파라미터 | 설명 | 형식 | 허용된 사용자 지정 값 | Security Hub 기본값 |
---|---|---|---|---|
requiredTagKeys
|
평가된 리소스에 포함되어야 하는 비시스템 태그 키 목록입니다. 태그 키는 대소문자를 구별합니다. | StringList | AWS 요구 사항을 충족하는 태그 목록 | 기본값 없음 |
이 제어는 Amazon EKS ID 공급자 구성에 파라미터 requiredTagKeys
에 정의된 특정 키가 있는 태그가 있는지 확인합니다. 구성에 태그 키가 없거나 파라미터 requiredTagKeys
에 지정된 모든 키가 없는 경우, 제어가 실패합니다. 파라미터 requiredTagKeys
이 제공되지 않은 경우, 제어는 태그 키의 존재만 확인하고 구성에 키로 태그가 지정되지 않은 경우 제어가 실패합니다. 자동으로 적용되고 aws:
로 시작하는 시스템 태그는 무시됩니다.
태그는 AWS 리소스에 할당할 수 있는 레이블이며, 태그는 키 및 선택적 값으로 구성됩니다. 태그를 생성하여 용도, 소유자, 환경 또는 기타 기준으로 리소스를 분류할 수 있습니다. 태그를 사용하면 리소스를 식별, 정리, 검색 및 필터링하는 데 도움을 줍니다. 태그 지정은 또한 작업 및 알림에 대한 책임 리소스 소유자를 추적하는 데도 도움이 됩니다. 태그 지정을 사용하는 경우, 속성 기반 액세스 제어(ABAC)를 태그를 기반으로 권한을 정의하는 권한 부여 전략으로 구현할 수 있습니다. IAM 엔터티(사용자 또는 역할) 및 AWS 리소스에 태그를 연결할 수 있습니다. IAM 보안 주체에 대해 단일 ABAC 정책 또는 별도의 정책 세트를 생성할 수 있습니다. 이러한 ABAC 정책은 보안 주체의 태그가 리소스 태그와 일치할 때 작업을 허용하도록 설계할 수 있습니다. 자세한 내용은 IAM 사용 설명서에서 AWS용 ABAC란 무엇입니까?를 참조하세요.
참고
개인 식별 정보(PII)나 기타 기밀 정보 또는 민감한 정보를 태그에 추가하지 않습니다. AWS Billing를 비롯한 많은 AWS 서비스에서 태그에 액세스할 수 있습니다. 태그 지정 모범 사례에 대한 자세한 내용은 AWS 일반 참조의 AWS 리소스 태그 지정을 참조하세요.
이제 Security Hub가 와 통합되었습니다
EKS 자격 증명 공급자 구성에 태그를 추가하려면 Amazon EKS 사용 설명서의 Amazon EKS 리소스 태그 지정을 참조하세요.
[EKS.8] EKS 클러스터에는 감사 로깅이 활성화되어 있어야 합니다.
관련 요구 사항: NIST.800-53.r5 AC-2(12), NIST.800-53.r5 AC-2(4), NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AC-6(9), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-9(7), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-3(8), NIST.800-53.r5 SI-4, NIST.800-53.r5 SI-4(20), NIST.800-53.r5 SI-7(8)
범주: 식별 > 로깅
심각도: 중간
리소스 유형: AWS::EKS::Cluster
AWS Config 규칙: eks-cluster-log-enabled
스케줄 유형: 변경이 트리거됨
파라미터:
logTypes: audit
(사용자 지정할 수 없음)
이 제어는 Amazon EKS 클러스터에 감사 로깅이 활성화되어 있는지 여부를 확인합니다. 클러스터에 감사 로깅이 활성화되어 있지 않으면 제어가 실패합니다.
참고
이 제어는 AWS 계정에 대해 Amazon Security Lake를 통해 Amazon EKS 감사 로깅이 활성화되었는지 여부를 확인하지 않습니다.
EKS 컨트롤 플레인 로깅은 EKS 컨트롤 플레인에서 계정의 Amazon CloudWatch Logs로 감사 및 진단 로그를 직접 제공합니다. 필요한 로그 유형을 선택할 수 있으며, 로그는 CloudWatch의 각 EKS 클러스터에 대한 그룹에 로그 스트림으로 전송됩니다. 로깅은 EKS 클러스터의 액세스 및 성능에 대한 가시성을 제공합니다. EKS 클러스터의 EKS 컨트롤 플레인 로그를 CloudWatch Logs로 전송하면 중앙 위치에서 감사 및 진단 목적으로 작업을 기록할 수 있습니다.
이제 Security Hub가 와 통합되었습니다
EKS 클러스터의 감사 로그를 활성화하려면 Amazon EKS 사용 설명서의 컨트롤 플레인 로그 활성화 및 비활성화를 참조하세요.