

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Directives pour mapper les résultats dans le format ASFF ( AWS Security Finding Format)
<a name="guidelines-asff-mapping"></a>

Utilisez les directives suivantes pour associer vos résultats à l'ASFF. Pour une description détaillée de chaque champ et objet ASFF, voir [AWS Security Finding Format (ASFF)](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html) dans le guide de l'*AWS Security Hub utilisateur*.

## Informations d'identification
<a name="asff-identifying-information"></a>

`SchemaVersion` est toujours `2018-10-08`.

`ProductArn`est l'ARN qui vous AWS Security Hub CSPM est attribué.

`Id`est la valeur que Security Hub CSPM utilise pour indexer les résultats. L'identifiant de recherche doit être unique, afin de garantir que les autres résultats ne soient pas remplacés. Pour mettre à jour un résultat, soumettez-le à nouveau avec le même identifiant.

`GeneratorId`peut être identique `Id` ou faire référence à une unité logique discrète, telle qu'un identifiant de GuardDuty détecteur Amazon, un identifiant d' AWS Config enregistreur ou un identifiant d'analyseur d'accès IAM.

## Title et Description
<a name="asff-title-description"></a>

`Title`doit contenir des informations sur la ressource affectée. `Title`est limité à 256 caractères, espaces compris.

Ajoutez des informations plus détaillées à`Description`. `Description`est limité à 1024 caractères, espaces compris. Vous pouvez envisager d'ajouter une troncature aux descriptions. Voici un exemple :

```
"Title": "Instance i-12345678901 is vulnerable to CVE-2019-1234",
"Description": "Instance i-12345678901 is vulnerable to CVE-2019-1234. This vulnerability affects version 1.0.1 of widget-1 and earlier, and can lead to buffer overflow when someone sends a ping.",
```

## Types de résultats
<a name="asff-finding-types"></a>

Vous fournissez les informations relatives au type de recherche dans`FindingProviderFields.Types`.

`Types`doit correspondre à la [taxonomie des types pour ASFF](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format-type-taxonomy.html).

Si nécessaire, vous pouvez spécifier un classificateur personnalisé (le troisième espace de noms).

## Horodatages
<a name="asff-timestamps"></a>

Le format ASFF inclut plusieurs horodatages différents.

**`CreatedAt` et `UpdatedAt`**  
Vous devez soumettre `CreatedAt` et `UpdatedAt` chaque fois que vous appelez [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchImportFindings.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchImportFindings.html)pour chaque constatation.  
Les valeurs doivent correspondre au ISO8601 format de Python 3.8.  

```
datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()
```

**`FirstObservedAt` et `LastObservedAt`**  
`FirstObservedAt`et `LastObservedAt` doit correspondre à la date à laquelle votre système a observé le résultat. Si vous n'enregistrez pas ces informations, vous n'avez pas besoin de soumettre ces horodatages.  
Les valeurs correspondent au ISO8601 format de Python 3.8.  

```
datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc).isoformat()
```

## Severity
<a name="asff-severity"></a>

Vous fournissez des informations de gravité dans l'`FindingProviderFields.Severity`objet, qui contient les champs suivants.

**`Original`**  
La valeur de gravité de votre système. `Original`peut être n'importe quelle chaîne, pour s'adapter au système que vous utilisez.

**`Label`**  
Indicateur Security Hub CSPM requis pour déterminer la gravité du résultat. Les valeurs autorisées sont les suivantes.  
+ `INFORMATIONAL`— Aucun problème n'a été détecté.
+ `LOW`— Le problème ne nécessite pas d'action en soi.
+ `MEDIUM`— Le problème doit être traité, mais pas de toute urgence.
+ `HIGH`— Le problème doit être traité en priorité.
+ `CRITICAL`— Le problème doit être résolu immédiatement pour éviter de nouveaux dommages.
Les résultats conformes devraient toujours être `Label` définis sur`INFORMATIONAL`. Des exemples de `INFORMATIONAL` résultats sont les résultats des contrôles de sécurité réussis et AWS Firewall Manager les résultats corrigés.  
Les clients trient souvent les résultats en fonction de leur gravité pour donner à leurs équipes chargées des opérations de sécurité une liste de tâches. Soyez prudent lorsque vous définissez la gravité du résultat sur `HIGH` ou`CRITICAL`.

Votre documentation d'intégration doit inclure la justification de votre mappage.

## Remediation
<a name="asff-remediation"></a>

`Remediation`comporte deux éléments. Ces éléments sont combinés sur la console Security Hub CSPM.

`Remediation.Recommendation.Text`apparaît dans la section **Remédiation** des détails des résultats. Il contient un hyperlien vers la valeur de. `Remediation.Recommendation.Url`

À l'heure actuelle, seuls les résultats issus des normes Security Hub CSPM, d'IAM Access Analyzer et de Firewall Manager affichent des hyperliens vers la documentation expliquant comment remédier à ces résultats.

## SourceUrl
<a name="asff-sourceurl"></a>

À utiliser uniquement `SourceUrl` si vous pouvez fournir une URL contenant un lien profond vers votre console pour cette recherche spécifique. Sinon, omettez-le du mappage.

Security Hub CSPM ne prend pas en charge les hyperliens provenant de ce champ, mais ils sont exposés sur la console Security Hub CSPM.

## Malware, Network, Process, ThreatIntelIndicators
<a name="asff-malware-network-process-threatintel"></a>

Le cas échéant`Malware`, utilisez `Network``Process`, ou`ThreatIntelIndicators`. Chacun de ces objets est exposé dans la console Security Hub CSPM. Utilisez ces objets dans le contexte du résultat que vous envoyez.

Par exemple, si vous détectez un logiciel malveillant qui établit une connexion sortante avec un nœud de commande et de contrôle connu, fournissez les détails de l'instance EC2 dans. `Resource.Details.AwsEc2Instance` Fournissez les `ThreatIntelIndicator` objets `Network` et pertinents `Malware` pour cette instance EC2.

### Malware
<a name="asff-malware"></a>

`Malware`est une liste qui accepte jusqu'à cinq ensembles d'informations sur les malwares. Faites en sorte que les entrées de malwares correspondent à la ressource et à la découverte.

Chaque entrée comporte les champs suivants.

**`Name`**  
Le nom du logiciel malveillant. La valeur est une chaîne de 64 caractères maximum.  
`Name`doit provenir d'une source approuvée de renseignements sur les menaces ou de chercheurs.

**`Path`**  
Le chemin d'accès au logiciel malveillant. La valeur est une chaîne de 512 caractères maximum. `Path`doit être un chemin de fichier système Linux ou Windows, sauf dans les cas suivants.  
+ Si vous scannez des objets d'un compartiment S3 ou d'un partage EFS conformément aux règles YARA, le chemin de l'objet S3 ://ou HTTPS `Path` est alors indiqué.
+ Si vous scannez des fichiers dans un dépôt Git, `Path` c'est l'URL Git ou le chemin du clone.

**`State`**  
État du logiciel malveillant. Les valeurs autorisées sont `OBSERVED` \$1 ` REMOVAL_FAILED` \$1`REMOVED`.  
Dans le titre et la description de la recherche, assurez-vous de fournir un contexte expliquant ce qui s'est passé avec le logiciel malveillant.  
Par exemple, si tel `Malware.State` est le cas`REMOVED`, le titre et la description de la recherche doivent indiquer que votre produit a supprimé le logiciel malveillant situé sur le chemin.  
Si `Malware.State` tel est le cas`OBSERVED`, le titre et la description de la recherche doivent indiquer que votre produit a détecté ce malware situé sur le chemin.

**`Type`**  
Indique le type de logiciel malveillant. Les valeurs autorisées sont `ADWARE` `BLENDED_THREAT` \$1 `BOTNET_AGENT` \$1 `COIN_MINER` \$1 `EXPLOIT_KIT` `KEYLOGGER` \$1 `MACRO` \$1 `POTENTIALLY_UNWANTED` \$1 `SPYWARE` \$1 `RANSOMWARE` \$1 `REMOTE_ACCESS` `ROOTKIT` \$1 `TROJAN` \$1 `VIRUS` \$1`WORM`.  
Si vous avez besoin d'une valeur supplémentaire pour`Type`, contactez l'équipe Security Hub CSPM.

### Network
<a name="asff-network"></a>

`Network`est un objet unique. Vous ne pouvez pas ajouter plusieurs informations relatives au réseau. Lorsque vous mappez les champs, suivez les instructions suivantes.

**Informations sur la destination et la source**  
La destination et la source permettent de mapper facilement les journaux de flux TCP ou VPC ou les journaux WAF. Ils sont plus difficiles à utiliser lorsque vous décrivez des informations réseau pour découvrir une attaque.  
Généralement, la source est l'origine de l'attaque, mais elle peut avoir d'autres sources, comme indiqué ci-dessous. Vous devez expliquer la source dans votre documentation et également la décrire dans le titre et la description de la recherche.  
+ Pour une attaque DDoS sur une instance EC2, la source est l'attaquant, bien qu'une véritable attaque DDoS puisse utiliser des millions d'hôtes. La destination est l'adresse IPv4 publique de l'instance EC2. `Direction`est IN.
+ Pour les programmes malveillants observés en train de communiquer entre une instance EC2 et un nœud de commande et de contrôle connu, la source est l'adresse IPV4 de l'instance EC2. La destination est le nœud de commande et de contrôle. `Direction`est`OUT`. Vous fourniriez également `Malware` et`ThreatIntelIndicators`.

**`Protocol`**  
`Protocol`correspond toujours à un nom enregistré par l'Internet Assigned Numbers Authority (IANA), sauf si vous pouvez fournir un protocole spécifique. Vous devez toujours l'utiliser et fournir les informations de port.  
`Protocol`est indépendant des informations relatives à la source et à la destination. Ne le fournissez que lorsque cela a du sens.

**`Direction`**  
`Direction`est toujours relatif aux limites du AWS réseau.  
+ `IN`signifie qu'il entre AWS (VPC, service).
+ `OUT`signifie qu'il sort des limites du AWS réseau.

### Process
<a name="asff-process"></a>

`Process`est un objet unique. Vous ne pouvez pas ajouter plusieurs détails relatifs au processus. Lorsque vous mappez les champs, suivez les instructions suivantes.

**`Name`**  
`Name`doit correspondre au nom de l'exécutable. Il accepte jusqu'à 64 caractères.

****`Path`****  
`Path`est le chemin du système de fichiers vers l'exécutable du processus. Il accepte jusqu'à 512 caractères.

**`Pid`, `ParentPid`**  
`Pid`et `ParentPid` doit correspondre à l'identifiant de processus Linux (PID) ou à l'identifiant d'événement Windows. Pour vous différencier, utilisez Amazon Machine Images (AMI) EC2 pour fournir les informations. Les clients peuvent probablement faire la différence entre Windows et Linux.

**Horodatages (et) `LaunchedAt` `TerminatedAt`**  
Si vous ne pouvez pas récupérer ces informations de manière fiable et qu'elles ne sont pas précises à la milliseconde près, ne les fournissez pas.  
Si un client se fie à des horodatages pour une enquête médico-légale, il vaut mieux ne pas avoir d'horodatage qu'un mauvais horodatage.

### ThreatIntelIndicators
<a name="asff-threatintelindicators"></a>

`ThreatIntelIndicators`accepte un ensemble de cinq objets de renseignement sur les menaces au maximum.

Pour chaque entrée, `Type` c'est dans le contexte de la menace spécifique. Les valeurs autorisées sont `DOMAIN` `EMAIL_ADDRESS` \$1 `HASH_MD5` \$1 `HASH_SHA1` \$1 `HASH_SHA256` \$1 `HASH_SHA512` \$1 `IPV4_ADDRESS` `IPV6_ADDRESS` \$1 `MUTEX` \$1 `PROCESS` \$1`URL`.

Voici quelques exemples de la façon de cartographier les indicateurs de renseignement sur les menaces :
+ Vous avez trouvé un processus dont vous savez qu'il est associé à Cobalt Strike. Vous l'avez appris sur FireEye le blog de.

  Définissez `Type` sur `PROCESS`. Créez également un `Process` objet pour le processus.
+ Votre filtre de messagerie a détecté quelqu'un qui envoyait un package haché bien connu à partir d'un domaine malveillant connu.

  Créez deux `ThreatIntelIndicator` objets. Un objet est pour le`DOMAIN`. L'autre est pour le`HASH_SHA1`.
+ Vous avez trouvé un logiciel malveillant avec une règle de Yara (Loki, Fenrir, VirusScan Awss3,). BinaryAlert

  Créez deux `ThreatIntelIndicator` objets. L'un concerne le malware. L'autre est pour le`HASH_SHA1`.

## Resources
<a name="asff-resources"></a>

Pour cela`Resources`, utilisez les types de ressources et les champs de détail que nous avons fournis dans la mesure du possible. Security Hub CSPM ajoute constamment de nouvelles ressources à l'ASFF. Pour recevoir un journal mensuel des modifications apportées à ASFF, contactez securityhub-partners@amazon.com.

Si vous ne parvenez pas à ajuster les informations contenues dans les champs de détails pour un type de ressource modélisé, associez les autres détails à`Details.Other`.

Pour une ressource qui n'est pas modélisée dans ASFF, définissez sur`Type`. `Other` Pour obtenir des informations détaillées, utilisez`Details.Other`.

Vous pouvez également utiliser le type de `Other` ressource pour les AWS non-résultats.

## ProductFields
<a name="asff-productfields"></a>

À utiliser uniquement `ProductFields` si vous ne pouvez pas utiliser un autre champ sélectionné `Resources` ou un objet descriptif tel que `ThreatIntelIndicators``Network`, ou`Malware`.

Si vous en consommez`ProductFields`, vous devez fournir une justification stricte à l'appui de cette décision.

## Conformité d’
<a name="asff-compliance"></a>

À utiliser uniquement `Compliance` si vos conclusions sont liées à la conformité.

Security Hub CSPM utilise `Compliance` les résultats qu'il génère sur la base des contrôles.

Firewall Manager `Compliance` les utilise pour ses résultats, car ils sont liés à la conformité.

## Champs restreints
<a name="asff-restricted-fields"></a>

Ces champs sont destinés aux clients pour qu'ils puissent suivre leur enquête sur un résultat.

Ne mappez pas ces champs ou ces objets.
+ `Note`
+ `UserDefinedFields`
+ `VerificationState`
+ `Workflow`

Pour ces champs, faites correspondre les champs présents dans l'`FindingProviderFields`objet. Ne mappez pas aux champs de niveau supérieur.
+ `Confidence`— N'incluez un score de confiance (0-99) que si votre service possède une fonctionnalité similaire ou si vous vous en tenez à votre résultat à 100 %.
+ `Criticality`— Le score de criticité (0-99) vise à exprimer l'importance de la ressource associée à la découverte.
+ `RelatedFindings`— Ne fournissez des résultats connexes que si vous pouvez suivre les résultats liés à la même ressource ou au même type de recherche. Pour identifier un résultat connexe, vous devez vous référer à l'identifiant d'un résultat qui se trouve déjà dans Security Hub CSPM.