Collecter les journaux du pare-feu réseau AWS
Ce document explique comment ingérer les journaux AWS Network Firewall dans Google Security Operations. AWS Network Firewall est un service géré qui protège votre VPC contre le trafic malveillant. En envoyant les journaux du pare-feu réseau à Google SecOps, vous pouvez améliorer la surveillance, l'analyse et la détection des menaces.
Avant de commencer
Assurez-vous de remplir les conditions préalables suivantes :
- Instance Google SecOps
- Accès privilégié à AWS
Configurer la journalisation pour AWS Network Firewall
- Connectez-vous à l'AWS Management Console.
- Ouvrez la console Amazon VPC.
- Dans le volet de navigation, sélectionnez Pare-feu.
- Sélectionnez le nom du pare-feu que vous souhaitez modifier.
- Sélectionnez l'onglet Détails du pare-feu.
- Dans la section Journalisation, cliquez sur Modifier.
- Sélectionnez les types de journaux : Flux, Alerte et TLS.
Pour chaque type de journal sélectionné, choisissez S3 comme type de destination.
Cliquez sur Enregistrer.
Configurer des flux
Il existe deux points d'entrée différents pour configurer les flux dans la plate-forme Google SecOps :
- Paramètres SIEM> Flux > Ajouter
- Plate-forme de contenu> Packs de contenu> Premiers pas
Configurer le flux AWS Network Firewall
- Cliquez sur le pack Amazon Cloud Platform.
- Recherchez le type de journal Pare-feu réseau AWS.
Spécifiez les valeurs des champs suivants.
- Type de source : Amazon SQS V2
- Nom de la file d'attente : nom de la file d'attente SQS à partir de laquelle lire les données
- URI S3 : URI du bucket.
s3://your-log-bucket-name/
- Remplacez
your-log-bucket-name
par le nom réel de votre bucket S3.
- Remplacez
Options de suppression de la source : sélectionnez l'option de suppression en fonction de vos préférences d'ingestion.
Âge maximal des fichiers : incluez les fichiers modifiés au cours des derniers jours. La valeur par défaut est de 180 jours.
ID de clé d'accès à la file d'attente SQS : clé d'accès au compte, qui est une chaîne alphanumérique de 20 caractères.
Clé d'accès secrète à la file d'attente SQS : clé d'accès au compte, qui est une chaîne alphanumérique de 40 caractères.
Options avancées
- Nom du flux : valeur préremplie qui identifie le flux.
- Espace de noms de l'élément : espace de noms associé au flux.
- Libellés d'ingestion : libellés appliqués à tous les événements de ce flux.
Cliquez sur Créer un flux.
Pour en savoir plus sur la configuration de plusieurs flux pour différents types de journaux dans cette famille de produits, consultez Configurer des flux par produit.
Table de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
availability_zone |
target.resource.attribute.cloud.availability_zone |
Mappé directement à partir du champ availability_zone . |
event.app_proto |
network.application_protocol |
Mappé directement à partir du champ event.app_proto , converti en majuscules s'il ne s'agit pas de l'une des valeurs spécifiées (ikev2, tftp, failed, snmp, tls, ftp). HTTP2 est remplacé par HTTP. |
event.dest_ip |
target.ip |
Mappé directement à partir du champ event.dest_ip . |
event.dest_port |
target.port |
Mappé directement à partir du champ event.dest_port , converti en entier. |
event.event_type |
additional.fields[event_type_label].key |
La clé est codée en dur sous la forme "event_type". |
event.event_type |
additional.fields[event_type_label].value.string_value |
Mappé directement à partir du champ event.event_type . |
event.flow_id |
network.session_id |
Mappé directement à partir du champ event.flow_id , converti en chaîne. |
event.netflow.age |
additional.fields[netflow_age_label].key |
La clé est codée en dur sous la forme "netflow_age". |
event.netflow.age |
additional.fields[netflow_age_label].value.string_value |
Mappé directement à partir du champ event.netflow.age , converti en chaîne. |
event.netflow.bytes |
network.sent_bytes |
Mappé directement à partir du champ event.netflow.bytes , converti en entier non signé. |
event.netflow.end |
additional.fields[netflow_end_label].key |
La clé est codée en dur sous la forme "netflow_end". |
event.netflow.end |
additional.fields[netflow_end_label].value.string_value |
Mappé directement à partir du champ event.netflow.end . |
event.netflow.max_ttl |
additional.fields[netflow_max_ttl_label].key |
La clé est codée en dur sous la forme "netflow_max_ttl". |
event.netflow.max_ttl |
additional.fields[netflow_max_ttl_label].value.string_value |
Mappé directement à partir du champ event.netflow.max_ttl , converti en chaîne. |
event.netflow.min_ttl |
additional.fields[netflow_min_ttl_label].key |
La clé est codée en dur sous la forme "netflow_min_ttl". |
event.netflow.min_ttl |
additional.fields[netflow_min_ttl_label].value.string_value |
Mappé directement à partir du champ event.netflow.min_ttl , converti en chaîne. |
event.netflow.pkts |
network.sent_packets |
Mappé directement à partir du champ event.netflow.pkts , converti en entier. |
event.netflow.start |
additional.fields[netflow_start_label].key |
La clé est codée en dur sous la forme "netflow_start". |
event.netflow.start |
additional.fields[netflow_start_label].value.string_value |
Mappé directement à partir du champ event.netflow.start . |
event.proto |
network.ip_protocol |
Mappé directement à partir du champ event.proto . Si la valeur est "IPv6-ICMP", elle est remplacée par "ICMP". |
event.src_ip |
principal.ip |
Mappé directement à partir du champ event.src_ip . |
event.src_port |
principal.port |
Mappé directement à partir du champ event.src_port , converti en entier. |
event.tcp.syn |
additional.fields[syn_label].key |
La clé est codée en dur sous la forme "syn". |
event.tcp.syn |
additional.fields[syn_label].value.string_value |
Mappé directement à partir du champ event.tcp.syn , converti en chaîne. |
event.tcp.tcp_flags |
additional.fields[tcp_flags_label].key |
La clé est codée en dur sous le nom "tcp_flags". |
event.tcp.tcp_flags |
additional.fields[tcp_flags_label].value.string_value |
Mappé directement à partir du champ event.tcp.tcp_flags . |
event_timestamp |
metadata.event_timestamp.seconds |
Mappé directement à partir du champ event_timestamp , analysé en tant que code temporel. |
event_timestamp |
timestamp.seconds |
Mappé directement à partir du champ event_timestamp , analysé en tant que code temporel. |
firewall_name |
metadata.product_event_type |
Mappé directement à partir du champ firewall_name . Définissez sur "NETWORK_CONNECTION" si event.src_ip et event.dest_ip sont tous deux présents, sinon définissez sur "GENERIC_EVENT". Codé en dur sur "Pare-feu réseau AWS". Codé en dur sur "AWS". |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.