Configurer des analyseurs personnalisés
Ce document explique comment créer des analyseurs personnalisés dans les cas où aucun analyseur prédéfini n'est disponible ou lorsque vous souhaitez avoir plus de contrôle. Les analyseurs personnalisés s'affichent dans la liste des analyseurs, à côté des analyseurs prédéfinis.
Vous trouverez ci-dessous des cas d'utilisation courants :
Ingérer des données de journaux pour un type de journal qui ne dispose pas d'un analyseur prédéfini.
Pour ce faire, utilisez une des méthodes suivantes :
Créez un analyseur personnalisé pour ignorer les mises à jour de l'analyseur prédéfini.
Limites et opérations non compatibles
Lorsque vous créez et gérez des analyseurs personnalisés, tenez compte des limites opérationnelles suivantes :
- Syntaxe des analyseurs par rapport aux règles de détection YARA-L : les analyseurs d'ingestion et les extensions d'analyseur utilisent la syntaxe de configuration et Grok Logstash avec des filtres (par exemple,
grok,mutate,json,dateetbase64) au moment de l'ingestion pour analyser les journaux bruts dans le modèle de données unifié (UDM). Les analyseurs ne peuvent pas utiliser la syntaxe YARA-L, les blocs de résultats ni les fonctions de générateur (telles queyield). YARA-L 2.0 est strictement un langage de requête de moteur de détection évalué en aval sur les événements UDM normalisés pour les alertes de menace. Il ne peut pas analyser les journaux bruts, modifier les champs UDM ni supprimer le trafic de journaux entrants. - Modèle d'ingestion 1:1 : les analyseurs personnalisés Google SecOps fonctionnent strictement sur une relation 1:1. Les analyseurs personnalisés ne peuvent pas débatcher, mettre en boucle ni fractionner une seule entrée de journal contenant plusieurs événements intégrés (tels que des tableaux JSON ou des chaînes concaténées) en événements UDM distincts. Vous devez fractionner les charges utiles multi-événements avant l'ingestion à l'aide de pipelines de collecte de journaux tels que BindPlane OP, OpenTelemetry Collector, Fluent Bit ou une fonction Cloud Run de pré-ingestion.
- Comportement du filtre
drop {}: le filtredrop {}d'un analyseur supprime uniquement la génération d'événements UDM. Lorsqu'un analyseur supprime un journal, Google SecOps ne crée pas d'enregistrement UDM et les règles de détection ne peuvent pas évaluer l'événement. Toutefois, Google SecOps conserve le journal brut d'origine dans le dépôt brut immuable à des fins de conformité et de conservation des audits. Vous pouvez toujours effectuer des recherches dans les journaux bruts à l'aide de la fonctionnalité de recherche dans les journaux bruts. Pour supprimer les journaux avant le stockage, configurez le filtrage en amont dans votre transmetteur ou collecteur. - Analyse en mode lecture seule par défaut : lorsque vous activez un analyseur personnalisé, il ne s'applique qu'aux journaux nouvellement ingérés à partir du moment de l'activation. Si vous avez un besoin professionnel critique d'appliquer des mappages d'analyseurs personnalisés aux journaux historiques existants, vous pouvez demander une tâche de réexécution des journaux de backend. Pour en savoir plus, consultez Réanalyser les données historiques (relecture des journaux).
Créer un analyseur personnalisé basé sur des instructions de mappage
Vous pouvez créer un analyseur personnalisé en écrivant du code qui convertit le journal brut d'origine en enregistrement UDM.
Autres ressources :
- Pour en savoir plus sur la structure d'un analyseur, consultez Présentation de l'analyse des journaux.
- Pour en savoir plus sur la syntaxe de l'analyseur, consultez la documentation de référence sur la syntaxe de l'analyseur.
Lorsque vous créez un analyseur, essayez de remplir autant de champs UDM importants que possible.
Accédez à Paramètres.
Accédez à Paramètres du SIEM.
Cliquez sur Créer un analyseur.
Sélectionnez une source de journal appropriée dans la liste Source du journal.
Sélectionnez Commencer avec les journaux bruts uniquement pour créer un analyseur en fonction de vos besoins.
Cliquez sur Créer.
Saisissez votre code dans le terminal de code du parseur. Pour en savoir plus, consultez Créer une instruction de mappage d'extrait de code.
Remarque : Assurez-vous que la logique de votre analyseur personnalisé mappe et génère correctement des codes temporels valides et actuels. Si un analyseur personnalisé mappe incorrectement les codes temporels à une date en dehors de votre période de conservation standard, les données sont ingérées correctement, mais restent impossibles à rechercher dans l'interface utilisateur. Étant donné que les fonctionnalités de recherche s'appuient sur les codes temporels des événements pour le filtrage, les données mappées sur une date incorrecte sont invisibles, même si l'ingestion a réussi.
Facultatif : Cliquez sur Modifier pour modifier le journal brut ou la copie existants.
Facultatif : Cliquez sur Charger pour charger le dernier journal brut.
Cliquez sur Aperçu pour afficher la sortie UDM. Un message d'erreur s'affiche si le code est incorrect.
Dans l'aperçu, vous pouvez utiliser le plug-in de filtre statedump pour valider l'état interne d'un analyseur. Pour en savoir plus, consultez Valider les données à l'aide du plug-in statedump.
Cliquez sur Valider pour valider l'analyseur personnalisé.
Le processus de validation peut prendre quelques minutes. Nous vous recommandons donc de prévisualiser d'abord l'analyseur personnalisé, d'apporter les modifications nécessaires, puis de valider l'analyseur personnalisé.
Cliquez sur Envoyer.
L'analyseur est activé pour le processus de normalisation au bout de 20 minutes.
Créer un analyseur personnalisé basé sur un analyseur existant
Utilisez un analyseur existant comme modèle pour créer un analyseur personnalisé. Cette méthode n'est compatible qu'avec l'approche basée sur du code. Voici la procédure à suivre :
Dans le menu Application , sélectionnez Paramètres > Analyseurs.
Cliquez sur Créer un analyseur.
Sélectionnez une source de journal appropriée dans la liste Source du journal.
Sélectionnez Commencer avec un analyseur prédéfini existant pour utiliser un analyseur existant comme base pour créer un analyseur personnalisé.
Cliquez sur Créer.
Modifiez votre code dans le terminal de code du parseur. Pour en savoir plus, consultez Créer une instruction de mappage d'extrait de code.
Facultatif : Cliquez sur Modifier pour modifier le journal brut.
Facultatif : Cliquez sur Actualiser pour actualiser le journal brut.
À mesure que vous ajoutez du code pour créer l'analyseur, cliquez sur Prévisualiser pour afficher la sortie UDM. Un message d'erreur s'affiche si le code est incorrect.
Dans l'aperçu, vous pouvez utiliser le plug-in de filtre statedump pour valider l'état interne d'un analyseur. Pour en savoir plus, consultez Valider les données à l'aide du plug-in statedump.
Cliquez sur Valider pour valider l'analyseur personnalisé.
Le processus de validation peut prendre quelques minutes. Nous vous recommandons donc de prévisualiser d'abord l'analyseur personnalisé, d'apporter les modifications nécessaires, puis de le valider.
Cliquez sur Envoyer.
L'analyseur est activé pour le processus de normalisation au bout de 20 minutes.
Désactiver un analyseur personnalisé
Dans le menu Application , sélectionnez Paramètres > Analyseurs.
Cliquez sur Menu à côté du parseur que vous souhaitez désactiver, puis sélectionnez Make inactive (Désactiver) dans la liste.
La boîte de dialogue Rendre l'analyseur inactif s'affiche.
Cliquez sur Rendre inactif.
L'analyseur personnalisé est désactivé et la version actuelle de l'analyseur prédéfini est activée au bout de 20 minutes. L'analyseur prédéfini devient l'analyseur par défaut.
Supprimer un analyseur personnalisé
Dans le menu Application , sélectionnez Paramètres > Analyseurs.
Cliquez sur Menu à côté de l'analyseur personnalisé que vous souhaitez supprimer, puis sélectionnez Supprimer dans la liste. Remarque : Vous ne pouvez pas supprimer un analyseur prédéfini.
La boîte de dialogue Supprimer l'analyseur personnalisé s'affiche.
Cliquez sur Supprimer.
L'analyseur personnalisé est supprimé et la version actuelle de l'analyseur prédéfini est activée au bout de 20 minutes.
Créer une extension
Les extensions d'analyseur offrent un moyen flexible d'étendre les capacités des analyseurs personnalisés existants. Ils ne remplacent pas les analyseurs personnalisés. Ils permettent plutôt d'extraire facilement des champs supplémentaires du journal brut d'origine dans l'enregistrement UDM. Une extension d'analyseur est différente d'un analyseur personnalisé.
Pour créer une extension d'analyseur, consultez Utiliser les extensions d'analyseur.
État de validation
La colonne "Validation" affiche l'état du test de validation pour l'analyseur personnalisé ou pour l'extension d'analyseur.
- Échec de l'analyseur : échec de la validation de l'analyseur personnalisé
- Validation de l'analyseur réussie : la validation de l'analyseur personnalisé a réussi
- Ignoré : l'analyseur personnalisé n'est pas validé
- Ignorée pour l'extension : l'extension d'analyseur n'est pas validée
Vous avez encore besoin d'aide ? Obtenez des réponses auprès des membres de la communauté et des professionnels Google SecOps.