Options de configuration du protocole d'API REST Amazon AWS S3

Le protocole d'API REST Amazon AWS S3 est un protocole sortant actif qui collecte des journaux AWS CloudTrail à partir de compartiments Amazon S3 .

Remarque: Il est important de s'assurer qu'aucune donnée n'est manquante lorsque vous collectez des journaux à partir d' Amazon S3 à utiliser avec un DSM personnalisé ou d'autres intégrations non prises en charge. En raison de la manière dont les API S3 renvoient les données, tous les fichiers doivent être classés par ordre alphabétique croissant lorsque le chemin d'accès complet est répertorié. Assurez-vous que le nom de chemin complet inclut une date et une heure complètes au format ISO9660 (zéros à gauche dans toutes les zones et au une date au format AAAA-MM-JJ).

Prenez l'exemple de chemin de fichier suivant :

<Name>test-bucket</Name><Prefix>MyLogs/</Prefix><Marker>MyLogs/2018-8-9/2018-08-09T23-5925.955097.log.g</Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated></ListBucketResult>

Le nom complet du fichier dans le marqueur est MyLogs/2018-8-9/2018-08-09T23-59-25.955097.log.gz et le nom du dossier est écrit sous forme de 2018-8-9 au lieu de 2018-08-09. Ce format de date entraîne un problème lorsque les données du 10 septembre 2018 sont présentées. Lorsqu'elle est triée, la date s'affiche sous forme de 2018-8-10 et les fichiers ne sont pas triés chronologiquement :

2018-10-1

2018-11-1

2018-12-31

2018-8-10

2018-8-9

2018-9-1

Une fois que les données du 9 août 2018 arrivent dans IBM QRadar, vous ne verrez plus de données jusqu'au 1e septembre 2018 car les zéros à gauche n'ont pas été utilisés dans le format de date. Après septembre, vous ne verrez plus de données jusqu'en 2019. Des zéros à gauche sont utilisés dans la date (ISO 9660) ; ce problème ne se produit donc pas.

En utilisant des zéros à gauche, les fichiers et les dossiers sont triés dans l'ordre chronologique :

2018-08-09

2018-08-10

2018-09-01

2018-10-01

2018-11-01

2018-12-01

2018-12-31
Restriction :

Une source de journal peut extraire des données d'une seule région ; utilisez donc une source de journal différente pour chaque région. Incluez le nom de dossier de région dans le chemin de fichier pour la valeur Directory Prefix lorsque vous utilisez la méthode de collecte d'événements de préfixe de répertoire pour configurer la source de journal.

Le tableau ci-dessous décrit les valeurs des paramètres courants pour collecter les événements d'audit à l'aide de la méthode de collecte Préfixe de répertoire ou de la méthode de collecte d'événements SQS. Ces méthodes de collecte utilisent le protocole d'API REST Amazon AWS S3.
Tableau 1. Paramètres de source de journal communs du protocole d'API REST Amazon AWS S3 avec la méthode Directory Prefix ou la méthode SQS
Paramètre Descriptif
Configuration du protocole API REST Amazon AWS S3
Identificateur de source de journal

Entrez un nom unique pour la source de journal.

L'identificateur de source de journal peut être n'importe quelle valeur valide et n'a pas besoin de faire référence à un serveur spécifique. L'identificateur de source de journal peut avoir la même valeur que le Nom de la source du journal. Si vous disposez de plusieurs sources de journal configurées par DSM, veillez à leur attribuer un nom unique.

Méthode d'authentification
ID de clé d'accès / Clé secrète
Authentification standard pouvant être utilisée à partir de n'importe où.
Pour plus d'informations sur la configuration des données d'identification de sécurité, voir Configuration des données d'identification de sécurité pour votre compte utilisateur AWS.
Rôle IAM d'instance EC2
Si votre hôte géré s'exécute sur une instance AWS EC2, sélectionnez cette option pour utiliser le rôle IAM à partir des métadonnées de l'instance affectées à l'instance pour l'authentification. Aucune clé n'est requise. Cette méthode fonctionne uniquement pour les hôtes gérés qui s'exécutent dans un conteneur AWS EC2.
Clé d'accès

ID de clé d'accès qui a été généré lorsque vous avez configuré les données d'identification de sécurité pour votre compte utilisateur AWS.

Si vous avez sélectionné ID clé d'accès/Clé secrète ou Assumer le rôle IAM, le paramètre Clé d'accès s'affiche.

Clé secrète

Clé secrète qui a été générée lorsque vous avez configuré les données d'identification de sécurité pour votre compte utilisateur AWS.

Si vous avez sélectionné ID clé d'accès/Clé secrète ou Assumer le rôle IAM, le paramètre Clé secrète s'affiche.

Assumer le rôle IAM Activez cette option en vous authentifiant avec une clé d'accès ou un rôle IAM d'instance EC2. Ensuite, vous pouvez assumer temporairement un rôle IAM pour l'accès.
Assumer le rôle ARN ARN complet du rôle à assumer. Il doit commencer par arn: et ne peut contenir aucun espace de début ou de fin, ni d'espace dans l'ARN.

Si vous avez activé Assumer le rôle IAM, le paramètre Assumer le rôle ARN s'affiche.

Assumer le rôle Nom de la session Nom de session du rôle à assumer. La valeur par défaut est QRadarAWSSession. Laissez la valeur par défaut si vous n'avez pas besoin de la modifier. Ce paramètre ne peut contenir que des caractères alphanumériques majuscules et minuscules, des traits de soulignement ou l'un des caractères suivants : =,.@-

Si vous avez activé Assumer le rôle IAM, le paramètre Assumer le rôle Nom de la session s'affiche.

Assumer un ID externe de rôle Identificateur dont vous pourriez avoir besoin pour assumer un rôle dans un autre compte. Vous obtenez cette valeur de l'administrateur du compte auquel appartient le rôle.

Cette valeur peut être n'importe quelle chaîne, telle qu'une phrase passe, un identificateur global unique ou un numéro de compte.

Pour plus d'informations, voir Comment utiliser un ID externe lors de l'octroi de l'accès à vos ressources AWS à un tiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html).

Si vous avez activé Assume un rôle IAM, le paramètre Assume un ID externe de rôle s'affiche.

Méthode de collecte S3
Notifications d'événement SQS
Interrogez une file d'attente SQS qui contient des notifications ObjectCreated configurées dans les dossiers S3 de votre choix. Ensuite, téléchargez et traitez les fichiers référencés dans la notification à partir du compartiment S3 . Vous pouvez utiliser une file d'attente unique ou des files d'attente distinctes pour couvrir plusieurs compartiments et comptes. Cette décision dépend de votre configuration.

Pour plus d'informations, voir Tableau 3.

Utiliser un préfixe spécifique
Les journaux du dossier spécifié sont traités. Pour les sources de journal CloudTrail , le préfixe doit s'appliquer à un seul compte ou à une seule région. Pour les autres sources de journal, le préfixe doit pointer vers un répertoire unique qui contient les fichiers dont les horodatages sont ISO8601 au début de chaque nom de fichier. L'horodatage de chaque nom de fichier garantit que le protocole collecte les nouveaux événements avec cette méthode.

Pour plus d'informations, voir Tableau 2.

Nom de région Région dans laquelle se trouve la file d'attente SQS ou le compartiment AWS S3.

Exemple : us-east-1, eu-west-1, ap-northeast-3

Format d'événement Choisissez le format des événements contenus dans les fichiers.
AWS CloudTrail JSON
Fichiers contenant des événements au format JSON pour Amazon Cloud Trail (fichiers.json.gz uniquement).
LINEBYLINE
Fichiers journaux bruts contenant un enregistrement par ligne. La compression avec gzip (.gz ou .gzip) et zip (.zip) est prise en charge.
Journaux de flux AWS VPC
Fichiers contenant des journaux de flux VPC AWS natifs / OCSF (fichiers.txt.gz ou gz.parquet uniquement). Cette option envoie des flux à l'onglet Activité réseau dans QRadar. La source de journal configurée n'affiche pas Last Event Seen Time car la sortie est des données de flux.
Journaux de pare-feu réseau AWS
Fichiers contenant des journaux d'alerte ou de flux AWS Network Firewall. Cette option envoie les journaux de flux à l'onglet Activité réseau et envoie les journaux d'alertes en tant qu'événements à l'onglet Activité du journal dans QRadar. Amazon AWS Network Firewall DSM analyse les journaux.
Astuce: Si votre système ne possède pas de licence pour les flux, utilisez le processeur LINEBYLINE pour que DSM puisse analyser les journaux AWS Network Firewall.
W3C
A utiliser avec Cisco Cloud Web Services DSM (fichiers.gz uniquement).
Cisco SSE CSV
A utiliser avec Cisco Umbrella DSM (fichiers.gz uniquement).
Apache Parquet
Sélectionnez cette option pour convertir les fichiers Apache Parquet en événements JSON (fichiers.gz.parquet et .parquet uniquement).
CSV générique
Traite les fichiers contenant des données CSV avec une ligne d'en-tête en une sortie structurée de paires clé-valeur. Vous pouvez choisir entre une sortie JSON ou une sortie par paires nom-valeur. La compression avec gzip (.gz ou .gzip) et zip (.zip) est prise en charge.
Les données CSV contiennent une ligne d'en-tête Les journaux exportés vers S3 contiennent une ligne d'en-tête CSV. Cette option est obligatoire pour les journaux Cisco SSE, mais facultative pour les journaux Cisco Umbrella dnslogs, proxylogs et iplogs.
Délimiteur CSV Le caractère de délimitation des données CSV source.

Si vous sélectionnez Generic CSV dans le paramètre Event Format, vous pouvez configurer ce paramètre.

Format de sortie Choisissez la manière dont la sortie doit être formatée en clés et en valeurs. Le format JSON permet de produire un fichier JSON plat contenant les noms et les valeurs des en-têtes. Par exemple : { "header1" : "value1", "header2" : "value2" }. Le format Nom-Valeur génère des paires nom=valeur séparées par des tabulations. Exemple : header1=value1<tab>header2=value2

Si vous sélectionnez W3C ou Generic CSV dans le paramètre Event Format, vous pouvez configurer ce paramètre.

Supprimer les champs vides Réglez cette option sur false pour générer des noms pour tous les champs. Cette option permet d'omettre de la sortie les champs dont la valeur est considérée comme vide, afin de réduire la taille de la sortie. Il peut s'agir d'une chaîne vide, d'une valeur contenant uniquement des espaces blancs ou d'une valeur constituée d'un seul trait d'union (-).

Si vous sélectionnez W3C ou Generic CSV dans le paramètre Event Format, vous pouvez configurer ce paramètre.

Nom d'hôte de la destination de flux Nom d'hôte du processeur de flux où sont envoyés les journaux de flux VPC Flow ou AWS Network Firewall.

Si vous sélectionnez AWS VPC Flow Logs ou AWS Network Firewall dans le paramètre Event Format , vous pouvez configurer ce paramètre.

Port de destination de flux Port du processeur de flux sur lequel sont envoyés les journaux de flux VPC Flow ou AWS Network Firewall.

Si vous sélectionnez AWS VPC Flow Logs ou AWS Network Firewall dans le paramètre Event Format , vous pouvez configurer ce paramètre.

Utiliser comme source de journal de passerelle

Lorsque vous sélectionnez cette option, les événements collectés circulent via le moteur QRadar Traffic Analysis et QRadar détecte automatiquement une ou plusieurs sources de journaux.

Lorsque vous sélectionnez cette option, le modèle d'identificateur de source de journal peut éventuellement être utilisé pour définir un identificateur de source de journal personnalisé pour les événements en cours de traitement.

Modèle d'identificateur de source de journal

Si vous avez sélectionné Utiliser comme source de journal de passerelle, vous pouvez définir un identificateur de source de journal personnalisé pour les événements en cours de traitement et pour que les sources de journal soient automatiquement reconnues, le cas échéant. Si vous ne configurez pas Modèle d'identificateur de source de journal, QRadar reçoit des événements en tant que sources de journal génériques inconnues.

Utilisez des paires clé-valeur pour définir l'identificateur de source de journal personnalisé. La clé est la chaîne de format d'identificateur, qui est la source ou la valeur d'origine qui en résulte. La valeur est le modèle de regex associé utilisé pour évaluer la charge actuelle. Cette valeur prend également en charge les groupes de capture qui peuvent être utilisés pour personnaliser davantage la clé.

Définissez plusieurs paires clé-valeur en entrant chaque modèle sur une nouvelle ligne. Les modèles multiples sont évalués dans l'ordre dans lequel ils sont répertoriés. Lorsqu'une correspondance est trouvée, un identificateur de source de journal personnalisé s'affiche.

Les exemples suivants montrent plusieurs fonctions de paire valeur-clé.
Schémas
VPC=\sREJECT\sFAILURE
$1=\s(REJECT)\sOK
VPC-$1-$2=\s(ACCEPT)\s(OK)
Evénements
{LogStreamName: LogStreamTest,Timestamp: 0,Message: ACCEPT OK,IngestionTime: 0,EventId: 0}
ID source de journal personnalisé résultant
VPC-ACCEPT-OK
Utiliser l'analyse syntaxique prédictive Si vous activez ce paramètre, un algorithme extrait les modèles d'identificateur de source de journal des événements sans exécuter le regex pour chaque événement, ce qui augmente la vitesse d'analyse.
Astuce: Dans de rares cas, l'algorithme peut générer des prévisions incorrectes. Activez l'analyse prédictive uniquement pour les types de source de journal desquels vous prévoyez recevoir des taux d'événements élevés et nécessitant une analyse plus rapide.
Afficher les options avancées Sélectionnez cette option si vous souhaitez personnaliser les données d'événement.
Modèle de fichier

Cette option est disponible lorsque vous définissez Afficher les options avancées sur Oui.

Entrez une expression régulière pour le modèle de fichier qui correspond aux fichiers à extraire, par exemple, .*?\.json\.gz.

Répertoire local

Cette option est disponible lorsque vous définissez Afficher les options avancées sur Oui.

Répertoire local du collecteur d'événements cible. Le répertoire doit exister avant que le protocole d'API REST AWS S3 tente d'extraire des événements.

URL de noeud final S3

Cette option est disponible lorsque vous définissez Afficher les options avancées sur Oui.

URL de noeud final utilisée pour interroger l'API REST AWS S3.

Si votre URL de noeud final est différente de la valeur par défaut, entrez votre URL de noeud final. La valeur par défaut est https://s3.amazonaws.com.

Utiliser l'accès de style de chemin S3

Force les demandes S3 à utiliser un accès de style chemin.

Cette méthode est obsolète pour AWS. Toutefois, cela peut être nécessaire lorsque vous utilisez d'autres API compatibles S3. Par exemple, le style de chemin https://s3.region.amazonaws.com/bucket-name/key-name est automatiquement utilisé lorsqu'un nom de compartiment contient un point (.). Par conséquent, cette option n'est pas obligatoire, mais elle peut être utilisée.

Utiliser le proxy

Si QRadar accède au service Web Amazon à l'aide d'un proxy, activez Utiliser le proxy.

Si le proxy requiert une authentification, configurez les zones Serveur proxy, Port du proxy, Nom d'utilisateur du proxy et Mot de passe du proxy.

Si le proxy ne requiert pas d'authentification, configurez la zone Adresse IP ou nom d'hôte du proxy.

Récurrence

Fréquence à laquelle une interrogation est effectuée pour analyser les nouvelles données.

Si vous utilisez la méthode de collecte d'événements SQS, SQS Event Notifications peut avoir une valeur minimale de 10 (secondes). Etant donné que l'interrogation de la file d'attente SQS peut se produire plus souvent, une valeur inférieure peut être utilisée.

Si vous utilisez la méthode de collecte d'événements de préfixe de répertoire, Utiliser un préfixe spécifique a une valeur minimale de 60 (secondes) ou 1M. Etant donné que chaque demande listBucket à un compartiment AWS S3 entraîne un coût pour le compte propriétaire du compartiment, une valeur de récurrence plus petite augmente le coût.

Entrez un intervalle de temps pour déterminer la fréquence d'interrogation des nouvelles données. L'intervalle de temps peut inclure des valeurs en heures (H), en minutes (M) ou en jours (D). Par exemple, 2H = 2 heures, 15M = 15 minutes, 30 = secondes.

Régulation des EPS

Nombre maximal d'événements par seconde que QRadar ingère.

Si votre source de données dépasse la régulation EPS, la collecte de données est retardée. Les données sont toujours collectées, puis elles sont ingérées lorsque la source de données cesse de dépasser le régulateur EPS.

La valeur par défaut est 5000.

Le tableau suivant décrit les valeurs de paramètre spécifiques permettant de collecter les événements d'audit à l'aide de la méthode de collecte d'événements Préfixe de répertoire :

Tableau 2. Paramètres spécifiques à la source de journal du protocole d'API REST d'Amazon AWS S3 avec la méthode Directory Prefix
Paramètre Descriptif
Méthode de collecte S3 Sélectionnez Utiliser un préfixe spécifique.
Nom du compartiment

Nom du compartiment AWS S3 dans lequel les fichiers journaux sont stockés.

Préfixe de répertoire

Emplacement du répertoire racine sur le compartiment AWS S3 à partir duquel les journaux CloudTrail sont extraits ; par exemple, AWSLogs/<AccountNumber>/CloudTrail/<RegionName>/.

Pour extraire des fichiers du répertoire racine d'un compartiment, vous devez utiliser une barre oblique (/) dans le chemin d'accès au fichier Préfixe de répertoire.

Remarque :
  • La modification de la valeur Préfixe de répertoire efface le marqueur de fichier conservé. Tous les fichiers correspondant au nouveau préfixe sont téléchargés dans la prochaine extraction.
  • Le chemin d'accès au fichier Préfixe de répertoire ne peut pas commencer par une barre oblique (/), sauf si seule la barre oblique est utilisée pour collecter des données à partir de la racine du compartiment.
  • Si le chemin d'accès au fichier Préfixe de répertoire est utilisé pour spécifier des dossiers, vous ne devez pas commencer le chemin d'accès au fichier avec une barre oblique (par exemple, utilisez folder1/folder2 à la place).

Le tableau suivant décrit les paramètres qui requièrent des valeurs spécifiques pour collecter des événements d'audit à l'aide de la méthode de collecte d'événements SQS :

Tableau 3. Amazon AWS S3 Paramètres spécifiques à la source de journal du protocole d'API REST avec la méthode SQS
Paramètre Descriptif
Méthode de collecte S3 Sélectionnez SQS Event Notifications.
URL de file d'attente SQS URL complète commençant par https://, pour la file d'attente SQS configurée pour recevoir des notifications pour les événements ObjectCreated à partir de S3.