Atributos opcionais de nível superior - 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á.

Atributos opcionais de nível superior

Esses atributos de nível superior são opcionais no AWS Security Finding Format (ASFF). Para obter mais informações sobre esses atributos, consulte AwsSecurityFindinga Referência AWS Security Hub da API.

Ação

O objeto Action fornece detalhes sobre uma ação que afeta ou que foi executada em um recurso.

Exemplo

"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

O Conta da AWS nome ao qual a descoberta se aplica.

Exemplo

"AwsAccountName": "jane-doe-testaccount"

CompanyName

O nome da empresa do produto que gerou a descoberta. Para descobertas baseadas em controle, a empresa é AWS.

O Security Hub preenche esse atributo automaticamente para cada descoberta. Você não pode atualizá-lo usando BatchImportFindings ou BatchUpdateFindings. A exceção a isso é quando você utiliza uma integração personalizada. Consulte Usando integrações personalizadas de produtos para enviar descobertas ao AWS Security Hub.

Ao usar o console do Security Hub para filtrar as descobertas pelo nome da empresa, você usa esse atributo. Ao usar o console do Security Hub para filtrar as descobertas pelo nome da empresa, você usa o atributo aws/securityhub/CompanyName em ProductFields. O Security Hub não sincroniza esses dois atributos.

Exemplo

"CompanyName": "AWS"

Conformidade

O objeto Compliance fornece detalhes da descoberta relacionada a um controle. Esse atributo é retornado para descobertas geradas a partir de um controle do Security Hub e para descobertas AWS Config enviadas ao Security Hub.

Exemplo

"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." } ] }

Confiança

A probabilidade de que uma descoberta identifique com precisão o comportamento ou o problema que se pretendia identificar.

Confidence só deve ser atualizado usando BatchUpdateFindings.

Os provedores de descobertas que desejam fornecer um valor para Confidence devem usar o atributo Confidence sob FindingProviderFields. Consulte Usar o FindingProviderFields.

Confidence é pontuado em uma base de 0 a 100 usando uma escala de proporção. 0 significa 0% de confiança e 100 significa 100% de confiança. Por exemplo, uma detecção de exfiltração de dados baseada em um desvio estatístico do tráfego de rede tem baixa confiança porque uma exfiltração real não foi verificada.

Exemplo

"Confidence": 42

Criticidade

O nível de importância atribuído aos recursos associados a uma descoberta.

Criticality só deve ser atualizado chamando a operação da API BatchUpdateFindings. Não atualize este objeto com BatchImportFindings.

Os provedores de descobertas que desejam fornecer um valor para Criticality devem usar o atributo Criticality sob FindingProviderFields. Consulte Usar o FindingProviderFields.

Criticality é pontuado em uma base de 0 a 100, usando uma escala de proporção que suporta somente números inteiros completos. Uma pontuação de 0 significa que os recursos subjacentes não têm criticidade e uma pontuação de 100 é reservada para os recursos mais críticos.

Para cada recurso, considere o seguinte ao atribuir Criticality:

  • O recurso afetado contém dados confidenciais (por exemplo, um bucket do S3 com PII)?

  • O recurso afetado permite que um adversário aprofunde o acesso ou estenda os recursos dele para realizar outras atividades maliciosas (por exemplo, uma conta sysadmin comprometida)?

  • O recurso é um ativo crítico para os negócios (por exemplo, um sistema comercial importante que, se comprometido, poderia ter um impacto significativo na receita)?

É possível usar as seguintes diretrizes:

  • Um recurso que alimenta sistemas de missão crítica ou contém dados altamente confidenciais pode ser classificado na faixa de 75 a 100.

  • Um recurso que alimenta sistemas importantes (mas não críticos) ou que contém dados moderadamente importantes pode ser pontuado na faixa de 25 a 74.

  • Um recurso que alimenta sistemas sem importância ou contém dados não confidenciais deve ser pontuado na faixa de 0 a 24.

Exemplo

"Criticality": 99

FindingProviderFields

FindingProviderFields inclui os seguintes atributos:

  • Confidence

  • Criticality

  • RelatedFindings

  • Severity

  • Types

É possível atualizar FindingProviderFields usando a operação da API BatchImportFindings. Você não pode atualizá-lo com BatchUpdateFindings.

Para obter detalhes sobre como o Security Hub lida com atualizações de BatchImportFindings a FindingProviderFields para os atributos de nível superior correspondentes, consulte Usar o FindingProviderFields.

Exemplo

"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

Indica quando o possível problema de segurança detectado por uma descoberta foi observado pela primeira vez.

Esse timestamp reflete a hora em que o evento ou a vulnerabilidade foi observado pela primeira vez. Consequentemente, ele pode ser diferente do timestamp CreatedAt, que reflete a hora em que esse registro de descoberta foi criado.

Este timestamp deve ser imutável entre as atualizações do registro de descoberta, mas pode ser atualizado se um timestamp mais preciso tiver sido determinado.

Exemplo

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

LastObservedAt

Indica quando o possível problema de segurança detectado por uma descoberta foi observado mais recentemente pelo produto de descobertas de segurança.

Esse timestamp reflete a hora em que o evento ou a vulnerabilidade foi observado pela última vez ou mais recentemente. Consequentemente, ele pode ser diferente do timestamp UpdatedAt, que reflete quando esse registro de descoberta foi atualizado pela última vez ou mais recentemente.

É possível fornecer esse timestamp, mas isso não é obrigatório na primeira observação. Se você fornecer este campo na primeira observação, o timestamp deverá ser igual ao FirstObservedAt. Você deve atualizar esse campo para refletir o último ou o mais recente timestamp observado sempre que uma descoberta for observada.

Exemplo

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

Malware

O objeto Malware fornece uma lista de malware relacionado a uma descoberta.

Exemplo

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

Network (retirado)

O objeto Network oferece informações relacionadas à rede sobre uma descoberta.

Esse objeto é retirado. Para fornecer esses dados, é possível mapear os dados para um recurso em Action ou usar o objeto Resources.

Exemplo

"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

O objeto NetworkPath fornece informações sobre um caminho de rede relacionado a uma descoberta. Cada entrada em NetworkPath representa um componente do caminho.

Exemplo

"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" ] } } } ]

Observação

O objeto Note especifica uma nota definida pelo usuário que pode ser adicionado a uma descoberta.

Um provedor de descoberta pode fornecer uma nota inicial para uma descoberta, mas não pode adicionar notas depois disso. Uma nota só pode ser atualizada usando BatchUpdateFindings.

Exemplo

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

PatchSummary

O objeto PatchSummary fornece um resumo do status de conformidade do patch de uma instância em relação a um padrão de conformidade selecionado.

Exemplo

"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" }

Processar

O objeto Process fornece detalhes relacionados ao processo sobre a descoberta.

Exemplo:

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

ProcessedAt

Indica quando o Security Hub recebeu uma descoberta e começa a processá-la.

Isso difere de CreatedAt e UpdatedAt, que são timestamps obrigatórios relacionados à interação do provedor de busca com o problema de segurança e a descoberta. O timestamp ProcessedAt indica quando o Security Hub começa a processar uma descoberta. Uma descoberta aparece na conta do usuário após a conclusão do processamento.

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

ProductFields

Um tipo de dados em que os produtos de descobertas de segurança podem incluir detalhes adicionais específicos da solução que não fazem parte do Formato de descoberta de AWS segurança definido.

Para descobertas geradas pelos controles do Security Hub, ProductFields inclui informações sobre o controle. Consulte Gerando e atualizando descobertas de controle.

Esse campo não deve conter dados redundantes e não deve conter dados que entrem em conflito com os campos do Formato AWS de descoberta de segurança.

O prefixo aws/ "" representa um namespace reservado somente para AWS produtos e serviços e não deve ser enviado com descobertas de integrações de terceiros.

Embora não seja obrigatório, os produtos devem formatar nomes de campos como company-id/product-id/field-name, em que o company-id e o product-id correspondem aos produtos fornecidos no ProductArn da descoberta.

Os campos de referência a Archival são usados quando o Security Hub arquiva uma descoberta existente. Por exemplo, o Security Hub arquiva descobertas existentes quando você desabilita um controle ou padrão e quando você ativa ou desativa descobertas de controle consolidadas.

Esse campo também pode incluir informações sobre o padrão que inclui o controle que produziu a descoberta.

Exemplo

"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

Oferece o nome do produto que gerou a descoberta. Para descobertas baseadas em controle, o nome do produto é Security Hub.

O Security Hub preenche esse atributo automaticamente para cada descoberta. Você não pode atualizá-lo usando BatchImportFindings ou BatchUpdateFindings. A exceção a isso é quando você utiliza uma integração personalizada. Consulte Usando integrações personalizadas de produtos para enviar descobertas ao AWS Security Hub.

Ao usar o console do Security Hub para filtrar as descobertas pelo nome do produto, você usa esse atributo.

Ao usar o console do Security Hub para filtrar as descobertas pelo nome do produto, você usa o atributo aws/securityhub/ProductName em ProductFields.

O Security Hub não sincroniza esses dois atributos.

RecordState

Fornece o registro de uma descoberta.

Por padrão, quando inicialmente geradas por um serviço, as descobertas são consideradas como ACTIVE.

O estado ARCHIVED indica que uma descoberta deve ser ocultada da exibição. As descobertas arquivadas não são excluídas imediatamente. É possível pesquisar, revisar e gerar relatórios sobre elas. O Security Hub arquiva automaticamente as constatações baseadas em controle se o recurso associado for excluído, se o recurso não existir ou se o controle for desativado.

RecordState é destinado a provedores de descobertas e só pode ser atualizado por BatchImportFindings. Você não pode atualizá-lo usando BatchUpdateFindings.

Para rastrear o status de sua investigação sobre uma descoberta, use Workflow em vez de RecordState.

Se o estado do registro mudar de ARCHIVED para ACTIVE e o status do fluxo de trabalho da descoberta for NOTIFIED ou RESOLVED, o Security Hub definirá automaticamente o status do fluxo de trabalho como NEW.

Exemplo

"RecordState": "ACTIVE"

Região

Especifica a Região da AWS partir da qual a descoberta foi gerada.

O Security Hub preenche esse atributo automaticamente para cada descoberta. Você não pode atualizá-lo usando BatchImportFindings ou BatchUpdateFindings.

Exemplo

"Region": "us-west-2"

RelatedFindings

Fornece uma lista de descobertas relacionadas à descoberta atual.

RelatedFindings só deve ser atualizado com a operação da API BatchUpdateFindings. Você não deve atualizar esse objeto com BatchImportFindings.

Para solicitações BatchImportFindings, os provedores de descobertas devem usar o objeto RelatedFindings sob FindingProviderFields.

Para ver as descrições dos atributos RelatedFindings, consulte RelatedFindingna Referência da API AWS Security Hub .

Exemplo

"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" } ]

Correção

O objeto Remediation fornece informações sobre etapas de correção recomendadas para resolver a descoberta.

Exemplo

"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" } }

Amostra

Especifica se a descoberta é uma descoberta de amostra.

"Sample": true

SourceUrl

O objeto SourceUrl fornece um URL que encaminha para uma página sobre a descoberta atual no produto de descoberta.

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

ThreatIntelIndicators

O objeto ThreatIntelIndicator fornece detalhes sobre inteligência de ameaças relacionados a uma descoberta.

Exemplo

"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", } ]

Ameaças

O objeto Threats fornece detalhes sobre a ameaça detectada por uma descoberta.

Exemplo

"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

Fornece uma lista de pares de string de nome e valor associados à descoberta. Esses são campos personalizados, definidos pelo usuário, que são adicionados a uma descoberta. Esses campos podem ser gerados automaticamente por meio de sua configuração específica.

Os provedores de localização não devem usar esse campo para dados gerados pelo produto. Em vez disso, os provedores de localização podem usar o ProductFields campo para dados que não são mapeados para nenhum campo padrão do Formato AWS de Busca de Segurança.

Esses campos só podem ser atualizados usando BatchUpdateFindings.

Exemplo

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

VerificationState

Fornece a veracidade de uma descoberta. Os produtos de descobertas podem fornecer um valor de UNKNOWN para esse campo. Um produto de descobertas deve fornecer um valor para esse campo se houver um analógico significativo no sistema do produto de descobertas. Normalmente, esse campo é preenchido por uma determinação ou ação do usuário depois de investigar uma descoberta.

Um provedor de descoberta pode fornecer um valor inicial para esse atributo, mas não pode atualizá-lo depois disso. Esse atributo só pode ser atualizado usando BatchUpdateFindings.

"VerificationState": "Confirmed"

Vulnerabilidades

O objeto Vulnerabilities fornece uma lista de vulnerabilidades associadas a uma descoberta.

Exemplo

"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" } ] } ]

Fluxo de trabalho

O objeto Workflow fornece informações sobre o status da investigação de uma descoberta.

Esse campo é destinado aos clientes para uso com ferramentas de remediação, orquestração e emissão de tíquetes. Não se destina a provedores de descoberta.

Você só pode atualizar o campo Workflow com BatchUpdateFindings. Os clientes também podem atualizá-lo pelo console. Consulte Definir o status do fluxo de trabalho das descobertas.

Exemplo

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

WorkflowState (Aposentado)

Esse objeto foi retirado e substituído pelo campo Status do objetoWorkflow.

Esse campo fornece o estado do fluxo de trabalho de uma descoberta. Os produtos de descobertas podem fornecer o valor de NEW para esse campo. Um produto de descobertas pode fornecer um valor para esse campo se houver um analógico significativo no sistema do produto de descobertas.

Exemplo

"WorkflowState": "NEW"