Collecter les journaux du VPN Azure
Ce guide explique comment exporter les journaux du VPN Azure vers Google Security Operations à l'aide d'un compte de stockage Azure. L'analyseur extrait des champs des journaux Azure VPN au format JSON, puis utilise des modèles Grok pour extraire d'autres informations du champ properties.message. Enfin, il met en correspondance les informations extraites avec les champs standardisés du modèle de données unifié (UDM).
Avant de commencer
- Assurez-vous de disposer d'une instance Google SecOps.
- Assurez-vous de disposer d'un locataire Azure actif.
- Assurez-vous de disposer d'un accès privilégié à Azure.
Configurer un compte de stockage Azure
- Dans la console Azure, recherchez Comptes de stockage.
- Cliquez sur + Créer.
- Spécifiez les valeurs des paramètres d'entrée suivants :
- Abonnement: sélectionnez l'abonnement.
- Groupe de ressources: sélectionnez le groupe de ressources.
- Région: sélectionnez la région.
- Performances: sélectionnez les performances (standard recommandé).
- Redondance: sélectionnez la redondance (GRS ou LRS recommandé).
- Nom du compte de stockage: saisissez un nom pour le nouveau compte de stockage.
- Cliquez sur Examiner et créer.
- Consultez la présentation du compte, puis cliquez sur Créer.
- Sur la page Vue d'ensemble du compte de stockage, sélectionnez le sous-menu Clés d'accès dans Sécurité et mise en réseau.
- Cliquez sur Afficher à côté de clé1 ou clé2.
- Cliquez sur Copy to clipboard (Copier dans le presse-papiers) pour copier la clé.
- Enregistrez la clé dans un emplacement sécurisé pour pouvoir l'utiliser ultérieurement.
- Sur la page Aperçu du compte de stockage, sélectionnez le sous-menu Points de terminaison dans Paramètres.
- Cliquez sur Copier dans le presse-papiers pour copier l'URL du point de terminaison du service Blob (par exemple,
https://<storageaccountname>.blob.core.windows.net
). - Enregistrez l'URL du point de terminaison dans un endroit sécurisé pour une utilisation ultérieure.
Configurer l'exportation des journaux pour les journaux de la passerelle VPN Azure
- Connectez-vous au portail Azure à l'aide de votre compte privilégié.
- Sélectionnez l'abonnement surveillé.
- Dans la liste des ressources de cet abonnement, recherchez la passerelle VPN (qui doit généralement être de type "Virtual Network Gateway").
- Cliquez sur la passerelle.
- Sélectionnez Surveillance > Services de diagnostic.
- Cliquez sur + Ajouter un paramètre de diagnostic.
- Attribuez un nom descriptif au paramètre de diagnostic.
- Sélectionnez allLogs.
- Cochez la case Archiver dans un compte de stockage comme destination.
- Spécifiez l'abonnement et le compte de stockage.
- Cliquez sur Enregistrer.
Configurer un flux dans Google SecOps pour ingérer les journaux VPN Azure
- Accédez à SIEM Settings > Feeds (Paramètres du SIEM > Flux).
- Cliquez sur Ajouter.
- Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, Journaux du VPN Azure).
- Sélectionnez Microsoft Azure Blob Storage comme Type de source.
- Sélectionnez Azure VPN comme Type de journal.
- Cliquez sur Suivant.
Spécifiez les valeurs des paramètres d'entrée suivants:
- URI Azure: URL du point de terminaison de blob.
ENDPOINT_URL/BLOB_NAME
- Remplacez les éléments suivants :
ENDPOINT_URL
: URL du point de terminaison de blob (https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
: nom du blob (par exemple,<logname>-logs
)
- L'URI est: sélectionnez le TYPE D'URI en fonction de la configuration du flux de journaux (Fichier unique | Répertoire | Répertoire incluant des sous-répertoires).
Options de suppression de la source: sélectionnez l'option de suppression en fonction de vos préférences.
Clé partagée: clé d'accès à Azure Blob Storage.
Espace de noms des éléments: espace de noms des éléments.
Libellés d'ingestion: libellé à appliquer aux événements de ce flux.
- URI Azure: URL du point de terminaison de blob.
Cliquez sur Suivant.
Vérifiez la configuration de votre nouveau flux dans l'écran Finaliser, puis cliquez sur Envoyer.
Tableau de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
category | security_result.category_details | Mappé directement à partir du champ category dans le journal brut. |
IV_PLAT | security_result.detection_fields.value | Mappé directement à partir du champ IV_PLAT dans le journal brut. Partie d'une paire clé-valeur dans le tableau "detection_fields", où la clé est IV_PLAT . |
IV_PLAT_VER | security_result.detection_fields.value | Mappé directement à partir du champ IV_PLAT_VER dans le journal brut. Partie d'une paire clé-valeur dans le tableau "detection_fields", où la clé est IV_PLAT_VER . |
IV_PROTO | security_result.detection_fields.value | Mappé directement à partir du champ IV_PROTO dans le journal brut. Partie d'une paire clé-valeur dans le tableau "detection_fields", où la clé est IV_PROTO . |
IV_VER | security_result.detection_fields.value | Mappé directement à partir du champ IV_VER dans le journal brut. Partie d'une paire clé-valeur dans le tableau "detection_fields", où la clé est IV_VER . |
level | security_result.severity | Mappé à partir du champ level dans le journal brut. Si level est Informational , severity est défini sur INFORMATIONAL . |
local_ip | target.ip | Extrait du champ properties.message à l'aide de modèles Grok et mappé sur l'adresse IP cible. |
local_port | target.port | Extrait du champ properties.message à l'aide de modèles Grok et mappé sur le numéro de port cible. Converti en type entier. |
operationName | metadata.product_event_type | Mappé directement à partir du champ operationName dans le journal brut. |
properties.message | metadata.description | Extrait du champ properties.message à l'aide de modèles Grok. Selon le format du message, la description peut inclure des informations supplémentaires extraites du champ desc2 . |
remote_ip | principal.ip | Extrait du champ properties.message à l'aide de modèles Grok et mappé sur l'adresse IP principale. |
remote_port | principal.port | Extrait du champ properties.message à l'aide de modèles Grok et mappé sur le numéro de port principal. Converti en type entier. |
resourceid | target.resource.product_object_id | Mappé directement à partir du champ resourceid dans le journal brut. |
temps | timestamp, metadata.event_timestamp | Extrait du champ time dans le journal brut au format RFC 3339 et mappé à la fois sur l'horodatage de l'événement et l'horodatage UDM. |
metadata.log_type | Codé en dur sur AZURE_VPN . |
|
metadata.vendor_name | Codé en dur sur AZURE . |
|
metadata.product_name | Codé en dur sur VPN . |
|
metadata.event_type | Défini de manière dynamique en fonction de la présence d'adresses IP. Si remote_ip et local_ip sont tous deux présents, il est défini sur NETWORK_CONNECTION , sinon sur USER_RESOURCE_ACCESS . |
|
extensions.auth.type | Codé en dur sur VPN . |
Modifications
2023-03-07
- Analyseur nouvellement créé.
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.