了解 Security Hub 中的自動化規則 - AWS Security Hub

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

了解 Security Hub 中的自動化規則

您可以使用自動化規則自動更新 中的調查結果 AWS Security Hub。擷取調查結果時,Security Hub 可以套用各種規則動作,例如隱藏調查結果、變更其嚴重性以及新增備註。此類規則動作會修改符合您指定條件的調查結果。

自動化規則的使用案例範例包括:

  • CRITICAL 如果調查結果的資源 ID 參考業務關鍵資源,則將調查結果的嚴重性提升為 。

  • CRITICAL 如果調查結果影響特定生產帳戶中的資源,則將調查結果的嚴重性從 提升HIGH為 。

  • 指派具有INFORMATIONALSUPPRESSED工作流程狀態嚴重性的特定調查結果。

您只能從 Security Hub 管理員帳戶建立和管理自動化規則。

規則同時適用於新的調查結果和更新的調查結果。您可以從頭開始建立自訂規則,或使用 Security Hub 提供的規則範本。您也可以從範本開始,並視需要修改範本。

定義規則條件和規則動作

從 Security Hub 管理員帳戶,您可以透過定義一或多個規則條件和一或多個規則動作 來建立自動化規則。當調查結果符合定義的條件時,Security Hub 會將規則動作套用至它。如需可用條件和動作的詳細資訊,請參閱 可用的規則條件和規則動作

Security Hub 目前支援每個管理員帳戶最多 100 個自動化規則。

Security Hub 管理員帳戶也可以編輯、檢視和刪除自動化規則。規則適用於管理員帳戶及其所有成員帳戶中的相符調查結果。透過提供成員帳戶IDs作為規則條件,Security Hub 管理員還可以使用自動化規則來更新或隱藏特定成員帳戶中的調查結果。

自動化規則僅適用於建立該規則 AWS 區域 的 。若要在多個區域中套用規則,管理員必須在每個區域中建立規則。這可以透過 Security Hub 主控台、Security Hub API或 來完成AWS CloudFormation。您也可以使用多區域部署指令碼

可用的規則條件和規則動作

目前支援下列 AWS 安全調查結果格式 (ASFF) 欄位作為自動化規則的條件:

ASFF 欄位 篩選條件 欄位類型
AwsAccountId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
AwsAccountName CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
CompanyName CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ComplianceAssociatedStandardsId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ComplianceSecurityControlId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ComplianceStatus Is, Is Not 選取:【FAILEDNOT_AVAILABLEPASSEDWARNING
Confidence Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
CreatedAt Start, End, DateRange 日期 (格式為 2022-12-01T21:47:39.269Z)
Criticality Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
Description CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
FirstObservedAt Start, End, DateRange 日期 (格式為 2022-12-01T21:47:39.269Z)
GeneratorId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
Id CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
LastObservedAt Start, End, DateRange 日期 (格式為 2022-12-01T21:47:39.269Z)
NoteText CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
NoteUpdatedAt Start, End, DateRange 日期 (格式為 2022-12-01T21:47:39.269Z)
NoteUpdatedBy CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ProductArn CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ProductName CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
RecordState CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
RelatedFindingsId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
RelatedFindingsProductArn CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourceApplicationArn CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourceApplicationName CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourceDetailsOther CONTAINS, EQUALS, NOT_CONTAINS, NOT_EQUALS Map
ResourceId CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourcePartition CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourceRegion CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
ResourceTags CONTAINS, EQUALS, NOT_CONTAINS, NOT_EQUALS Map
ResourceType Is, Is Not 選取 (請參閱 支援的資源ASFF)
SeverityLabel Is, Is Not 選取:【CRITICALHIGHMEDIUMLOWINFORMATIONAL
SourceUrl CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
Title CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
Type CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
UpdatedAt Start, End, DateRange 日期 (格式為 2022-12-01T21:47:39.269Z)
UserDefinedFields CONTAINS, EQUALS, NOT_CONTAINS, NOT_EQUALS Map
VerificationState CONTAINS, EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS 字串
WorkflowStatus Is, Is Not 選取:【NEWNOTIFIEDRESOLVEDSUPPRESSED

對於標記為字串欄位的條件,在相同欄位上使用不同的篩選條件運算子會影響評估邏輯。如需詳細資訊,請參閱 StringFilterAWS Security Hub API參考 中。

每個條件都支援可用於篩選相符調查結果的最大值。如需每個條件的限制,請參閱 AutomationRulesFindingFiltersAWS Security Hub API參考 中。

目前支援下列ASFF欄位作為自動化規則的動作:

  • Confidence

  • Criticality

  • Note

  • RelatedFindings

  • Severity

  • Types

  • UserDefinedFields

  • VerificationState

  • Workflow

如需特定ASFF欄位的詳細資訊,請參閱AWS 安全調查結果格式 (ASFF) 語法ASFF範例

提示

如果您想要 Security Hub 停止產生特定控制項的調查結果,建議您停用控制項,而不是使用自動化規則。當您停用控制項時,Security Hub 會停止對其執行安全檢查,並停止為其產生調查結果,因此您不會為此控制項產生費用。建議使用自動化規則來變更符合定義條件之調查結果的特定ASFF欄位值。如需停用控制項的詳細資訊,請參閱 在 Security Hub 中啟用控制項

自動化規則評估的調查結果

自動化規則會評估 Security Hub 透過 產生或擷取的新調查結果和更新後的調查結果 BatchImportFindings 操作。Security Hub 每 12-24 小時或相關資源變更狀態時更新控制調查結果。如需詳細資訊,請參閱執行安全檢查的排程

自動化規則會評估原始供應商提供的調查結果。提供者可以透過 Security Hub BatchImportFindings的操作提供新的調查結果並更新現有的調查結果API。當您在透過 建立規則之後更新調查結果欄位時,不會觸發規則 BatchUpdateFindings 操作。如果您建立自動化規則並BatchUpdateFindings更新兩者都會影響相同的調查結果欄位,則上次更新會設定該欄位的值。採取下列範例:

  1. 您可以使用 將調查結果Workflow.Status的欄位從 BatchUpdateFindings更新NEWNOTIFIED

  2. 如果您呼叫 GetFindingsWorkflow.Status欄位現在的值為 NOTIFIED

  3. 您可以建立自動化規則,將調查結果Workflow.Status的欄位從 NEW 變更為 SUPPRESSED(請回憶規則忽略使用 所做的更新BatchUpdateFindings)。

  4. 調查結果提供者使用 BatchImportFindings更新調查結果,並將 Workflow.Status 欄位變更為 NEW

  5. 如果您呼叫 GetFindingsWorkflow.Status 欄位現在的值為 ,SUPPRESSED因為已套用自動化規則,而該規則是對調查結果採取的最後動作。

當您在 Security Hub 主控台上建立或編輯規則時,主控台會顯示符合規則條件的調查結果預覽。雖然自動化規則會評估調查結果提供者傳送的原始調查結果,但主控台預覽會反映其最終狀態的調查結果,如回應 中所示 GetFindings API 操作 (亦即,在規則動作或其他更新套用至調查結果之後)。

規則順序的運作方式

建立自動化規則時,您會為每個規則指派一個順序。這決定 Security Hub 套用自動化規則的順序,並在多個規則與相同的調查結果或調查結果欄位相關聯時變得重要。

當多個規則動作與相同的調查結果或調查結果欄位相關時,規則順序的數值最高的規則最後套用,並具有最終效果。

當您在 Security Hub 主控台中建立規則時,Security Hub 會根據規則建立的順序自動指派規則順序。最近建立的規則具有規則順序的最低數值,因此會先套用。Security Hub 會以遞增順序套用後續規則。

當您透過 Security Hub API或 建立規則時 AWS CLI,Security Hub 會先套用具有最低數值的規則RuleOrder。然後,它會以遞增順序套用後續規則。如果多個調查結果具有相同的 RuleOrder,Security Hub 會先為 UpdatedAt 欄位套用具有較早值的規則 (也就是說,最近編輯的規則最後套用)。

您可以隨時修改規則順序。

規則順序範例

規則 A (規則順序為 1

  • 規則 A 條件

    • ProductName = Security Hub

    • Resources.TypeS3 Bucket

    • Compliance.Status = FAILED

    • RecordStateNEW

    • Workflow.Status = ACTIVE

  • 規則 A 動作

    • 更新Confidence95

    • 更新SeverityCRITICAL

規則 B (規則順序為 2

  • 規則 B 條件

    • AwsAccountId = 123456789012

  • 規則 B 動作

    • 更新SeverityINFORMATIONAL

規則 A 動作會先套用至符合規則 A 條件的 Security Hub 調查結果。接下來,規則 B 動作適用於具有指定帳戶 ID 的 Security Hub 調查結果。在此範例中,由於規則 B 上次套用,因此來自指定帳戶 ID 之調查結果Severity中的 結束值為 INFORMATIONAL。根據規則 A 動作,相符調查結果Confidence中的 結束值為 95