AWS 기술 블로그

Security Hub CSPM 자동화 규칙을 Security Hub로 마이그레이션

이 글은 AWS Security 블로그에 게시된 글 (Security Hub CSPM automation rule migration to Security Hub)을 한국어로 번역 및 편집하였습니다.

새로운 버전의 AWS Security Hub가 정식 출시되었습니다. 이 버전은 Amazon Web Services(AWS) 계정 전반의 보안 경고를 집계, 상관관계 분석 및 컨텍스트화하는 새로운 기능을 제공합니다. 이전 버전은 이제 AWS Security Hub CSPM으로 알려져 있으며 클라우드 보안 태세 관리 및 조사 결과 집계에 초점을 맞춘 별도의 서비스로 계속 제공될 예정입니다.

두 서비스 모두에서 사용 가능한 기능 중 하나는 자동화 규칙입니다. Security Hub와 Security Hub CSPM 모두에서 자동화 규칙을 사용하여 정의된 기준이 충족될 때 조사 결과 필드를 자동으로 업데이트할 수 있습니다. Security Hub에서는 자동화 규칙을 통해 운영 대응을 위해 조사 결과를 타사 플랫폼으로 전송할 수 있습니다. 기존 Security Hub CSPM 사용자 중 상당수는 프로덕션 리소스에 영향을 미치는 조사 결과의 심각도를 높이거나 복구 워크플로를 지원하기 위해 주석을 추가하는 등의 작업을 위한 자동화 규칙을 보유하고 있습니다. 두 서비스 모두 유사한 자동화 규칙 기능을 제공하지만, 규칙은 두 서비스 간에 동기화되지 않습니다. 기존 Security Hub CSPM 고객 중 새로운 Security Hub를 도입하려는 경우, 이미 구축된 자동화 규칙을 마이그레이션하는 데 관심이 있을 수 있습니다. 이렇게 하면 자동화 규칙 처리가 새로운 버전의 Security Hub에서 이루어지도록 할 수 있습니다. 이 기능은 현재 Security Hub Essentials 플랜에 포함되어 있습니다. 최신 가격 정보는 Security Hub 가격 페이지를 참조하십시오.

이 게시물에서는 Security Hub CSPM에서 Security Hub로 자동화 규칙을 자동으로 마이그레이션하는 솔루션을 제공하여 새로운 Security Hub 기능을 활용하면서 보안 자동화 워크플로를 유지할 수 있도록 지원합니다. 현재 자동화 규칙을 사용하지 않고 시작하려는 경우 Security Hub의 자동화 규칙 문서를 참조하세요.

자동화 규칙 마이그레이션 과제

Security Hub CSPM은 AWS Security Finding Format(ASFF)을 조사 결과의 스키마로 사용합니다. 이 스키마는 자동화 규칙이 생성된 조사 결과에 적용되는 방식의 핵심입니다. 자동화 규칙은 하나 이상의 기준을 정의한 후, 지정된 기준이 충족될 때 적용될 하나 이상의 작업을 선택하는 것으로 시작합니다. 각 기준은 ASFF 필드, 연산자(예: equals 또는 contains) 및 값을 지정합니다. 그런 다음 작업은 하나 이상의 ASFF 필드를 업데이트합니다.

새로운 버전의 Security Hub는 AWS와 사이버보안 업계 파트너들이 지원하는 널리 채택된 오픈소스 스키마인 Open Cybersecurity Schema Framework(OCSF)를 사용합니다. Security Hub 자동화 규칙은 구조적으로 Security Hub CSPM 규칙과 동일하게 작동합니다. 그러나 기본 스키마 변경으로 인해 기존 자동화 규칙을 변환해야 합니다.

이 게시물에서 제공하는 솔루션은 Security Hub CSPM 자동화 규칙을 자동으로 검색하고, 이를 OCSF 스키마로 변환한 다음, 새 버전의 Security Hub가 실행되는 AWS 계정에 배포하는 데 사용할 수 있는 AWS CloudFormation 템플릿을 생성합니다. ASFF와 OCSF 스키마 간의 근본적인 차이로 인해 일부 규칙은 자동으로 마이그레이션할 수 없으며, 마이그레이션 후 수동 검토가 필요한 규칙도 있습니다.

다음 표는 ASFF에서 기준으로 지원되는 필드와 해당 OCSF 필드 간의 현재 매핑을 보여줍니다. 이러한 매핑은 향후 서비스 릴리스에서 변경될 수 있습니다. N/A로 표시된 필드는 마이그레이션할 수 없으며 자동화 규칙을 마이그레이션할 때 특별한 고려가 필요합니다. 이러한 필드는 새로운 버전의 Security Hub에서 재설계해야 합니다. 이 게시물에서 제공하는 해결 방법은 하나 이상의 ASFF 기준이 OCSF 필드에 매핑되지 않는 규칙의 마이그레이션을 건너뛰도록 설계되었지만, 검토를 위해 보고서에서 해당 규칙을 식별합니다.

Rule criterion in ASFF Corresponding OCSF field
AwsAccountId cloud.account.uid
AwsAccountName cloud.account.name
CompanyName metadata.product.vendor_name
ComplianceAssociatedStandardsId compliance.standards
ComplianceSecurityControlId compliance.control
ComplianceStatus compliance.status
Confidence confidence_score
CreatedAt finding_info.created_time
Criticality N/A
Description finding_info.desc
FirstObservedAt finding_info.first_seen_time
GeneratorId N/A
Id finding_info.uid
LastObservedAt finding_info.last_seen_time
NoteText comment
NoteUpdatedAt N/A
NoteUpdatedBy N/A
ProductArn metadata.product.uid
ProductName metadata.product.name
RecordState activity_name
RelatedFindingsId N/A
RelatedFindingsProductArn N/A
ResourceApplicationArn N/A
ResourceApplicationName N/A
ResourceDetailsOther N/A
ResourceId resources[x].uid
ResourcePartition resources[x].cloud_partition
ResourceRegion resources[x].region
ResourceTags resources[x].tags
ResourceType resources[x].type
SeverityLabel vendor_attributes.severity
SourceUrl finding_info.src_url
Title finding_info.title
Type finding_info.types
UpdatedAt finding_info.modified_time
UserDefinedFields N/A
VerificationState N/A
WorkflowStatus status

다음 표는 ASFF에서 액션으로 지원되는 필드와 해당 OCSF 필드를 보여줍니다. 일부 액션 필드는 OCSF에서 사용할 수 없습니다.

Rule action fields in ASFF Corresponding OCSF field
Confidence N/A
Criticality N/A
Note Comment
RelatedFindings N/A
Severity Severity
Types N/A
UserDefinedFields N/A
VerificationState N/A
Workflow Status Status

OCSF에서 대응하는 작업이 없는 Security Hub CSPM 자동화 규칙의 경우, 이 솔루션은 규칙을 마이그레이션하되 지원되는 작업만 포함하도록 설계되었습니다. 이러한 규칙은 규칙 설명과 마이그레이션 보고서에서 partially migrated 으로 표시됩니다. 이 정보를 사용하여 규칙을 활성화하기 전에 검토하고 수정하여 새 자동화 규칙이 예상대로 작동하는지 확인할 수 있습니다.

솔루션 개요

이 솔루션은 Security Hub CSPM에서 새로운 Security Hub로 자동화 규칙을 마이그레이션하는 데 도움이 되도록 설계된 Python 스크립트 세트를 제공합니다. 마이그레이션 프로세스는 다음과 같습니다.

  1. 마이그레이션 시작(Begin migration): 솔루션은 세 개의 하위 스크립트를 시작하고 적절한 입력값을 전달하는 오케스트레이션 스크립트를 제공합니다.
  2. 검색(Discovery): 솔루션은 Security Hub CSPM 환경을 스캔하여 지정된 AWS 리전에서 기존 자동화 규칙을 식별하고 수집합니다.
  3. 분석(Analysis): 각 규칙은 ASFF에서 OCSF 필드 매핑 호환성을 기반으로 완전 마이그레이션, 부분 마이그레이션 또는 수동 개입이 필요한지 평가됩니다.
  4. 변환(Transformation): 호환 가능한 규칙은 사전 정의된 필드 매핑을 사용하여 ASFF 스키마에서 OCSF 스키마로 자동 변환됩니다.
  5. 템플릿 생성(Template creation): 솔루션은 변환된 규칙을 포함하는 CloudFormation 템플릿을 생성하며, 규칙의 원래 순서와 이전 컨텍스트를 유지합니다.
  6. 배포(Deployment): 생성된 템플릿을 검토하고 배포하여 Security Hub에서 마이그레이션된 규칙을 생성합니다. 규칙은 기본적으로 비활성화 상태로 생성됩니다.
  7. 규칙 검증 및 활성화(Validate and enable rules): AWS Security Hub 관리 콘솔에서 마이그레이션된 각 규칙을 검토하여 기준, 작업을 확인하고, 해당하는 경우 현재 일치하는 조사 결과를 미리 확인합니다. 각 규칙이 개별적으로 그리고 순차적으로 의도한 대로 작동하는지 확인한 후, 규칙을 활성화하여 자동화 워크플로를 재개합니다.

그림 1: 스크립트와 AWS와의 상호 작용 방식을 보여주는 아키텍처 다이어그램

그림 1에 나와 있는 솔루션은 자동화 규칙을 마이그레이션하기 위해 함께 작동하는 네 개의 Python 스크립트로 구성됩니다.

  1. 오케스트레이터(Orchestrator): 검색, 변환 및 생성과 함께 보고 및 로깅을 조정합니다
  2. 규칙 검색(Rule discovery): 지정한 리전에서 Security Hub CSPM의 기존 자동화 규칙을 식별하고 추출합니다
  3. 스키마 변환(Schema transformation): 앞서 설명한 필드 매핑을 사용하여 규칙을 ASFF에서 OCSF 형식으로 변환합니다
  4. 템플릿 생성(Template generation): 마이그레이션된 규칙을 배포하는 데 사용할 수 있는 CloudFormation 템플릿을 생성합니다

스크립트는 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 구성된 자격 증명을 사용하여 기존 Security Hub 자동화 규칙을 검색합니다. AWS CLI를 사용하여 자격 증명을 구성하는 방법에 대한 자세한 내용은 AWS CLI 설정을 참조하세요.

필수 조건

솔루션을 실행하기 전에 다음 구성 요소와 권한이 준비되어 있는지 확인하십시오.

  • 필수 소프트웨어
    • AWS CLI (최신 버전)
    • Python 3.12 이상
    • Python 패키지:
      • boto3 (최신 버전)
      • pyyaml (최신 버전)
  • 필수 권한
    규칙 검색 및 변환용:

    • securityhub:ListAutomationRules
    • securityhub:BatchGetAutomationRules
    • securityhub:GetFindingAggregator
    • securityhub:DescribeHub
    • securityhub:ListAutomationRulesV2

템플릿 배포용:

    • cloudformation:CreateStack
    • cloudformation:UpdateStack
    • cloudformation:DescribeStacks
    • cloudformation:CreateChangeSet
    • cloudformation:DescribeChangeSet
    • cloudformation:ExecuteChangeSet
    • cloudformation:GetTemplateSummary
    • securityhub:CreateAutomationRuleV2
    • securityhub:UpdateAutomationRuleV2
    • securityhub:DeleteAutomationRuleV2
    • securityhub:GetAutomationRuleV2
    • securityhub:TagResource
    • securityhub:ListTagsForResource

AWS 계정 구성

Security Hub는 AWS Organizations와 함께 사용할 때 위임된 관리자 계정 모델을 지원합니다. 이 위임된 관리자 계정은 조직의 모든 멤버 계정에서 보안 조사 결과 및 서비스 구성 관리를 중앙 집중식으로 관리합니다. 자동화 규칙은 홈 리전과 연결되지 않은 리전 모두에서 위임된 관리자 계정으로 생성해야 합니다. 멤버 계정은 자체적으로 자동화 규칙을 생성할 수 없습니다.

일관된 보안 관리를 유지하기 위해 Security Hub CSPM과 Security Hub에 동일한 계정을 위임된 관리자로 사용하는 것을 권장합니다. 마이그레이션 솔루션을 실행하기 전에 이 위임된 관리자 계정의 자격 증명으로 AWS CLI를 구성하십시오(자세한 내용은 AWS CLI 설정 참조).

이 솔루션은 주로 위임된 관리자 배포를 위해 설계되었지만, 단일 계정 Security Hub 구현도 지원합니다.

주요 마이그레이션 개념

Security Hub CSPM에서 Security Hub로 자동화 규칙을 마이그레이션하기 전에, 규칙 마이그레이션 및 배포 방식에 영향을 미치는 몇 가지 핵심 개념을 이해하는 것이 중요합니다. 이러한 개념은 마이그레이션 프로세스와 규칙의 동작 방식에 영향을 미칩니다. 따라서 마이그레이션 전략을 수립하고 결과를 효과적으로 검증하는 데 도움이 됩니다.

기본 규칙 상태

기본적으로 마이그레이션된 규칙은 DISABLED 상태로 생성되며, 이는 조사 결과가 생성 될 때 작업이 적용되지 않음을 의미합니다. 솔루션에서 선택적으로 ENABLED 상태로 규칙을 생성할 수도 있지만 이는 권장되지 않습니다. 대신 규칙을 DISABLED 상태로 생성하고 각 규칙을 검토한 후 일치하는 조사 결과를 미리 보고 준비가 되면 규칙을 ENABLED 상태로 전환하십시오.

지원되지 않는 필드

마이그레이션 보고서에는 새 Security Hub에서 지원하지 않는 Security Hub CSPM 기준이 하나 이상 포함되어 있어 마이그레이션할 수 없는 규칙이 자세히 표시됩니다. 이러한 경우는 ASFF와 OCSF 스키마 간의 차이로 인해 발생합니다. 이러한 규칙은 동일한 동작으로 자동 복제할 수 없으므로 특별한 주의가 필요합니다. 특히 우선순위에 따라 작동하는 Security Hub CSPM 규칙이 있는 경우 더욱 중요합니다.

규칙에 지원되지 않는 작업이 포함되어 있더라도, 하나 이상의 작업이 지원되는 경우 해당 규칙은 마이그레이션됩니다. 부분적으로 지원되는 작업이 포함된 규칙은 마이그레이션 보고서와 새 자동화 규칙 설명에 표시되므로 검토해야 합니다.

홈 및 연결된 지역

Security Hub CSPM과 Security Hub 모두 연결된 리전에서 생성된 조사 결과를 집계하는 홈 리전을 지원합니다. 그러나 자동화 규칙의 동작 방식은 다릅니다. Security Hub CSPM의 자동화 규칙은 리전 단위로 작동합니다. 즉, 규칙이 생성된 리전에서 발생한 조사 결과에만 영향을 미칩니다. 홈 리전을 사용하더라도 Security Hub CSPM의 자동화 규칙은 홈 리전에서 집계된 연결된 리전의 조사 결과에는 적용되지 않습니다. Security Hub는 홈 리전에서 정의하고 모든 연결된 리전에 적용하는 자동화 규칙을 지원하지만, 연결된 리전에서 자동화 규칙을 생성하는 것은 지원하지 않습니다. 하지만 Security Hub에서는 연결되지 않은 리전에서도 해당 리전에서 생성된 조사 결과에만 영향을 미치는 자체 자동화 규칙을 설정할 수 있습니다. 연결되지 않은 리전에는 자동화 규칙을 별도로 적용해야 합니다.

이 솔루션은 이러한 차이점을 처리하기 위해 두 가지 배포 모드를 지원합니다. 첫 번째 모드인 Home Region 모드는 홈 리전이 활성화된 Security Hub 배포에 사용해야 합니다. 이 모드는 지정된 리전에서 Security Hub CSPM 자동화 규칙을 식별한 다음, 규칙이 생성된 리전을 고려하는 추가 기준을 적용하여 규칙을 다시 생성합니다. 그런 다음 홈 리전에 배포할 수 있는 CloudFormation 템플릿 하나가 생성됩니다. 원래 규칙이 생성된 리전에 대한 기준이 추가되었으므로 자동화 규칙은 의도한 대로 작동합니다.

두 번째 모드는 Region-by-Region 모드입니다. 이 모드는 현재 홈 지역을 사용하지 않는 사용자를 위한 것입니다. 이 모드에서도 솔루션은 지정된 지역에서 자동화 규칙을 검색하지만, 각 지역별로 고유한 CloudFormation 템플릿을 생성합니다. 생성된 템플릿은 해당 지역의 위임된 관리자 계정에 하나씩 배포할 수 있습니다. 이 모드에서는 자동화 규칙에 추가적인 기준이 추가되지 않습니다.

Security Hub에서 홈 리전을 사용하고 일부 리전만 연결할 수 있습니다. 이 경우 홈 리전과 연결된 모든 리전에 대해 Home Region 모드로 실행하십시오. 그런 다음 연결되지 않은 모든 리전에 대해 Region-by-Region 모드로 솔루션을 다시 실행합니다.

규칙 순서

Security Hub CSPM과 Security Hub 자동화 규칙 모두 평가 순서가 있습니다. 이는 서로 다른 자동화 규칙이 동일한 조사 결과에 적용되거나 동일한 필드에 대해 작업을 수행해야 하는 특정 상황에서 중요할 수 있습니다. 이 솔루션은 자동화 규칙의 원래 순서를 유지합니다.

기존 Security Hub 자동화 규칙이 있는 경우, 솔루션은 기존 규칙 다음에 새로운 자동화 규칙을 생성합니다. 예를 들어, Security Hub 자동화 규칙이 3개 있고 새 규칙 10개를 마이그레이션하는 경우, 솔루션은 새 규칙에 4번째부터 13번째까지의 순서를 할당합니다.

홈 리전 모드를 사용하면 각 리전의 자동화 규칙 순서가 유지되고 최종 순서로 함께 그룹화됩니다. 예를 들어, 서로 다른 세 리전에 세 개의 Security Hub 자동화 규칙이 있는 사용자가 규칙을 마이그레이션하는 경우 순차적으로 마이그레이션됩니다. 솔루션은 먼저 리전 1의 모든 규칙을 원래 순서대로 마이그레이션한 다음, 리전 2의 모든 규칙을 원래 순서대로 마이그레이션하고 마지막으로 리전 3의 모든 규칙을 원래 순서대로 마이그레이션합니다.

마이그레이션 배포 및 검증

이제 필요한 사전 준비를 마치고 기본 개념을 이해했으므로 마이그레이션을 배포하고 검증할 준비가 되었습니다.

마이그레이션을 배포하려면:

1. AWS sample GitHub repository에서 Security Hub 자동화 규칙 마이그레이션 도구를 복제합니다.

git clone https://github.com/aws-samples/sample-SecurityHub-Automation-Rule-Migration.git

2. 최신 구현 지침이 포함된 README 파일의 지침에 따라 스크립트를 실행합니다. 이렇게 하면 새로운 Security Hub 자동화 규칙을 생성하는 CloudFormation 템플릿이 생성됩니다. AWS CLI 또는 콘솔을 사용하여 CloudFormation 템플릿을 배포합니다. 자세한 내용은 CloudFormation 콘솔에서 스택 생성 또는 README 파일을 참조하세요.

배포가 완료되면 보안 허브 콘솔을 사용하여 마이그레이션된 자동화 규칙을 검토할 수 있습니다. 규칙은 기본적으로 DISABLED 상태로 생성된다는 점에 유의하십시오. 각 규칙의 기준과 작업을 주의 깊게 검토하여 의도한 자동화 워크플로와 일치하는지 확인하십시오. 콘솔에서 각 자동화 규칙과 일치하는 기존 검색 결과를 미리 볼 수도 있습니다.

마이그레이션된 규칙을 검토하고 검증하려면:

1. Security Hub 콘솔로 이동하여 탐색 창에서 자동화를 선택합니다.

그림 2: 보안 허브 자동화 페이지

2. 규칙을 선택한 다음 페이지 상단의 편집을 선택합니다.

그림 3: 보안 허브 자동화 규칙 세부 정보

3. [일치하는 조사 결과 미리 보기]를 선택합니다. 자동화 규칙이 예상대로 작동하는 경우에도 조사 결과가 반환되지 않을 수 있습니다. 이는 현재 Security Hub에서 규칙 기준과 일치하는 조사 결과가 없음을 의미합니다. 이 경우에도 규칙 기준을 검토할 수 있습니다.

그림 4: 보안 허브 자동화 규칙 편집 페이지

4. 규칙 구성의 유효성을 검사한 후 콘솔의 규칙 편집 페이지에서 해당 규칙을 활성화할 수 있습니다. CloudFormation 스택을 업데이트할 수도 있습니다. 자동화 규칙의 기준이나 작업을 변경할 필요가 없는 경우, 선택적 플래그인 --create-enabled를 사용하여 스크립트를 다시 실행하면 모든 규칙이 활성화된 CloudFormation 템플릿이 생성되어 기존 스택에 업데이트로 배포할 수 있습니다.

각 규칙의 설명에 표시된 것처럼 일부 작업이 마이그레이션된 규칙이 있는지 주의 깊게 살펴보십시오. 이는 Security Hub CSPM의 원래 규칙에 있는 하나 이상의 작업이 Security Hub에서 지원되지 않으며 규칙이 의도한 것과 다르게 동작할 수 있음을 의미합니다. 솔루션은 부분적으로 마이그레이션된 규칙과 원래 규칙에서 마이그레이션할 수 없었던 작업을 명시하는 마이그레이션 보고서를 생성합니다. 이러한 규칙은 예상과 다르게 동작할 수 있으므로 수정하거나 다시 생성해야 할 수 있으므로 주의 깊게 검토하십시오.

그림 5: 부분적으로 마이그레이션된 자동화 규칙의 설명 검토

결론

새로운 AWS Security Hub는 보안 조사 결과를 집계, 상관관계 분석 및 컨텍스트화하는 향상된 기능을 제공합니다. ASFF에서 OCSF로의 스키마 변경으로 상호 운용성과 통합 옵션이 개선되었지만, 기존 자동화 규칙을 마이그레이션해야 합니다. 이 게시물에서 제공하는 솔루션은 기존 규칙을 검색하고, 새 스키마로 변환하고, 규칙 순서와 리전 컨텍스트를 유지하는 CloudFormation 템플릿을 생성하여 마이그레이션 프로세스를 자동화하는 데 도움을 줍니다.

자동화 규칙을 마이그레이션한 후에는 마이그레이션 보고서를 검토하여 완전히 마이그레이션되지 않은 규칙이 있는지 확인하십시오. 특히 부분적으로 마이그레이션된 규칙은 원래 버전과 다르게 동작할 수 있으므로 주의해야 합니다. 각 규칙을 비활성화한 상태에서 테스트하고, 특히 동일한 필드를 사용하는 규칙들이 예상대로 함께 작동하는지 확인한 후 환경에서 활성화하는 것을 권장드립니다.

Security Hub 및 향상된 기능에 대한 자세한 내용은 Security Hub 사용자 가이드를 참조하십시오.

Dongsoo Shin

Dongsoo Shin

신동수 Security Consultant는 다양한 고객들이 AWS 클라우드를 보다 안전하게 활용할 수 있도록 최적의 클라우드 보안 환경 구성을 지원하고 있습니다. 특히 인증 및 인가, 암/복호화, 위협 탐지 및 사고 대응 분야에 관심을 가지고 지속적으로 학습하며, 고객이 원하는 보안 성과를 달성할 수 있도록 전문적인 지원을 제공하고 있습니다.