에 대한 Security Hub 제어 CloudTrail - AWS Security Hub

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에 대한 Security Hub 제어 CloudTrail

이러한 Security Hub 제어는 AWS CloudTrail 서비스와 리소스를 평가합니다.

이러한 제어는 일부만 사용할 수 있습니다 AWS 리전. 자세한 내용은 리전별 제어 기능 사용 가능 여부 단원을 참조하십시오.

[CloudTrail.1]읽기 및 쓰기 관리 이벤트를 포함하는 다중 리전 추적을 하나 이상 활성화하고 구성해야 CloudTrail 합니다.

관련 요구 사항: CIS AWS Foundations Benchmark v1.2.0/2.1, CIS AWS Foundations Benchmark v1.4.0/3.1, CIS AWS Foundations Benchmark v3.0.0/3.1, 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-14(1), 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(20), NIST.800-53.r5 SI-7(8), NIST.800-53.r5 SA-8(22)

범주: 식별 > 로깅

심각도: 높음

리소스 유형: AWS::::Account

AWS Config 규칙: multi-region-cloudtrail-enabled

스케줄 유형: 주기적

파라미터:

  • readWriteType: ALL(사용자 지정할 수 없음)

    includeManagementEvents: true(사용자 지정할 수 없음)

이 제어는 읽기 및 쓰기 관리 이벤트를 캡처하는 다중 리전 AWS CloudTrail 추적이 하나 이상 있는지 확인합니다. 이 CloudTrail 비활성화되거나 읽기 및 쓰기 관리 이벤트를 캡처하는 CloudTrail 추적이 하나 이상 없는 경우 제어가 실패합니다.

AWS CloudTrail 는 AWS API 계정에 대한 호출을 기록하고 로그 파일을 전달합니다. 기록된 정보에는 다음 정보가 포함됩니다.

  • API 호출자의 자격 증명

  • API 통화 시간

  • API 호출자의 소스 IP 주소

  • 요청 파라미터

  • 에서 반환한 응답 요소 AWS 서비스

CloudTrail 는 AWS Management Console AWS SDKs명령줄 도구인에서 수행된 호출을 포함하여 계정에 대한 API 호출 기록을 AWS API 제공합니다. 기록에는 AWS 서비스 와 같은 상위 수준의 API 호출도 포함됩니다 AWS CloudFormation.

에서 생성된 AWS API 통화 기록을 CloudTrail 통해 보안 분석, 리소스 변경 추적 및 규정 준수 감사를 수행할 수 있습니다. 다중 리전 추적에는 다음과 같은 이점이 있습니다.

  • 다중 리전 추적을 통해 사용하지 않는 리전에서 발생하는 예기치 않은 활동을 감지할 수 있습니다.

  • 다중 리전 추적으로 인해 기본적으로 추적에 글로벌 서비스 이벤트 로깅이 사용되도록 설정됩니다. 글로벌 서비스 이벤트 로깅은 AWS 글로벌 서비스에서 생성된 이벤트를 기록합니다.

  • 다중 리전 추적의 경우 모든 읽기 및 쓰기 작업에 대한 관리 이벤트는의 모든 리소스에 대한의 관리 작업을 CloudTrail 기록합니다 AWS 계정.

기본적으로를 사용하여 생성된 CloudTrail 추적은 다중 리전 추적 AWS Management Console 입니다.

문제 해결

에서 새 다중 리전 추적을 생성하려면 AWS CloudTrail 사용 설명서추적 생성을 CloudTrail참조하세요. 다음 값을 사용합니다.

필드

추가 설정, 로그 파일 검증

활성화됨

로그 이벤트, 관리 이벤트, API 활동 선택

읽기쓰기. 제외 확인란을 선택 취소합니다.

기존 추적을 업데이트하려면 AWS CloudTrail 사용 안내서추적 업데이트를 참조하세요. 관리 이벤트API 활동에서 읽기쓰기를 선택합니다.

[CloudTrail.2]저장 시 암호화가 활성화되어 CloudTrail 있어야 합니다.

관련 요구 사항: PCI DSS v3.2.1/3.4, CIS AWS Foundations Benchmark v1.2.0/2.7, CIS AWS Foundations Benchmark v1.4.0/3.7, CIS AWS Foundations Benchmark v3.0.0/3.5, NIST.800-53.r5 AU-9, NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-13, NIST.800-53.r5 SC-28, NIST.800-53.r5 SC-28(1), NIST.800-53.r5 SC-7(10), NIST.800-53.r5 SI-7(6), PCI DSS v4.0.1/10.3.2

범주: 보호 > 데이터 보호 > 암호화 data-at-rest

심각도: 중간

리소스 유형: AWS::CloudTrail::Trail

AWS Config 규칙: cloud-trail-encryption-enabled

스케줄 유형: 주기적

파라미터: 없음

이 제어 CloudTrail 는이 서버 측 암호화(SSE) AWS KMS key 암호화를 사용하도록 구성되어 있는지 확인합니다. KmsKeyId가 정의되지 않은 경우, 제어가 실패합니다.

민감한 CloudTrail 로그 파일에 대한 보안 계층을 추가하려면 저장 시 암호화를 위해 로그 파일에 AWS KMS keys (SSE-KMS)를 사용하는 서버 측 암호화를 사용해야 합니다. CloudTrail 기본적으로에서 버킷 CloudTrail 으로 전송되는 로그 파일은 Amazon S3-managed형 암호화 키(-SSE-S3)를 사용한 Amazon 서버 측 암호화로 암호화됩니다.

문제 해결

CloudTrail 로그 파일에 대해 SSE-KMS 암호화를 활성화하려면 AWS CloudTrail 사용 설명서 KMS 키를 사용하도록 추적 업데이트를 참조하세요.

[CloudTrail.3] 하나 이상의 CloudTrail 추적을 활성화해야 합니다.

관련 요구 사항: PCI DSS v3.2.1/10.1, PCI DSS v3.2.1/10.2.1, PCI DSS v3.2.1/10.2.2, PCI DSS v3.2PCIDSS.1/10.2.3, v3.2.1/10.2.4, PCI DSS v3.2.1/10.2.5, PCI DSS v10.2.6PCIDSS3.2.1/10.2.7, PCI DSS v3.2.1/10.3.1, PCI DSS v3.2.1/10.3.2, PCI DSS v3.2.1/10.3.3, PCI DSS v3.2.1/10.3.4, PCI DSS v3.2.1/10.3.5, PCI DSS v3.2.1/, v3.2.1/10.3.6, PCI DSS v4.0.1/10.2.1

범주: 식별 > 로깅

심각도: 높음

리소스 유형: AWS::::Account

AWS Config 규칙: cloudtrail-enabled

스케줄 유형: 주기적

파라미터: 없음

이 제어는에서 AWS CloudTrail 추적이 활성화되어 있는지 확인합니다 AWS 계정. 계정에 하나 이상의 CloudTrail 추적이 활성화되어 있지 않으면 제어가 실패합니다.

그러나 일부 AWS 서비스는 모든 APIs 및 이벤트의 로깅을 활성화하지 않습니다. 이외의 추가 감사 추적을 구현 CloudTrail 하고 CloudTrail 지원되는 서비스 및 통합의 각 서비스에 대한 설명서를 검토해야 합니다.

문제 해결

를 시작하고 추적을 CloudTrail 생성하려면 AWS CloudTrail 사용 설명서시작하기 AWS CloudTrail 자습서를 참조하세요.

[CloudTrail.4] CloudTrail 로그 파일 검증을 활성화해야 합니다.

관련 요구 사항: PCI DSS v3.2.1/10.5.2, PCI DSS v3.2.1/10.5.5, CIS AWS Foundations Benchmark v1.2.0/2.2, CIS AWS Foundations Benchmark v1.4.0/3.2, CIS AWS Foundations Benchmark v3.0.0/3.2, NIST.800-53.r5 AU-9, NIST.800-53.r5 SI-4, NIST.800-53.r5 SI-7(1), NIST.800-53.r5 SI-7(3), NIST.800-53.r5 SI-7(7), PCI DSS v4.0.1/10.3.2

범주: 데이터 보호 > 데이터 무결성

심각도: 낮음

리소스 유형: AWS::CloudTrail::Trail

AWS Config 규칙: cloud-trail-log-file-validation-enabled

스케줄 유형: 주기적

파라미터: 없음

이 제어는 추적에서 로그 파일 무결성 검증이 CloudTrail 활성화되어 있는지 확인합니다.

CloudTrail 로그 파일 검증은 Amazon S3에 CloudTrail 쓰는 각 로그의 해시가 포함된 디지털 서명 다이제스트 파일을 생성합니다. 이러한 다이제스트 파일을 사용하여 로그를 CloudTrail 전송한 후 로그 파일이 변경, 삭제 또는 변경되지 않았는지 확인할 수 있습니다.

Security Hub에서는 모든 추적에 대해 파일 검증을 활성화할 것을 권장합니다. 로그 파일 검증은 CloudTrail 로그에 대한 추가 무결성 검사를 제공합니다.

문제 해결

CloudTrail 로그 파일 검증을 활성화하려면 AWS CloudTrail 사용 설명서의에 대한 로그 파일 무결성 검증 활성화 CloudTrail를 참조하세요.

[CloudTrail.5] CloudTrail 트레일은 Amazon CloudWatch Logs와 통합되어야 합니다.

관련 요구 사항: PCI DSS v3.2.1/10.5.3, CIS AWS Foundations Benchmark v1.2.0/2.4, CIS AWS Foundations Benchmark v1.4.0/3.4, 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(1), NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-6(5), NIST.800-53.r5 AU-7(1), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-20, NIST.800-53.r5 SI-3(8), NIST.800-53.r5 SI-4(20), NIST.800-53.r5 SI-4(5), NIST.800-53.r5 SI-7(8)

범주: 식별 > 로깅

심각도: 낮음

리소스 유형: AWS::CloudTrail::Trail

AWS Config 규칙: cloud-trail-cloud-watch-logs-enabled

스케줄 유형: 주기적

파라미터: 없음

이 제어는 CloudTrail 추적이 CloudWatch 로그로 로그를 전송하도록 구성되어 있는지 확인합니다. 추적의 CloudWatchLogsLogGroupArn 속성이 비어 있으면 제어가 실패합니다.

CloudTrail 는 지정된 계정에서 수행된 호출을 기록합니다 AWS API. 기록된 정보에는 다음이 포함됩니다.

  • API 호출자의 자격 증명

  • API 통화 시간

  • API 호출자의 소스 IP 주소

  • 요청 파라미터

  • 에서 반환하는 응답 요소 AWS 서비스

CloudTrail 는 로그 파일 저장 및 전송에 Amazon S3를 사용합니다. 장기 분석을 위해 지정된 S3 버킷에서 CloudTrail 로그를 캡처할 수 있습니다. 실시간 분석을 수행하려면 로그를 로그로 전송 CloudTrail 하도록를 구성할 수 CloudWatch 있습니다.

계정의 모든 리전에서 활성화된 추적의 경우는 해당 모든 리전의 로그 파일을 CloudWatch 로그 로그 그룹으로 CloudTrail 보냅니다.

Security Hub는 CloudTrail 로그를 CloudWatch 로그로 전송하는 것을 권장합니다. 참고로 이 권장 사항은 계정 활동을 캡처, 모니터링하고, 적절하게 경보를 받을 수 있도록 하기 위한 것입니다. CloudWatch 로그를 사용하여에서 이를 설정할 수 있습니다 AWS 서비스. 이 권장 사항은 다른 솔루션의 사용을 배제하지 않습니다.

CloudTrail 로그를 CloudWatch 로그로 전송하면 사용자, , API리소스 및 IP 주소를 기반으로 실시간 및 기록 활동 로깅이 용이해집니다. 이 접근 방식을 사용하여 비정상적이거나 민감한 계정 활동에 대한 경보 및 알림을 설정할 수 있습니다.

문제 해결

CloudWatch 로그 CloudTrail 와 통합하려면 AWS CloudTrail 사용 설명서 CloudWatch 로그로 이벤트 전송을 참조하세요.

[CloudTrail.6] CloudTrail 로그를 저장하는 데 사용되는 S3 버킷에 공개적으로 액세스할 수 없는지 확인합니다.

관련 요구 사항: CIS AWS Foundations Benchmark v1.2.0/2.3, CIS AWS Foundations Benchmark v1.4.0/3.3, PCI DSS v4.0.1/1.4.4

범주: 식별 > 로깅

심각도: 심각

리소스 유형: AWS::S3::Bucket

AWS Config 규칙: 없음(사용자 지정 Security Hub 규칙)

스케줄 유형: 주기적이며 변경이 트리거됨

파라미터: 없음

CloudTrail 는 계정에서 수행된 모든 API 통화의 레코드를 기록합니다. 이러한 로그 파일은 S3 버킷에 저장됩니다. 에서는 CloudTrail 로그에 대한 퍼블릭 액세스를 방지하기 위해 CloudTrail 로그하는 S3 버킷에 S3 버킷 S3 정책 또는 액세스 제어 목록(ACL)을 적용할 것을 CIS 권장합니다. CloudTrail 로그 콘텐츠에 대한 퍼블릭 액세스를 허용하면 공격자가 영향을 받는 계정의 사용 또는 구성에서 약점을 식별하는 데 도움이 될 수 있습니다.

이 검사를 실행하기 위해 Security Hub는 먼저 사용자 지정 로직을 사용하여 CloudTrail 로그가 저장되는 S3 버킷을 찾습니다. 그런 다음 AWS Config 관리형 규칙을 사용하여 버킷에 공개적으로 액세스할 수 있는지 확인합니다.

로그를 단일 중앙 집중식 S3 버킷으로 집계하는 경우, Security Hub는 중앙 집중식 S3 버킷이 있는 계정 및 리전에 대해서만 검사를 실행합니다. 기타 계정 및 리전의 경우, 제어 상태는 데이터 없음입니다.

버킷에 공개적으로 액세스할 수 있는 경우, 검사는 실패한 조사 결과를 생성합니다.

문제 해결

CloudTrail S3 버킷에 대한 퍼블릭 액세스를 차단하려면 Amazon Simple Storage Service 사용 설명서 S3 버킷에 대한 퍼블릭 액세스 차단 설정 구성을 참조하세요. 4가지 Amazon S3 Block Public Access 설정을 모두 선택합니다.

[CloudTrail.7] S3 버킷에서 CloudTrail S3 버킷 액세스 로깅이 활성화되어 있는지 확인

관련 요구 사항: CIS AWS Foundations Benchmark v1.2.0/2.6, CIS AWS Foundations Benchmark v1.4.0/3.6, CIS AWS Foundations Benchmark v3.0.0/3.4, PCI DSS v4.0.1/10.2.1

범주: 식별 > 로깅

심각도: 낮음

리소스 유형: AWS::S3::Bucket

AWS Config 규칙: 없음(사용자 지정 Security Hub 규칙)

스케줄 유형: 주기적

파라미터: 없음

S3 버킷 액세스 로깅은 S3 버킷에 대한 각 요청에 대한 액세스 기록이 포함된 로그를 생성합니다. 액세스 로그 레코드에는 요청 유형, 요청과 관련된 리소스, 요청 처리 날짜/시간과 같은 요청 세부 정보가 포함됩니다.

CIS 에서는 CloudTrail S3 버킷에서 버킷 액세스 로깅을 활성화할 것을 권장합니다.

대상 S3 버킷에서 S3 버킷 로깅을 활성화하면 대상 버킷의 객체에 영향을 미칠 수 있는 모든 이벤트를 캡처할 수 있습니다. 별도 버킷에 배치할 로그를 구성하면 로그 정보에 대한 액세스가 활성화되어 보안 및 인시던트 대응 워크플로에 유용할 수 있습니다.

이 검사를 실행하기 위해 Security Hub는 먼저 사용자 지정 로직을 사용하여 CloudTrail 로그가 저장되는 버킷을 찾은 다음 AWS Config 관리형 규칙을 사용하여 로깅이 활성화되어 있는지 확인합니다.

가 여러의 로그 파일을 단일 대상 Amazon S3 버킷 AWS 계정 으로 CloudTrail 전송하는 경우 Security Hub는 해당 파일이 위치한 리전의 대상 버킷에 대해서만이 제어를 평가합니다. 이렇게 하면 조사 결과가 간소화됩니다. 그러나 대상 버킷에 로그를 전달하는 모든 계정 CloudTrail 에서를 켜야 합니다. 대상 버킷을 보유한 계정을 제외한 모든 계정의 제어 상태는 데이터 없음입니다.

문제 해결

CloudTrail S3 버킷에 대한 서버 액세스 로깅을 활성화하려면 Amazon Simple Storage Service 사용 설명서의 Amazon S3 서버 액세스 로깅 활성화를 참조하세요.

[CloudTrail.9] CloudTrail 트레일에는 태그를 지정해야 합니다.

범주: 식별 > 인벤토리 > 태그 지정

심각도: 낮음

리소스 유형: AWS::CloudTrail::Trail

AWS Config 규칙: tagged-cloudtrail-trail (사용자 지정 Security Hub 규칙)

스케줄 유형: 변경이 트리거됨

파라미터:

파라미터 설명 형식 허용된 사용자 지정 값 Security Hub 기본값
requiredTagKeys 평가된 리소스에 포함되어야 하는 비시스템 태그 키 목록입니다. 태그 키는 대소문자를 구별합니다. StringList AWS 요구 사항을 충족하는 태그 목록 No default value

이 제어는 AWS CloudTrail 추적에 파라미터에 정의된 특정 키가 있는 태그가 있는지 확인합니다requiredTagKeys. 추적에 태그 키가 없거나 파라미터 requiredTagKeys에 지정된 모든 키가 없는 경우, 제어가 실패합니다. 파라미터 requiredTagKeys이 제공되지 않은 경우, 제어는 태그 키의 존재만 확인하고 서비스에 추적에 키로 태그가 지정되지 않은 경우 제어가 실패합니다. 자동으로 적용되고 aws:로 시작하는 시스템 태그는 무시됩니다.

태그는 AWS 리소스에 할당하는 레이블이며 키와 선택적 값으로 구성됩니다. 태그를 생성하여 용도, 소유자, 환경 또는 기타 기준으로 리소스를 분류할 수 있습니다. 태그를 사용하면 리소스를 식별, 정리, 검색 및 필터링하는 데 도움을 줍니다. 태그 지정은 또한 작업 및 알림에 대한 책임 리소스 소유자를 추적하는 데도 도움이 됩니다. 태그 지정을 사용하는 경우 속성 기반 액세스 제어(ABAC)를 태그를 기반으로 권한을 정의하는 권한 부여 전략으로 구현할 수 있습니다. IAM 엔터티(사용자 또는 역할) 및 AWS 리소스에 태그를 연결할 수 있습니다. 보안 IAM 주체에 대해 단일 ABAC 정책 또는 별도의 정책 세트를 생성할 수 있습니다. 보안 주체의 태그가 리소스 태그와 일치할 때 작업을 허용하도록 이러한 ABAC 정책을 설계할 수 있습니다. 자세한 내용은 IAM 사용 설명서AWS의 ABAC 용도를 참조하세요.

참고

개인 식별 정보(PII) 또는 기타 기밀 또는 민감한 정보를 태그에 추가하지 마세요. 태그를 AWS 서비스비롯한 많은 사용자가 태그를 액세스할 수 있습니다 AWS Billing. 자세한 태그 지정 모범 사례는의 AWS 리소스 태그 지정을 참조하세요AWS 일반 참조.

문제 해결

CloudTrail 추적에 태그를 추가하려면 AWS CloudTrail API 참조AddTags의 섹션을 참조하세요.