생성된 GuardDuty 결과를 Amazon S3 버킷으로 내보내기 - Amazon GuardDuty

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

생성된 GuardDuty 결과를 Amazon S3 버킷으로 내보내기

GuardDuty 는 생성된 결과를 90일 동안 유지합니다.는 활성 결과를 Amazon EventBridge ()으로 내 GuardDuty 보냅니다EventBridge. 선택적으로 생성된 조사 결과를 Amazon S3(Amazon Simple Storage Service) 버킷으로 내보낼 수 있습니다. 이를 통해 계정에서 잠재적으로 의심스러운 활동의 기록 데이터를 추적하고 권장 수정 단계가 성공적으로 수행되었는지 평가할 수 있습니다.

에서 GuardDuty 생성하는 모든 새로운 활성 결과는 결과가 생성된 후 약 5분 이내에 자동으로 내보내집니다. 활성 결과에 대한 업데이트를 내보내는 빈도를 설정할 수 있습니다 EventBridge. 선택한 빈도는 기존 조사 결과의 새 발생을 S EventBridgeS3 버킷(구성된 경우) 및 Detective(통합된 경우)로 내보내는 데 적용됩니다. 가 기존 조사 결과의 여러 발생을 GuardDuty 집계하는 방법에 대한 자세한 내용은 섹션을 참조하세요GuardDuty 집계 결과.

Amazon S3 버킷으로 결과를 내보내도록 설정을 구성하면 (AWS KMS)를 GuardDuty AWS Key Management Service 사용하여 S3 버킷의 결과 데이터를 암호화합니다. 이렇게 하려면 S3 버킷과 AWS KMS 키에 권한을 추가해야 합니다. 그러면가 이를 사용하여 계정의 조사 결과를 내보낼 GuardDuty 수 있습니다.

고려 사항

조사 결과를 내보내기 위한 전제 조건과 단계를 진행하기 전에 다음과 같은 주요 개념을 고려하세요.

  • 내보내기 설정은 리전별입니다 - 사용하는 각 리전에서 내보내기 옵션을 구성해야 합니다 GuardDuty.

  • 조사 결과를 다른 AWS 리전 (교차 리전)의 Amazon S3 버킷으로 내보내기 -는 다음 내보내기 설정을 GuardDuty 지원합니다.

    • Amazon S3 버킷 또는 객체와 AWS KMS 키는 동일한에 속해야 합니다 AWS 리전.

    • 상업 리전에서 생성된 조사 결과의 경우, 이러한 조사 결과를 모든 상업 리전의 S3 버킷으로 내보내도록 선택할 수 있습니다. 그러나 이러한 조사 결과를 옵트인 리전에서는 S3 버킷으로 내보낼 수 없습니다.

    • 옵트인 리전에서 생성된 조사 결과의 경우 해당 조사 결과를 생성된 동일한 옵트인 리전 또는 상용 리전으로 내보낼 수 있습니다. 그러나 한 리전(리전)에서 다른 리전으로 조사 결과를 내보낼 수는 없습니다.

  • 조사 결과 내보내기 권한 - 활성 조사 결과 내보내기에 대한 설정을 구성하려면가 객체를 업로드할 수 있는 권한이 S3 버킷 GuardDuty 에 있어야 합니다. 또한 결과를 암호화하는 데 사용할 GuardDuty 수 있는 AWS KMS 키가 있어야 합니다.

  • 보관된 조사 결과는 내보내지 않음 - 억제된 조사 결과의 새 인스턴스를 포함하여 보관된 조사 결과는 내보내지 않습니다.

    GuardDuty 결과가 아카이브됨으로 생성되면 아카이브 해제해야 합니다. 이렇게 하면 조사 결과 필터링 상태가 Active로 변경됩니다. 그러면를 구성하는 방법에 따라 기존의 아카이브되지 않은 조사 결과에 대한 업데이트를 GuardDuty 내보냅니다5단계 - 조사 결과 내보내기 빈도.

  • GuardDuty 관리자 계정은 연결된 멤버 계정에서 생성된 조사 결과를 내보낼 수 있습니다. - 관리자 계정에서 결과 내보내기를 구성하면 동일한 리전에서 생성된 연결된 멤버 계정의 모든 조사 결과도 관리자 계정에 대해 구성한 것과 동일한 위치로 내보내집니다. 자세한 내용은 GuardDuty 관리자 계정과 멤버 계정 간의 관계 이해 단원을 참조하십시오.

1단계 - 조사 결과 내보내기에 필요한 권한

조사 결과 내보내기 설정을 구성할 때 조사 결과를 저장할 수 있는 Amazon S3 버킷과 데이터 암호화에 사용할 AWS KMS 키를 선택합니다. GuardDuty 작업에 대한 권한 외에도 조사 결과를 내보내도록 설정을 성공적으로 구성하려면 다음 작업에 대한 권한도 있어야 합니다.

  • s3:GetBucketLocation

  • s3:PutObject

조사 결과를 Amazon S3 버킷의 특정 접두사로 내보내야 하는 경우 IAM 역할에 다음 권한도 추가해야 합니다.

  • s3:GetObject

  • s3:ListBucket

2단계 - KMS 키에 정책 연결

GuardDuty 는를 사용하여 버킷의 조사 결과 데이터를 암호화합니다 AWS Key Management Service. 설정을 성공적으로 구성하려면 먼저 KMS 키를 사용할 수 있는 GuardDuty 권한을 부여해야 합니다. 정책을 KMS 키에 연결하여 권한을 부여할 수 있습니다.

다른 계정의 KMS 키를 사용하는 경우 키를 소유 AWS 계정 한에 로그인하여 키 정책을 적용해야 합니다. 조사 결과를 내보내도록 설정을 구성할 때 키를 소유한 계정ARN의 키도 필요합니다.

내보낸 결과를 암호화 GuardDuty 하기 위해의 KMS 키 정책을 수정하려면
  1. https://console.aws.amazon.com/kms에서 AWS KMS 콘솔을 엽니다.

  2. 를 변경하려면 페이지 오른쪽 상단의 리전 선택기를 AWS 리전사용합니다.

  3. 기존 KMS 키를 선택하거나 AWS Key Management Service 개발자 안내서에서 내보낸 결과를 암호화하는 데 사용할 새 키 생성 단계를 수행합니다.

    참고

    KMS 키와 Amazon S3 버킷 AWS 리전 의는 동일해야 합니다.

    동일한 S3 버킷 및 KMS 키 페어를 사용하여 해당 리전에서 결과를 내보낼 수 있습니다. 자세한 내용은 리전 간 조사 결과 내보내기에 대한 고려 사항를 참조하세요.

  4. Key policy(키 정책) 섹션에서 Edit(편집)를 선택합니다.

    정책 보기로 전환이 표시되면 이 옵션을 선택하여 키 정책을 표시한 다음 편집을 선택합니다.

  5. 다음 정책 블록을 KMS 키 정책에 복사하여 키를 사용할 수 있는 권한을 부여합니다 GuardDuty.

    { "Sid": "AllowGuardDutyKey", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "kms:GenerateDataKey", "Resource": "KMS key ARN", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }
  6. 정책 예제red에서 형식이 지정된 다음 값을 대체하여 정책을 편집합니다.

    1. 를 KMS 키의 Amazon 리소스 이름(ARN)KMS key ARN으로 바꿉니다. 키를 찾으려면 AWS Key Management Service 개발자 안내서의 키 ID 찾기 및 ARN 섹션을 ARN참조하세요.

    2. 를 조사 결과를 내보내는 GuardDuty 계정을 소유한 AWS 계정 ID123456789012로 바꿉니다.

    3. 를 GuardDuty 조사 결과가 생성되는 AWS 리전 Region2로 바꿉니다.

    4. 를 조사 결과가 생성된 특정 리전에 있는 GuardDuty 계정detectorIDSourceDetectorID로 바꿉니다.

      계정 및 현재 리전detectorId의를 찾으려면 https://console.aws.amazon.com/guardduty/ 콘솔의 설정 페이지를 참조하거나를 실행합니다. ListDetectors API.

    참고

    옵트인 리전 GuardDuty 에서를 사용하는 경우 "서비스" 값을 해당 리전의 리전 엔드포인트로 바꿉니다. 예를 들어 중동(바레인)(me-south-1) 리전 GuardDuty 에서를 사용하는 경우를 "Service": "guardduty.amazonaws.com"로 바꿉니다"Service": "guardduty.me-south-1.amazonaws.com". 각 옵트인 리전의 엔드포인트에 대한 자세한 내용은 GuardDuty 엔드포인트 및 할당량을 참조하세요.

  7. 최종 문 앞에 정책 문구를 추가한 경우 이 문구를 추가하기 전에 쉼표를 추가합니다. KMS 키 정책의 JSON 구문이 유효한지 확인합니다.

    저장(Save)을 선택합니다.

  8. (선택 사항) 이후 단계에서 사용할 ARN 수 있도록 키를 메모장에 복사합니다.

3단계 - Amazon S3 버킷에 정책 첨부하기

가이 S3 버킷에 객체를 업로드할 수 있도록 결과를 내보낼 Amazon S3 버킷에 권한을 추가합니다. GuardDuty 계정 또는 다른에 속하는 Amazon S3 버킷을 사용하는 AWS 계정것과 관계없이 이러한 권한을 추가해야 합니다.

어느 시점에서든 다른 S3 버킷으로 조사 결과를 내보내기로 결정한 경우, 조사 결과를 계속 내보내려면 해당 S3 버킷에 권한을 추가하고 조사 결과 내보내기 설정을 다시 구성해야 합니다.

이러한 조사 결과를 내보내려는 Amazon S3 버킷이 아직 없는 경우 Amazon S3 사용 설명서버킷 생성을 참조하세요.

S3 버킷 정책에 권한을 첨부

  1. 버킷 정책 편집 페이지가 나타날 때까지 Amazon S3 사용 설명서버킷 정책을 만들거나 편집하려면 아래의 단계를 수행합니다.

  2. 예제 정책은 조사 결과를 Amazon S3 버킷으로 내보낼 수 있는 권한을 부여하는 GuardDuty 방법을 보여줍니다. 조사 결과 내보내기를 구성한 후 경로를 변경하는 경우에는 새 위치에 권한을 부여하도록 정책을 수정해야 합니다.

    다음 예시 정책을 복사한 다음 버킷 정책 편집기에 붙여넣습니다.

    최종 문 앞에 정책 문구를 추가한 경우 이 문구를 추가하기 전에 쉼표를 추가합니다. KMS 키 정책의 JSON 구문이 유효한지 확인합니다.

    S3 버킷 예시 정책

    { "Version": "2012-10-17", "Statement": [ { "Sid": "Allow GetBucketLocation", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:GetBucketLocation", "Resource": "Amazon S3 bucket ARN", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }, { "Sid": "Allow PutObject", "Effect": "Allow", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012", "aws:SourceArn": "arn:aws:guardduty:Region2:123456789012:detector/SourceDetectorID" } } }, { "Sid": "Deny unencrypted object uploads", "Effect": "Deny", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "aws:kms" } } }, { "Sid": "Deny incorrect encryption header", "Effect": "Deny", "Principal": { "Service": "guardduty.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption-aws-kms-key-id": "KMS key ARN" } } }, { "Sid": "Deny non-HTTPS access", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "Amazon S3 bucket ARN/[optional prefix]/*", "Condition": { "Bool": { "aws:SecureTransport": "false" } } } ] }
  3. 정책 예제red에서 형식이 지정된 다음 값을 대체하여 정책을 편집합니다.

    1. 를 Amazon S3 버킷의 Amazon 리소스 이름(ARN)Amazon S3 bucket ARN으로 바꿉니다. 버킷ARNhttps://console.aws.amazon.com/s3/ 콘솔의 버킷 정책 편집 페이지에서 찾을 수 있습니다.

    2. 를 조사 결과를 내보내는 GuardDuty 계정을 소유한 AWS 계정 ID123456789012로 바꿉니다.

    3. 를 AWS 리전 GuardDuty 조사 결과가 생성되는 Region2로 바꿉니다.

    4. 를 조사 결과가 생성된 특정 리전에 있는 GuardDuty 계정detectorIDSourceDetectorID로 바꿉니다.

      계정 및 현재 리전detectorId의를 찾으려면 https://console.aws.amazon.com/guardduty/ 콘솔의 설정 페이지를 참조하거나를 실행합니다. ListDetectors API.

    5. S3 bucket ARN/[optional prefix] 자리 표시자 값의 [optional prefix] 일부를 결과를 내보낼 선택적 폴더 위치로 바꿉니다. 접두사 사용에 대한 자세한 내용은 Amazon S3 사용 설명서접두사를 사용하여 객체 구성하기를 참조하세요.

      아직 존재하지 않는 선택적 폴더 위치를 제공하면 GuardDuty 는 S3 버킷과 연결된 계정이 조사 결과를 내보내는 계정과 동일한 경우에만 해당 위치를 생성합니다. 다른 계정에 속한 S3 버킷으로 조사 결과물을 내보내는 경우 폴더 위치가 이미 존재해야 합니다.

    6. 를 S3 버킷KMS key ARN으로 내보낸 조사 결과의 암호화와 연결된 KMS 키의 Amazon 리소스 이름(ARN)으로 바꿉니다. 키를 찾으려면 AWS Key Management Service 개발자 안내서의 키 ID 찾기 및 ARN 섹션을 ARN참조하세요.

    참고

    옵트인 리전 GuardDuty 에서를 사용하는 경우 "서비스" 값을 해당 리전의 리전 엔드포인트로 바꿉니다. 예를 들어 중동(바레인)(me-south-1) 리전 GuardDuty 에서를 사용하는 경우를 "Service": "guardduty.amazonaws.com"로 바꿉니다"Service": "guardduty.me-south-1.amazonaws.com". 각 옵트인 리전의 엔드포인트에 대한 자세한 내용은 GuardDuty 엔드포인트 및 할당량을 참조하세요.

  4. 저장(Save)을 선택합니다.

4단계 - S3 버킷으로 조사 결과 내보내기(콘솔)

GuardDuty 를 사용하면 조사 결과를 다른의 기존 버킷으로 내보낼 수 있습니다 AWS 계정.

새 S3 버킷을 만들거나 계정에서 기존 버킷을 선택할 때 선택적 접두사를 추가할 수 있습니다. 내보내기 조사 결과를 구성할 때는 조사 결과에 대해 S3 버킷에 새 폴더를 GuardDuty 생성합니다. 접두사는 GuardDuty 생성한 기본 폴더 구조에 추가됩니다. 예를 들어, 선택적 접두사 /AWSLogs/123456789012/GuardDuty/Region의 형식입니다.

S3 객체의 전체 경로는 amzn-s3-demo-bucket/prefix-name/UUID.jsonl.gz 입니다. UUID는 무작위로 생성되며 감지기 ID 또는 결과 ID를 나타내지 않습니다.

중요

KMS 키와 S3 버킷이 동일한 리전에 있어야 합니다.

이 단계를 완료하기 전에 KMS 키와 기존 S3 버킷에 해당 정책을 연결했는지 확인합니다.

조사 결과 내보내기 구성
  1. 에서 GuardDuty 콘솔을 엽니다https://console.aws.amazon.com/guardduty/.

  2. 탐색 창에서 설정을 선택합니다.

  3. 설정 페이지의 조사 결과 내보내기 옵션에서 S3 버킷에 대해 지금 구성(또는 필요에 따라 편집)을 선택합니다.

  4. S3 버킷 ARN에를 입력합니다bucket ARN. 버킷을 찾으려면 Amazon S3 사용 설명서의 S3 버킷의 속성 보기를 ARN참조하세요. Amazon S3

  5. KMS 키 ARN에를 입력합니다key ARN. 키를 찾으려면 AWS Key Management Service 개발자 안내서의 키 ID 찾기 및 ARN 섹션을 ARN참조하세요.

  6. 연결 정책.
  7. 저장(Save)을 선택합니다.

5단계 - 업데이트된 활성 조사 결과 내보내기 빈도 설정하기

사용자 환경에 맞게 업데이트된 활성 검색 조사 결과를 내보내는 빈도를 구성하세요. 기본적으로 업데이트된 결과는 6시간마다 내보내집니다. 즉, 가장 최근 내보내기 이후에 업데이트된 모든 결과가 새 내보내기에 포함됩니다. 업데이트된 결과를 6시간마다 내보내고 내보내기가 12:00에 발생하는 경우 12:00 이후에 업데이트한 결과는 18:00에 내보냅니다.

빈도를 설정하려면
  1. 에서 GuardDuty 콘솔을 엽니다https://console.aws.amazon.com/guardduty/.

  2. 설정을 선택합니다.

  3. 결과 내보내기 옵션 섹션에서 결과 업데이트 빈도를 선택합니다. 이렇게 하면 업데이트된 활성 결과를 EventBridge 및 Amazon S3로 내보내는 빈도가 설정됩니다. 사용자는 다음 중에서 선택할 수 있습니다.

    • 15분마다 EventBridge 및 S3 업데이트

    • 1시간마다 EventBridge 및 S3 업데이트

    • 6시간마다 EventBridge 및 S3 업데이트(기본값)

  4. 변경 사항 저장(Save changes)을 선택합니다.