Informations de référence sur le schéma d’alerte ASIM (Advanced Security Information Model)

Le schéma d’alerte Microsoft Sentinel est conçu pour normaliser les alertes liées à la sécurité de différents produits dans un format standardisé dans le modèle ASIM (Microsoft Advanced Security Information Model). Ce schéma se concentre exclusivement sur les événements de sécurité, garantissant une analyse cohérente et efficace sur différentes sources de données.

Le schéma d’alerte représente différents types d’alertes de sécurité, tels que les menaces, les activités suspectes, les anomalies de comportement utilisateur et les violations de conformité. Ces alertes sont signalées par différents produits et systèmes de sécurité, y compris, mais sans s’y limiter, les EDR, les logiciels antivirus, les systèmes de détection d’intrusion, les outils de protection contre la perte de données, etc.

Pour plus d’informations sur la normalisation dans Microsoft Sentinel, consultez Normalisation et le modèle ASIM (Advanced Security Information Model).

Analyseurs

Pour plus d’informations sur les analyseurs ASIM, consultez la vue d’ensemble des analyseurs ASIM.

Unification des analyseurs

Pour utiliser des analyseurs qui unifient tous les analyseurs ASIM prêtes à l’emploi et vous assurer que votre analyse s’exécute sur toutes les sources configurées, utilisez l’analyseur _Im_AlertEvent .

Analyseurs spécifiques à la source prêtes à l’emploi

Pour obtenir la liste des analyseurs d’alerte Microsoft Sentinel fournit prête à l’emploi, reportez-vous à la liste des analyseurs ASIM.

Ajouter vos propres analyseurs normalisés

Lorsque vous développez des analyseurs personnalisés pour le modèle d’informations d’alerte, nommez vos fonctions KQL à l’aide de la syntaxe suivante :

  • vimAlertEvent<vendor><Product> pour les analyseurs paramétrables
  • ASimAlertEvent<vendor><Product> pour les analyseurs standard

Reportez-vous à l’article Gestion des analyseurs ASIM pour savoir comment ajouter vos analyseurs personnalisés aux analyseurs d’unification d’alerte.

Filtrage des paramètres de l’analyseur

Les analyseurs d’alerte prennent en charge différents paramètres de filtrage pour améliorer les performances des requêtes. Ces paramètres sont facultatifs, mais peuvent améliorer les performances de vos requêtes. Les paramètres de filtrage suivants sont disponibles :

Nom Type Description
Starttime DateHeure Filtrez uniquement les alertes qui ont démarré à ou après cette heure. Ce paramètre filtre sur le TimeGenerated champ, qui est l’indicateur standard pour l’heure de l’événement, quel que soit le mappage spécifique à l’analyseur des champs EventStartTime et EventEndTime.
heure de fin DateHeure Filtrez uniquement les alertes qui ont démarré à ou avant cette heure. Ce paramètre filtre sur le TimeGenerated champ, qui est l’indicateur standard pour l’heure de l’événement, quel que soit le mappage spécifique à l’analyseur des champs EventStartTime et EventEndTime.
ipaddr_has_any_prefix Dynamique Filtrez uniquement les alertes pour lesquelles le champ « DvcIpAddr » se trouve dans l’une des valeurs répertoriées.
hostname_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « DvcHostname » se trouve dans l’une des valeurs répertoriées.
username_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « Nom d’utilisateur » se trouve dans l’une des valeurs répertoriées.
attacktactics_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « AttackTactics » se trouve dans l’une des valeurs répertoriées.
attacktechniques_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « AttackTechniques » se trouve dans l’une des valeurs répertoriées.
threatcategory_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « ThreatCategory » se trouve dans l’une des valeurs répertoriées.
alertverdict_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « AlertVerdict » se trouve dans l’une des valeurs répertoriées.
eventseverity_has_any Dynamique Filtrez uniquement les alertes pour lesquelles le champ « EventSeverity » se trouve dans l’une des valeurs répertoriées.

Vue d’ensemble du schéma

Le schéma d’alerte sert plusieurs types d’événements de sécurité, qui partagent les mêmes champs. Ces événements sont identifiés par le champ EventType :

  • Informations sur les menaces : alertes liées à différents types d’activités malveillantes telles que les programmes malveillants, l’hameçonnage, les rançongiciels et d’autres cybermenaces.
  • Activités suspectes : alertes pour les activités qui ne sont pas nécessairement des menaces confirmées, mais qui sont suspectes et qui justifient une investigation plus approfondie, comme plusieurs tentatives de connexion ayant échoué ou l’accès à des fichiers restreints.
  • Anomalies de comportement de l’utilisateur : alertes indiquant un comportement inhabituel ou inattendu de l’utilisateur susceptible de suggérer un problème de sécurité, tel que des temps de connexion anormaux ou des modèles d’accès aux données inhabituels.
  • Violations de conformité : alertes liées à la non-conformité aux stratégies réglementaires ou internes. Par exemple, une machine virtuelle exposée avec des ports publics ouverts vulnérables aux attaques (Alerte de sécurité cloud).

Importante

Pour préserver la pertinence et l’efficacité du schéma d’alerte, seules les alertes liées à la sécurité doivent être mappées.

Le schéma d’alerte fait référence aux entités suivantes pour capturer les détails de l’alerte :

  • Les champs Dvc sont utilisés pour capturer des détails sur l’hôte ou l’adresse IP associée à l’alerte
  • Les champs utilisateur sont utilisés pour capturer des détails sur l’utilisateur associé à l’alerte.
  • De même, les champs Processus, Fichier, Url, Registre et Email sont utilisés pour capturer uniquement les détails clés sur le processus, le fichier, l’URL, le registre et l’e-mail associés à l’alerte, respectivement.

Importante

  • Lors de la création d’un analyseur spécifique au produit, utilisez le schéma d’alerte ASIM lorsque l’alerte contient des informations sur un incident de sécurité ou une menace potentielle, et que les détails principaux peuvent être mappés directement aux champs de schéma d’alerte disponibles. Le schéma d’alerte est idéal pour capturer des informations récapitulatives sans champs complets spécifiques à l’entité.
  • Toutefois, si vous vous retrouvez à placer des champs essentiels dans « AdditionalFields » en raison d’un manque de correspondances directes de champs, envisagez un schéma plus spécialisé. Par exemple, si une alerte inclut des détails liés au réseau, tels que plusieurs adresses IP, par exemple SrcIpAdr, DstIpAddr, PortNumber, etc., vous pouvez opter pour le schéma NetworkSession sur le schéma Alerte. Les schémas spécialisés fournissent également des champs dédiés pour capturer des informations sur les menaces, améliorer la qualité des données et faciliter une analyse efficace.

Détails du schéma

Champs ASIM courants

La liste suivante mentionne les champs qui ont des instructions spécifiques pour les événements d’alerte :

Field Classe Type Description
EventType Obligatoire Énumérés Type de l’événement.

Les valeurs prises en charge sont :
-Alert
EventSubType Recommandé Énumérés Spécifie le sous-type ou la catégorie de l’événement d’alerte, en fournissant des détails plus précis dans la classification d’événements plus large. Ce champ permet de distinguer la nature du problème détecté, en améliorant la hiérarchisation des incidents et les stratégies de réponse.

Les valeurs prises en charge incluent :
- Threat (Représente une activité malveillante confirmée ou hautement probable susceptible de compromettre le système ou le réseau)
- Suspicious Activity (Signale un comportement ou des événements qui semblent inhabituels ou suspects, mais qui ne sont pas encore confirmés comme malveillants)
- Anomaly (Identifie les écarts par rapport aux modèles normaux qui pourraient indiquer un risque de sécurité ou un problème opérationnel potentiel)
- Compliance Violation (Met en évidence les activités qui enfreignent les normes réglementaires, de stratégie ou de conformité)
EventUid Obligatoire string Chaîne alphanumérique lisible par l’ordinateur qui identifie de façon unique une alerte au sein d’un système.
P. ex. A1bC2dE3fH4iJ5kL6mN7oP8qR9s
EventMessage Facultatif string Informations détaillées sur l’alerte, notamment son contexte, sa cause et son impact potentiel.
P. ex. Potential use of the Rubeus tool for kerberoasting, a technique used to extract service account credentials from Kerberos tickets.
IpAddr Alias Alias ou nom convivial pour DvcIpAddr le champ.
Hostname (Nom d'hôte) Alias Alias ou nom convivial pour DvcHostname le champ.
EventSchema Obligatoire Énumérés Schéma utilisé pour l’événement. Le schéma documenté ici est AlertEvent.
EventSchemaVersion Obligatoire SchemaVersion (String) Version du schéma. La version du schéma documentée ici est 0.1.

Tous les champs communs

Les champs qui apparaissent dans le tableau ci-dessous sont communs à tous les schémas ASIM. Toutes les recommandations spécifiées ci-dessus remplacent les instructions générales pour le champ. Par exemple, un champ peut être facultatif en général, mais obligatoire pour un schéma spécifique. Pour plus d’informations sur chaque champ, consultez l’article Champs communs ASIM .

Classe Champs
Obligatoire - EventCount
- EventStartTime
- EventEndTime
- Eventtype
- EventUid
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
Recommandé - EventSubType
- EventSeverity
- DvcIpAddr
- DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
Facultatif - EventMessage
- EventOriginalType
- EventOriginalSubType
- EventOriginalSeverity
- EventProductVersion
- EventOriginalUid
- EventReportUrl
- EventResult
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcAction
- DvcOriginalAction
- DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

Champs d’inspection

Le tableau suivant couvre les champs qui fournissent des insights critiques sur les règles et les menaces associées aux alertes. Ensemble, ils contribuent à enrichir le contexte de l’alerte, ce qui permet aux analystes de sécurité de comprendre plus facilement son origine et son importance.

Field Classe Type Description
AlertId Alias string Alias ou nom convivial pour EventUid le champ.
AlertName Recommandé string Titre ou nom de l’alerte.
P. ex. Possible use of the Rubeus kerberoasting tool
AlertDescription Alias string Alias ou nom convivial pour EventMessage le champ.
AlertVerdict Facultatif Énumérés Détermination ou résultat final de l’alerte, indiquant si l’alerte a été confirmée comme une menace, jugée suspecte ou résolue en tant que faux positif.

Les valeurs prises en charge sont :
- True Positive (Confirmé comme une menace légitime)
- False Positive (Identification incorrecte en tant que menace)
- Benign Positive (lorsque l’événement est déterminé comme inoffensif)
- Unknown(Status incertain ou indéterminé)
AlertStatus Facultatif Énumérés Indique l’état actuel ou la progression de l’alerte.

Les valeurs prises en charge sont :
- Active
- Closed
AlertOriginalStatus Facultatif string La status de l’alerte telle que signalée par le système d’origine.
DetectionMethod Facultatif Énumérés Fournit des informations détaillées sur la méthode de détection, la technologie ou la source de données qui ont contribué à la génération de l’alerte. Ce champ offre un meilleur aperçu de la façon dont l’alerte a été détectée ou déclenchée, ce qui facilite la compréhension du contexte de détection et de la fiabilité.

Les valeurs prises en charge incluent :
- EDR: systèmes de détection et de réponse de point de terminaison qui surveillent et analysent les activités des points de terminaison pour identifier les menaces.
- Behavioral Analytics: techniques qui détectent les modèles anormaux dans le comportement de l’utilisateur, de l’appareil ou du système.
- Reputation: détection des menaces basée sur la réputation des adresses IP, des domaines ou des fichiers.
- Threat Intelligence: flux de renseignements externes ou internes fournissant des données sur les menaces connues ou les tactiques adverses.
- Intrusion Detection: systèmes qui surveillent le trafic ou les activités réseau pour détecter les signes d’intrusions ou d’attaques.
- Automated Investigation: systèmes automatisés qui analysent et examinent les alertes, ce qui réduit la charge de travail manuelle.
- Antivirus: moteurs antivirus traditionnels qui détectent les programmes malveillants en fonction des signatures et des heuristiques.
- Data Loss Prevention: solutions axées sur la prévention des transferts ou fuites de données non autorisés.
- User Defined Blocked List: listes personnalisées définies par les utilisateurs pour bloquer des adresses IP, des domaines ou des fichiers spécifiques.
- Cloud Security Posture Management: outils qui évaluent et gèrent les risques de sécurité dans les environnements cloud.
- Cloud Application Security: solutions qui sécurisent les données et les applications cloud.
- Scheduled Alerts: alertes générées en fonction de planifications ou de seuils prédéfinis.
- Other: toute autre méthode de détection non couverte par les catégories ci-dessus.
Règle Alias string Valeur de RuleName ou valeur de RuleNumber. Si la valeur de RuleNumber est utilisée, le type doit être converti en chaîne.
RuleNumber Facultatif int Numéro de la règle associée à l’alerte.

P. ex. 123456
RuleName Facultatif string Nom ou ID de la règle associée à l’alerte.

P. ex. Server PSEXEC Execution via Remote Access
RuleDescription Facultatif string Description de la règle associée à l’alerte.

P. ex. This rule detects remote execution on a server using PSEXEC, which may indicate unauthorized administrative activity or lateral movement within the network
ThreatId Facultatif string ID de la menace ou du programme malveillant identifié dans l’alerte.

P. ex. 1234567891011121314
ThreatName Facultatif string Nom de la menace ou du programme malveillant identifié dans l’alerte.

P. ex. Init.exe
ThreatFirstReportedTime Facultatif DateHeure Date et heure auxquelles la menace a été signalée pour la première fois.

P. ex. 2024-09-19T10:12:10.0000000Z
ThreatLastReportedTime Facultatif DateHeure Date et heure de la dernière signalement de la menace.

P. ex. 2024-09-19T10:12:10.0000000Z
ThreatCategory Recommandé Énumérés Catégorie de la menace ou du programme malveillant identifié dans l’alerte.

Les valeurs prises en charge sont : , , Virus, , AdwareWorm, SpywareRootkit, PhishingCryptominorSpamSpoofingMaliciousUrlSecurity Policy Violation, TrojanRansomwareMalwareUnknown
ThreatOriginalCategory Facultatif string Catégorie de la menace signalée par le système d’origine.
ThreatIsActive Facultatif bool Indique si la menace est actuellement active.

Les valeurs prises en charge sont : True, False
ThreatRiskLevel Facultatif RiskLevel (Integer) Niveau de risque associé à la menace. Le niveau doit être un nombre compris entre 0 et 100.

Remarque : La valeur peut être fournie dans l’enregistrement source à l’aide d’une échelle différente, qui doit être normalisée à cette échelle. La valeur d’origine doit être stockée dans ThreatRiskLevelOriginal.
ThreatOriginalRiskLevel Facultatif string Niveau de risque indiqué par le système d’origine.
ThreatConfidence Facultatif ConfidenceLevel (Integer) Niveau de confiance de la menace identifiée, normalisé à une valeur comprise entre 0 et 100.
ThreatOriginalConfidence Facultatif string Niveau de confiance tel que indiqué par le système d’origine.
Type d’indicateur Recommandé Énumérés Type ou catégorie de l’indicateur

Les valeurs prises en charge sont :
-Ip
-User
-Process
-Registry
-Url
-Host
-Cloud Resource
-Application
-File
-Email
-Mailbox
-Logon Session
IndicatorAssociation Facultatif Énumérés Spécifie si l’indicateur est lié ou directement affecté par la menace.

Les valeurs prises en charge sont :
-Associated
-Targeted
AttackTactics Recommandé string Tactiques d’attaque (nom, ID ou les deux) associées à l’alerte.
Format préféré :

P. ex: Persistence, Privilege Escalation
AttackTechniques Recommandé string Techniques d’attaque (nom, ID ou les deux) associées à l’alerte.
Format préféré :

P. ex: Local Groups (T1069.001), Domain Groups (T1069.002)
AttackRemediationSteps Recommandé string Actions ou étapes recommandées pour atténuer ou corriger l’attaque ou la menace identifiée.
P. ex.
1. Make sure the machine is completely updated and all your software has the latest patch.
2. Contact your incident response team.

Champs utilisateur

Cette section définit les champs liés à l’identification et à la classification des utilisateurs associés à une alerte, ce qui permet de clarifier l’utilisateur concerné et le format de son identité. Si l’alerte contient plusieurs champs supplémentaires liés à l’utilisateur qui dépassent ce qui est mappé ici, vous pouvez déterminer si un schéma spécialisé, tel que le schéma d’événement d’authentification, peut être plus approprié pour représenter entièrement les données.

Field Classe Type Description
UserId Facultatif string Représentation unique, alphanumérique et lisible par l’ordinateur de l’utilisateur associé à l’alerte.

P. ex. A1bC2dE3fH4iJ5kL6mN7o
UserIdType Conditionnelle Énumérés Type de l’ID utilisateur, tel que GUID, SIDou Email.

Les valeurs prises en charge sont :
- GUID
- SID
- Email
- Username
- Phone
- Other
Username Recommandé Nom d’utilisateur (chaîne) Nom de l’utilisateur associé à l’alerte, y compris les informations de domaine lorsqu’elles sont disponibles.

par exemple, Contoso\JSmith ou john.smith@contoso.com
Utilisateur Alias string Alias ou nom convivial pour Username le champ.
UsernameType Conditionnelle UsernameType Spécifie le type du nom d’utilisateur stocké dans le Username champ . Pour plus d’informations et pour obtenir la liste des valeurs autorisées, consultez UsernameType dans l’article Vue d’ensemble du schéma.

P. ex. Windows
UserType Facultatif UserType Type de l’acteur. Pour plus d’informations et pour obtenir la liste des valeurs autorisées, consultez UserType dans l’article Vue d’ensemble du schéma.

P. ex. Guest
OriginalUserType Facultatif string Type d’utilisateur tel que signalé par l’appareil de création de rapports.
UserSessionId Facultatif string ID unique de la session de l’utilisateur associée à l’alerte.

P. ex. a1bc2de3-fh4i-j5kl-6mn7-op8qr9st0u
UserScopeId Facultatif string L’ID d’étendue, tel que Microsoft Entra’ID d’annuaire, dans lequel UserId et Username sont définis.

P. ex. a1bc2de3-fh4i-j5kl-6mn7-op8qrs
UserScope Facultatif string Étendue, telle que Microsoft Entra locataire, dans laquelle UserId et Username sont définis. Pour plus d’informations et pour obtenir la liste des valeurs autorisées, consultez UserScope dans l’article Vue d’ensemble du schéma.

P. ex. Contoso Directory

Champs de traitement

Cette section vous permet de capturer des détails liés à une entité de processus impliquée dans une alerte à l’aide des champs spécifiés. Si l’alerte contient des champs supplémentaires et détaillés liés au processus qui dépassent ce qui est mappé ici, vous pouvez déterminer si un schéma spécialisé, tel que le schéma d’événement de processus, peut être plus approprié pour représenter entièrement les données.

Field Classe Type Description
Processid Facultatif string ID de processus (PID) associé à l’alerte.

P. ex. 12345678
ProcessCommandLine Facultatif string Ligne de commande utilisée pour démarrer le processus.

P. ex. "choco.exe" -v
ProcessName Facultatif string Nom du processus.

P. ex. C:\Windows\explorer.exe
ProcessFileCompany Facultatif string Société qui a créé le fichier image de processus.

P. ex. Microsoft

Champs de fichier

Cette section vous permet de capturer les détails liés à une entité de fichier impliquée dans une alerte. Si l’alerte contient des champs supplémentaires et détaillés liés aux fichiers qui dépassent ce qui est mappé ici, vous pouvez déterminer si un schéma spécialisé, tel que le schéma d’événement de fichier, peut être plus approprié pour représenter entièrement les données.

Field Classe Type Description
FileName Facultatif string Nom du fichier associé à l’alerte, sans chemin ni emplacement.

P. ex. Notepad.exe
FilePath Facultatif string Chemin d’accès complet normalisé du fichier cible, y compris le dossier ou l’emplacement, le nom de fichier et l’extension.

P. ex. C:\Windows\System32\notepad.exe
FileSHA1 Facultatif string Hachage SHA1 du fichier.

P. ex. j5kl6mn7op8qr9st0uv1
FileSHA256 Facultatif string Hachage SHA256 du fichier.

P. ex. a1bc2de3fh4ij5kl6mn7op8qrs2de3
FileMD5 Facultatif string Hachage MD5 du fichier.

P. ex. j5kl6mn7op8qr9st0uv1wx2yz3ab4c
FileSize Facultatif long Taille du fichier en octets.

P. ex. 123456

Champ URL

Si votre alerte inclut des informations sur l’entité URL, les champs suivants peuvent capturer des données liées à l’URL.

Field Classe Type Description
Url Facultatif string Chaîne d’URL capturée dans l’alerte.

P. ex. https://contoso.com/fo/?k=v&amp;q=u#f

Champs du Registre

Si votre alerte inclut des détails sur l’entité de Registre, utilisez les champs suivants pour capturer des informations spécifiques relatives au Registre.

Field Classe Type Description
RegistryKey Facultatif string Clé de Registre associée à l’alerte, normalisée aux conventions de nommage de clé racine standard.

P. ex. HKEY_LOCAL_MACHINE\SOFTWARE\MTG
RegistryValue Facultatif string Valeur de Registre.

P. ex. ImagePath
RegistryValueData Facultatif string Données de la valeur de Registre.

P. ex. C:\Windows\system32;C:\Windows;
RegistryValueType Facultatif Énumérés Type de la valeur de Registre.

P. ex. Reg_Expand_Sz

champs Email

Si votre alerte inclut des informations sur l’entité e-mail, utilisez les champs suivants pour capturer des détails spécifiques liés à l’e-mail.

Field Classe Type Description
EmailMessageId Facultatif string Identificateur unique du message électronique, associé à l’alerte.

P. ex. Request for Invoice Access
EmailSubject Facultatif string Objet de l’e-mail.

P. ex. j5kl6mn7-op8q-r9st-0uv1-wx2yz3ab4c

Mises à jour de schéma

Voici les modifications apportées aux différentes versions du schéma :

  • Version 0.1 : version initiale.