선택적 최상위 속성 - AWS Security Hub

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

선택적 최상위 속성

이러한 최상위 속성은 AWS 보안 탐지 형식 (ASFF) 에서 선택 사항입니다. 이러한 속성에 대한 자세한 내용은 AWS Security Hub API 참조를 참조하십시오 AwsSecurityFinding.

Action

Action 객체는 리소스에 영향을 주거나 리소스에 대해 취해진 작업에 대한 세부 정보를 제공합니다.

"Action": { "ActionType": "PORT_PROBE", "PortProbeAction": { "PortProbeDetails": [ { "LocalPortDetails": { "Port": 80, "PortName": "HTTP" }, "LocalIpDetails": { "IpAddressV4": "192.0.2.0" }, "RemoteIpDetails": { "Country": { "CountryName": "Example Country" }, "City": { "CityName": "Example City" }, "GeoLocation": { "Lon": 0, "Lat": 0 }, "Organization": { "AsnOrg": "ExampleASO", "Org": "ExampleOrg", "Isp": "ExampleISP", "Asn": 64496 } } } ], "Blocked": false } }

AwsAccountName

검색 결과가 적용되는 AWS 계정 이름.

"AwsAccountName": "jane-doe-testaccount"

CompanyName

결과를 생성한 제품의 회사 이름입니다. 통제 기반 조사 결과의 경우 회사는 다음과 같습니다. AWS

Security Hub는 각 결과에 대해 이 속성을 자동으로 채웁니다. BatchImportFindings 또는 BatchUpdateFindings를 사용하여 업데이트할 수 없습니다. 사용자 지정 통합을 사용하는 경우는 예외입니다. 사용자 지정 제품 통합을 사용하여 AWS Security Hub에 결과 전송을 참조하십시오.

Security Hub 콘솔을 사용하여 회사 이름을 기준으로 조사 결과를 필터링할 때는 이 속성을 사용합니다. Security Hub API를 사용하여 조사 결과를 제품 이름별로 필터링할 때는 ProductFields 아래의 aws/securityhub/CompanyName 속성을 사용합니다. Security Hub는 이러한 두 속성을 동기화하지 않습니다.

"CompanyName": "AWS"

Compliance

Compliance 객체는 제어와 관련된 검색 세부 정보를 제공합니다. 이 속성은 Security Hub 컨트롤에서 생성된 검색 결과와 Security Hub로 AWS Config 보내는 검색 결과에 대해 반환됩니다.

"Compliance": { "AssociatedStandards": [ {"StandardsId": "standards/aws-foundational-security-best-practices/v/1.0.0"}, {"StandardsId": "standards/service-managed-aws-control-tower/v/1.0.0"}, {"StandardsId": "standards/nist-800-53/v/5.0.0"} ], "RelatedRequirements": [ "NIST.800-53.r5 AC-4", "NIST.800-53.r5 AC-4(21)", "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(21)", "NIST.800-53.r5 SC-7(4)", "NIST.800-53.r5 SC-7(5)" ], "SecurityControlId": "EC2.18", "SecurityControlParameters":[ { "Name": "authorizedTcpPorts", "Value": ["80", "443"] }, { "Name": "authorizedUdpPorts", "Value": ["427"] } ], "Status": "NOT_AVAILABLE", "StatusReasons": [ { "ReasonCode": "CONFIG_RETURNS_NOT_APPLICABLE", "Description": "This finding has a compliance status of NOT AVAILABLE because AWS Config sent Security Hub a finding with a compliance state of Not Applicable. The potential reasons for a Not Applicable finding from Config are that (1) a resource has been moved out of scope of the Config rule; (2) the Config rule has been deleted; (3) the resource has been deleted; or (4) the logic of the Config rule itself includes scenarios where Not Applicable is returned. The specific reason why Not Applicable is returned is not available in the Config rule evaluation." } ] }

신뢰도

결과가 식별하고자 하는 동작이나 문제를 정확하게 식별할 가능성입니다.

ConfidenceBatchUpdateFindings를 사용해서만 업데이트해야 합니다.

Confidence에 대한 값을 입력하고자 하는 결과 공급자는 FindingProviderFields 아래의 Confidence 속성을 사용해야 합니다. FindingProviderFields 사용하기를 참조하십시오.

Confidence는 비율 척도를 사용하여 0~100점으로 채점됩니다. 0은 0% 신뢰도를 의미하고, 100은 100% 신뢰도를 의미합니다. 예를 들어 실제 유출이 확인되지 않았기 때문에 네트워크 트래픽의 통계적 편차를 기반으로 한 데이터 유출 감지는 신뢰도가 낮습니다.

"Confidence": 42

중요도

결과와 관련된 리소스에 할당된 중요도 수준입니다.

CriticalityBatchUpdateFindings API 작업을 호출해서만 업데이트해야 합니다. BatchImportFindings로 이 객체를 업데이트하지 마십시오.

Criticality에 대한 값을 입력하고자 하는 결과 공급자는 FindingProviderFields 아래의 Criticality 속성을 사용해야 합니다. FindingProviderFields 사용하기을 참조하십시오.

Criticality는 정수만 지원하는 비율 척도를 사용하여 0~100점을 기준으로 점수가 부여됩니다. 0점은 기본 리소스에 중요성이 없음을 의미하며 100점은 가장 중요한 리소스에 예약됩니다.

각 리소스에 Criticality을 할당할 때는 다음 사항을 고려하십시오.

  • 영향을 받는 리소스에 민감한 데이터(예: PII가 있는 S3 버킷)가 포함되어 있습니까?

  • 영향을 받는 리소스에서 악의적 공격자가 더 깊이 액세스하거나 또 다른 악의적 활동(예: 시스템 관리자 계정 공격)을 수행할 가능성이 확대될 수 있습니까?

  • 리소스가 비즈니스에 중요한 자산(예: 손상될 경우 수익에 상당한 영향을 미칠 수 있는 핵심 비즈니스 시스템)입니까?

다음 지침을 적용할 수 있습니다.

  • 미션 크리티컬 시스템을 지원하거나 매우 민감한 데이터를 포함하는 리소스는 75~100점 범위에서 점수를 매길 수 있습니다.

  • 중요한(핵심적이지는 않은) 데이터를 지원하거나 다소 중요한 데이터를 포함하는 리소스는 25~74점 범위에서 점수를 매길 수 있습니다.

  • 중요하지 않은 시스템을 지원하거나 중요하지 않은 데이터를 포함하는 리소스는 반드시 0~24점 범위로 점수를 매겨야 합니다.

"Criticality": 99

FindingProviderFields

FindingProviderFields에는 다음 속성이 포함될 수 있습니다.

  • Confidence

  • Criticality

  • RelatedFindings

  • Severity

  • Types

BatchImportFindings API 작업을 사용하여 FindingProviderFields을 업데이트할 수 있습니다. 이를 BatchUpdateFindings으로 업데이트할 수 없습니다.

Security Hub에서 BatchImportFindings에서 FindingProviderFields로의 업데이트와 해당 최상위 속성을 처리하는 방법에 대한 자세한 내용은 FindingProviderFields 사용하기을 참조하십시오.

"FindingProviderFields": { "Confidence": 42, "Criticality": 99, "RelatedFindings":[ { "ProductArn": "arn:aws:securityhub:us-west-2::product/aws/guardduty", "Id": "123e4567-e89b-12d3-a456-426655440000" } ], "Severity": { "Label": "MEDIUM", "Original": "MEDIUM" }, "Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ] }

FirstObservedAt

결과로 캡처된 잠재적 보안 문제가 처음 발견된 시기를 나타냅니다.

이 타임스탬프는 이벤트 또는 취약성이 처음 관찰된 시간을 반영합니다. 따라서 이 결과 레코드가 생성된 시간을 반영하는 CreatedAt 타임스탬프와 다를 수 있습니다.

이 타임스탬프는 결과 레코드의 업데이트 시에도 변하지 않아야 하지만, 보다 정확한 타임스탬프가 결정되면 업데이트할 수 있습니다.

"FirstObservedAt": "2017-03-22T13:22:13.933Z"

LastObservedAt

조사 결과로 캡처된 잠재적 보안 문제가 보안 조사 결과 제품에 의해 가장 최근에 발견된 시기를 나타냅니다.

이 타임스탬프는 이벤트 또는 취약성이 마지막으로 또는 가장 최근에 관찰된 시간을 반영합니다. 따라서 이 검색 결과 레코드가 마지막으로 업데이트된 시점 또는 가장 최근에 업데이트된 시점을 반영하는 UpdatedAt 타임스탬프와 다를 수 있습니다.

이 타임스탬프를 입력할 수는 있지만 최초 관찰 시 필수적이지는 않습니다. 처음 관찰 시 이 필드를 입력하는 경우 타임스탬프는 FirstObservedAt 타임스탬프와 동일해야 합니다. 결과가 관찰될 때마다 마지막으로 또는 가장 최근에 관찰된 타임스탬프를 반영하여 이 필드를 업데이트해야 합니다.

"LastObservedAt": "2017-03-23T13:22:13.933Z"

Malware

Malware 객체는 결과와 관련된 악성코드 목록을 제공합니다.

"Malware": [ { "Name": "Stringler", "Type": "COIN_MINER", "Path": "/usr/sbin/stringler", "State": "OBSERVED" } ]

Network(사용 중지)

Network 객체는 결과에 대한 네트워크 관련 정보를 제공합니다.

이 객체는 사용 중지되었습니다. 이 데이터를 입력하려면 데이터를 Resources의 리소스에 매핑하거나 Action 객체를 사용할 수 있습니다.

"Network": { "Direction": "IN", "OpenPortRange": { "Begin": 443, "End": 443 }, "Protocol": "TCP", "SourceIpV4": "1.2.3.4", "SourceIpV6": "FE80:CD00:0000:0CDE:1257:0000:211E:729C", "SourcePort": "42", "SourceDomain": "example1.com", "SourceMac": "00:0d:83:b1:c0:8e", "DestinationIpV4": "2.3.4.5", "DestinationIpV6": "FE80:CD00:0000:0CDE:1257:0000:211E:729C", "DestinationPort": "80", "DestinationDomain": "example2.com" }

NetworkPath

NetworkPath 객체는 결과와 관련된 네트워크 경로에 대한 정보를 제공합니다. NetworkPath의 각 항목은 경로의 구성 요소를 나타냅니다.

"NetworkPath" : [ { "ComponentId": "abc-01a234bc56d8901ee", "ComponentType": "AWS::EC2::InternetGateway", "Egress": { "Destination": { "Address": [ "192.0.2.0/24" ], "PortRanges": [ { "Begin": 443, "End": 443 } ] }, "Protocol": "TCP", "Source": { "Address": ["203.0.113.0/24"] } }, "Ingress": { "Destination": { "Address": [ "198.51.100.0/24" ], "PortRanges": [ { "Begin": 443, "End": 443 } ] }, "Protocol": "TCP", "Source": { "Address": [ "203.0.113.0/24" ] } } } ]

참고

Note 객체는 검색 결과에 추가할 수 있는 사용자 정의 메모를 지정합니다.

결과 공급자는 검색 결과에 대한 초기 메모를 입력할 수 있지만 그 후에 메모를 추가할 수는 없습니다. 메모는 BatchUpdateFindings를 사용해서만 업데이트할 수 있습니다.

"Note": { "Text": "Don't forget to check under the mat.", "UpdatedBy": "jsmith", "UpdatedAt": "2018-08-31T00:15:09Z" }

PatchSummary

PatchSummary 객체는 선택한 규정 준수 표준을 기준으로 인스턴스의 패치 규정 준수 상태를 요약하여 제공합니다.

"PatchSummary" : { "FailedCount" : 0, "Id" : "pb-123456789098", "InstalledCount" : 100, "InstalledOtherCount" : 1023, "InstalledPendingReboot" : 0, "InstalledRejectedCount" : 0, "MissingCount" : 100, "Operation" : "Install", "OperationEndTime" : "2018-09-27T23:39:31Z", "OperationStartTime" : "2018-09-27T23:37:31Z", "RebootOption" : "RebootIfNeeded" }

프로세스

Process 객체는 결과에 대한 프로세스 관련 세부 정보를 제공합니다.

예제

"Process": { "LaunchedAt": "2018-09-27T22:37:31Z", "Name": "syslogd", "ParentPid": 56789, "Path": "/usr/sbin/syslogd", "Pid": 12345, "TerminatedAt": "2018-09-27T23:37:31Z" }

ProcessedAt

Security Hub가 결과를 수신하고 처리를 시작하는 시기를 나타냅니다.

이는 결과 공급자와 보안 문제 및 결과의 상호 작용과 관련된 필수 타임스탬프인 CreatedAtUpdatedAt과 다릅니다. ProcessedAt 타임스탬프는 Security Hub가 결과를 처리하기 시작하는 시기를 나타냅니다. 처리가 완료된 후 사용자 계정에 결과가 나타납니다.

"ProcessedAt": "2023-03-23T13:22:13.933Z"

ProductFields

보안 탐지 결과 제품이 정의된 AWS 보안 검색 결과 형식에 속하지 않는 추가 솔루션별 세부 정보를 포함할 수 있는 데이터 유형입니다.

Security Hub 제어에서 생성된 조사 결과의 경우 제어에 대한 정보가 ProductFields에 포함됩니다. 제어 조사 결과 생성 및 업데이트을 참조하십시오.

이 필드는 중복 데이터를 포함해서는 안 되며 AWS 보안 검색 결과 형식 필드와 충돌하는 데이터를 포함해서는 안 됩니다.

aws/" 접두사는 AWS 제품 및 서비스용으로만 예약된 네임스페이스를 나타내며 타사 통합 결과를 포함하여 제출해서는 안 됩니다.

필수는 아니지만 제품은 필드 이름의 형식을 company-id/product-id/field-name으로 지정해야 합니다. 여기서 company-idproduct-id는 결과의 ProductArn에 입력된 것과 일치합니다.

Archival을 참조하는 필드는 Security Hub가 기존 결과를 보관할 때 사용됩니다. 예를 들어 Security Hub는 제어 또는 표준을 비활성화할 때와 통합 제어 조사 결과를 켜거나 끌 때 기존 조사 결과를 보관합니다.

이 필드에는 결과를 생성한 제어를 포함하는 표준에 대한 정보도 포함될 수 있습니다.

"ProductFields": { "API", "DeleteTrail", "ArchivalReasons:0/Description": "The finding is in an ARCHIVED state because consolidated control findings has been turned on or off. This causes findings in the previous state to be archived when new findings are being generated.", "ArchivalReasons:0/ReasonCode": "CONSOLIDATED_CONTROL_FINDINGS_UPDATE", "aws/inspector/AssessmentTargetName": "My prod env", "aws/inspector/AssessmentTemplateName": "My daily CVE assessment", "aws/inspector/RulesPackageName": "Common Vulnerabilities and Exposures", "generico/secure-pro/Action.Type", "AWS_API_CALL", "generico/secure-pro/Count": "6", "Service_Name": "cloudtrail.amazonaws.com" }

ProductName

결과를 생성한 제품의 이름을 입력합니다. 제어 기반 조사 결과의 경우 제품 이름은 Security Hub입니다.

Security Hub는 각 결과에 대해 이 속성을 자동으로 채웁니다. BatchImportFindings 또는 BatchUpdateFindings를 사용하여 업데이트할 수 없습니다. 사용자 지정 통합을 사용하는 경우는 예외입니다. 사용자 지정 제품 통합을 사용하여 AWS Security Hub에 결과 전송을 참조하십시오.

Security Hub 콘솔을 사용하여 제품 이름을 기준으로 조사 결과를 필터링할 때는 이 속성을 사용합니다.

Security Hub API를 사용하여 조사 결과를 제품 이름별로 필터링할 때는 ProductFields 아래의 aws/securityhub/ProductName 속성을 사용합니다.

Security Hub는 이러한 두 속성을 동기화하지 않습니다.

RecordState

결과의 레코드 상태를 입력합니다.

기본적으로 서비스에서 처음 생성된 조사 결과는 ACTIVE로 간주됩니다.

ARCHIVED 상태는 결과를 보기에서 숨겨야 함을 나타냅니다. 보관된 조사 결과는 즉시 삭제되지 않습니다. 이를 검색, 검토 및 보고할 수 있습니다. Security Hub는 연결된 리소스가 삭제되거나, 리소스가 존재하지 않거나, 제어가 비활성화된 경우 제어 기반 조사 결과를 자동으로 보관합니다.

RecordState는 결과 공급자를 찾기 위한 것으로, BatchImportFindings를 통해서만 업데이트할 수 있습니다. BatchUpdateFindings를 사용하여 업데이트할 수 없습니다.

결과에 대한 조사 상태를 추적하려면 RecordState 대신 Workflow를 사용하십시오.

레코드 상태가 ARCHIVED에서 ACTIVE로 변경되고 결과의 워크플로 상태가 NOTIFIED 또는 RESOLVED 인 경우 Security Hub는 자동으로 워크플로 상태를 NEW로 설정합니다.

"RecordState": "ACTIVE"

지역

검색 결과가 생성된 AWS 리전 출처를 지정합니다.

Security Hub는 각 결과에 대해 이 속성을 자동으로 채웁니다. BatchImportFindings 또는 BatchUpdateFindings를 사용하여 업데이트할 수 없습니다.

"Region": "us-west-2"

RelatedFindings

현재 조사 결과와 관련된 조사 결과 목록을 입력합니다.

RelatedFindingsBatchUpdateFindings API 작업으로만 업데이트해야 합니다. BatchImportFindings로 이 객체를 업데이트하면 안 됩니다.

BatchImportFindings 요청의 경우 결과 공급자는 FindingProviderFields 아래의 RelatedFindings 객체를 사용해야 합니다.

RelatedFindings 속성 설명을 보려면 AWS Security Hub API 참조RelatedFinding를 참조하십시오.

"RelatedFindings": [ { "ProductArn": "arn:aws:securityhub:us-west-2::product/aws/guardduty", "Id": "123e4567-e89b-12d3-a456-426655440000" }, { "ProductArn": "arn:aws:securityhub:us-west-2::product/aws/guardduty", "Id": "AcmeNerfHerder-111111111111-x189dx7824" } ]

이제 Security Hub가 와 통합되었습니다

Remediation 객체는 결과를 처리하기 위해 권장되는 문제 해결 단계에 대한 정보를 제공합니다.

"Remediation": { "Recommendation": { "Text": "For instructions on how to fix this issue, see the AWS Security Hub documentation for EC2.2.", "Url": "https://docs.aws.amazon.com/console/securityhub/EC2.2/remediation" } }

Sample

결과가 샘플 결과인지 여부를 지정합니다.

"Sample": true

SourceUrl

SourceUrl 객체는 결과 제품의 현재 결과에 대한 페이지로 연결되는 URL을 제공합니다.

"SourceUrl": "http://sourceurl.com"

ThreatIntelIndicators

ThreatIntelIndicator 객체는 결과와 관련된 위협 인텔리전스 세부 정보를 제공합니다.

"ThreatIntelIndicators": [ { "Category": "BACKDOOR", "LastObservedAt": "2018-09-27T23:37:31Z", "Source": "Threat Intel Weekly", "SourceUrl": "http://threatintelweekly.org/backdoors/8888", "Type": "IPV4_ADDRESS", "Value": "8.8.8.8", } ]

Threats

Threats 객체는 결과로 탐지된 위협에 대한 세부 정보를 제공합니다.

"Threats": [{ "FilePaths": [{ "FileName": "b.txt", "FilePath": "/tmp/b.txt", "Hash": "sha256", "ResourceId": "arn:aws:ec2:us-west-2:123456789012:volume/vol-032f3bdd89aee112f" }], "ItemCount": 3, "Name": "Iot.linux.mirai.vwisi", "Severity": "HIGH" }]

UserDefinedFields

결과와 연관된 이름/값 문자열 페어의 목록을 입력합니다. 이는 결과에 추가되는 사용자 정의 필드입니다. 이러한 필드는 특정 구성을 통해 자동으로 생성될 수 있습니다.

결과 공급자는 제품이 생성하는 데이터에 이 필드를 사용해서는 안 됩니다. 대신 검색 제공자는 표준 AWS 보안 검색 결과 형식 ProductFields 필드에 매핑되지 않는 데이터에 대해 이 필드를 사용할 수 있습니다.

이 필드는 BatchUpdateFindings를 사용해서만 업데이트할 수 있습니다.

"UserDefinedFields": { "reviewedByCio": "true", "comeBackToLater": "Check this again on Monday" }

VerificationState

결과의 진실성을 입력합니다. 조사 결과 제품은 이 필드에 UNKNOWN 값을 입력할 수 있습니다. 조사 결과 제품의 시스템에 의미 있는 유사점이 있는 경우 조사 결과 제품은 이 필드의 값을 입력해야 합니다. 이 필드는 일반적으로 사용자가 결과를 조사한 이후의 사용자 결정 또는 작업으로 채워집니다.

검색 공급자는 이 속성의 초기 값을 입력할 수 있지만 그 이후에는 업데이트할 수 없습니다. 이 속성은 BatchUpdateFindings를 사용해서만 업데이트할 수 있습니다.

"VerificationState": "Confirmed"

취약성

Vulnerabilities 객체는 결과와 관련된 취약성 목록을 제공합니다.

"Vulnerabilities" : [ { "CodeVulnerabilities": [{ "Cwes": [ "CWE-798", "CWE-799" ], "FilePath": { "EndLine": 421, "FileName": "package-lock.json", "FilePath": "package-lock.json", "StartLine": 420 }, "SourceArn":"arn:aws:lambda:us-east-1:123456789012:layer:AWS-AppConfig-Extension:114" }], "Cvss": [ { "BaseScore": 4.7, "BaseVector": "AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N", "Version": "V3" }, { "BaseScore": 4.7, "BaseVector": "AV:L/AC:M/Au:N/C:C/I:N/A:N", "Version": "V2" } ], "EpssScore": 0.015, "ExploitAvailable": "YES", "FixAvailable": "YES", "Id": "CVE-2020-12345", "LastKnownExploitAt": "2020-01-16T00:01:35Z", "ReferenceUrls":[ "http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12418", "http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17563" ], "RelatedVulnerabilities": ["CVE-2020-12345"], "Vendor": { "Name": "Alas", "Url":"https://alas.aws.amazon.com/ALAS-2020-1337.html", "VendorCreatedAt":"2020-01-16T00:01:43Z", "VendorSeverity":"Medium", "VendorUpdatedAt":"2020-01-16T00:01:43Z" }, "VulnerablePackages": [ { "Architecture": "x86_64", "Epoch": "1", "FilePath": "/tmp", "FixedInVersion": "0.14.0", "Name": "openssl", "PackageManager": "OS", "Release": "16.amzn2.0.3", "Remediation": "Update aws-crt to 0.14.0", "SourceLayerArn": "arn:aws:lambda:us-west-2:123456789012:layer:id", "SourceLayerHash": "sha256:c1962c35b63a6ff6ce7df6e042ee82371a605ca9515569edec46ff14f926f001", "Version": "1.0.2k" } ] } ]

워크플로

Workflow 객체는 결과 조사 상태에 대한 정보를 제공합니다.

이 필드는 고객이 수정, 오케스트레이션 및 티켓 작성 도구와 함께 사용하기 위한 것입니다. 결과 공급자를 위한 용도는 아닙니다.

BatchUpdateFindings를 사용하여 Workflow 필드를 업데이트할 수만 있습니다. 고객은 콘솔에서 업데이트할 수도 있습니다. 조사 결과에 대한 워크플로 상태 설정을 참조하십시오.

"Workflow": { "Status": "NEW" }

WorkflowState (사용 중지)

이 객체는 사용 중지되었으며 Workflow 객체의 Status 필드로 대체되었습니다.

이 필드는 결과의 워크플로 상태를 제공합니다. 조사 결과 제품은 이 필드에 NEW 값을 입력할 수 있습니다. 조사 결과 제품의 시스템에 의미 있는 유사점이 있는 경우 조사 결과 제품은 이 필드의 값을 입력할 수 있습니다.

"WorkflowState": "NEW"