Regras de automação no Security Hub - AWS Security Hub

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Regras de automação no Security Hub

nota

O Security Hub está em versão prévia e está sujeito a alterações.

Com o Security Hub, você pode automatizar tarefas como atualizar detalhes de busca e criar tickets para integrações de terceiros.

Regras de automação e Regiões da AWS

As regras de automação podem ser criadas em uma Região da AWS e depois aplicadas em todas as configuradas Regiões da AWS. Ao usar a agregação de regiões, você só pode criar regras na região de origem. Ao criar regras na região de origem, qualquer regra que você definir é aplicada a todas as regiões vinculadas, a menos que seus critérios de regra excluam uma região vinculada específica. Você deve criar uma regra de automação para qualquer região que não seja uma região vinculada.

Ações e critérios de regras

As regras de automação no Security Hub usam critérios para referenciar atributos OCSF nas descobertas do Security Hub. Por exemplo, os filtros suportados para o Criteria parâmetro em CreateAutomationRuleV2correspondem aos filtros suportados para o Criteria parâmetro em GetFindingsV2. Isso significa que os filtros usados nas regras de automação podem ser usados para obter descobertas. O Security Hub suporta os seguintes campos OCSF para critérios de regras de automação.

Campo OCSF Valor do filtro do console Operadores de filtro Tipo de campo
activity_name Activity name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
class_name Finding class name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
cloud.account.uid Account ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
cloud.provider Cloud provider EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
cloud.region Region EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
comment Comment EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
compliance.assessments.category Assessment category EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
compliance.assessments.name Assessment name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
compliance.control Security control ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
compliance.standards Applicable standards EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
compliance.status Compliance status EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.desc Finding description EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.related_events.product.uid Related findings product ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.related_events.title Related findings title EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.related_events.uid Related findings ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.src_url Source URL EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.types Finding type EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.uid Provider ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
metadata.product.feature.uid Generator ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
metadata.product.name Product name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
metadata.product.uid Product ARN EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
metadata.product.vendor_name Company name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
metadata.uid Finding ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
remediation.desc Recommendation text EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
remediation.references Recommendation URL EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
resources.cloud_partition Resource partition EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
resources.name Resource name EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
resources.region Resource region EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
resources.type Resource type EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
resources.uid Resource ID EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
severity Severity EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
status Status EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
vulnerabilities.fix_coverage Software vulnerabilities coverage EQUALS, PREFIX, NOT_CONTAINS, NOT_EQUALS, PREFIX_NOT_EQUALS String
finding_info.first_seen_time_dt First observed at Start, End, DateRange Date (formatted as 2022-12-01T21:47:39.269Z)
finding_info.last_seen_time_dt Last observed at Start, End, DateRange Date (formatted as 2022-12-01T21:47:39.269Z)
finding_info.modified_time_dt Updated at Start, End, DateRange Date (formatted as 2022-12-01T21:47:39.269Z)
compliance.assessments.meets_criteria Compliance assessment meets criteria True, False Boolean
vulnerabilities.is_exploit_available Software vulnerabilities with exploit available True, False Boolean
vulnerabilities.is_fix_available Software vulnerabilities with fix available True, False Boolean
activity_id Activity ID Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
compliance.status_id Compliance status ID Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
confidence_score Confidence Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
severity_id Severity ID Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
status_id Status ID Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
finding_info.related_events_count Related findings count Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal) Number
resources.tags Resource tags EQUALS Map

Para critérios rotulados como campos de string, o uso de operadores de filtro diferentes no mesmo campo afeta a lógica de avaliação. Para obter mais informações, consulte StringFiltera Referência da API do Security Hub.

Cada critério aceita um número máximo de valores que podem ser usados para filtrar as descobertas correspondentes. Para saber os limites de cada critério, consulte OcsfFindingFiltersna Referência da API do Security Hub

Campos do OCSF que podem ser atualizados

A seguir estão os campos do OCSF que podem ser atualizados usando regras de automação.

  • Comment

  • SeverityId

  • StatusId

Como as regras de automação avaliam as descobertas

Uma regra de automação avalia descobertas novas e atualizadas que o Security Hub gera ou ingere após a criação da regra.

As regras de automação avaliam as descobertas originais fornecidas por provedores. Os provedores podem fornecer novas descobertas e atualizar as descobertas existentes por meio da integração com o Security Hub. As regras não são acionadas quando você atualiza os campos de descoberta após a criação da regra por meio da operação BatchUpdateFindingsV2. Se você criar uma regra de automação e fizer uma atualização de BatchUpdateFindingsV2 que afete o mesmo campo de descoberta, a última atualização definirá o valor desse campo. Veja o seguinte exemplo:

Você usa BatchUpdateFindingsV2 para atualizar o campo Status de uma descoberta de New para In Process. Se você chamar GetFindingsV2, o campo Status passará a ter um valor de In Process. Você cria uma regra de automação que altera o campo Status da descoberta de New para Suppressed (lembre-se de que as regras ignoram as atualizações feitas com BatchUpdateFindingsV2). O provedor de descoberta atualiza a descoberta e altera o Status campo paraNew. Se você chamar GetFindingsV2, o campo Status passará a ter um valor de Suppressed porque a regra de automação foi aplicada e a regra foi a última ação realizada na descoberta.

Quando você cria ou edita uma regra no console do Security Hub, o console exibe uma prévia das descobertas que correspondem aos critérios da regra. Considerando que as regras de automação avaliam as descobertas originais enviadas pelo provedor de descobertas, a visualização prévia no console reflete as descobertas em seu estado final, conforme elas seriam mostradas em uma resposta à operação GetFindingsV2 da API (ou seja, após as ações das regras ou outras atualizações serem aplicadas à descoberta).

Como as regras de automação são ordenadas

Cada regra de automação recebe uma ordem de regra. Isso determina a ordem na qual o Security Hub aplica suas regras de automação e se torna importante quando várias regras estão relacionadas à mesma descoberta ou campo de descoberta.

Quando várias ações de regra estão relacionadas à mesma descoberta ou campo de descoberta, a regra com o maior valor numérico para a ordem das regras se aplica por último e produz o efeito final.

Quando você cria uma regra no console do Security Hub, o Security Hub atribui automaticamente a ordem das regras com base na ordem de criação da regra. A primeira regra que você criar terá uma ordem de regra de 1. Quando existir mais de uma regra, cada regra criada posteriormente terá o próximo valor numérico mais alto disponível para a ordem das regras.

Quando você cria uma regra por meio da CreateAutomationRuleV2API ou AWS CLI, o Security Hub aplica a regra com o menor valor numérico para a RuleOrder primeira. Em seguida, aplica regras subsequentes em ordem ascendente. Se várias descobertas tiverem o mesmo valorRuleOrder, o Security Hub aplicará uma regra com um valor anterior para o UpdatedAt campo primeiro (ou seja, a regra que foi editada mais recentemente se aplica por último).

É possível modificar a ordem das regras a qualquer momento.

Exemplo de ordem de regras:

Regra A (a ordem das regras é 1):

  • Critérios da Regra A

    • ProductName = Security Hub CSPM

    • Resources.Type é S3 Bucket

    • Compliance.Status = FAILED

    • RecordState é NEW

    • Workflow.Status = ACTIVE

  • Ações da Regra A

    • Atualizar Confidence para 95

    • Atualizar Severity para CRITICAL

    • Atualizar Comment para This needs attention

Regra B (a ordem das regras é 2):

  • Critérios da Regra B

    • AwsAccountId = 123456789012

  • Ações de Regra B

    • Atualizar Severity para INFORMATIONAL

Primeiro, as ações da Regra A se aplicam às descobertas do Security Hub que correspondem aos critérios da Regra A. Em seguida, as ações da Regra B se aplicam às descobertas do Security Hub com o ID da conta especificado. Neste exemplo, como a Regra B se aplica por último, o valor final de Severity nas descobertas do ID da conta especificada é INFORMATIONAL. Com base na ação da Regra A, o valor final de Confidence nas descobertas correspondentes é 95.

Integrações de terceiros

Você pode usar regras de automação para criar tickets para integrações com Jira Cloud e. ServiceNow ITSM Para obter mais informações, consulte Criação de uma regra para uma integração de terceiros.

Cenários em que as regras de automação não funcionam

Veja a seguir cenários em que as regras de automação não funcionam.

  • A conta autônoma se torna membro de uma organização com um administrador delegado

  • A conta de gerenciamento da organização remove o administrador delegado e define um novo administrador delegado.

  • A configuração do agregador para o administrador delegado ou a conta autônoma muda quando uma região desvinculada é transformada em uma região vinculada.

Durante esses cenários, um membro de uma organização pode gerenciar regras de automação com operações de lista, obtenção e exclusão no AWS CLI ou APIs.

Quando uma região desvinculada é transformada em região vinculada, o administrador delegado ou a conta autônoma pode gerenciar recursos em uma região vinculada com operações de lista, obtenção e exclusão.