Informations de référence sur le schéma de normalisation des événements du Registre ASIM (Advanced Security Information Model)

Le schéma d’événement du Registre est utilisé pour décrire l’activité Windows de création, de modification ou de suppression d’entités du Registre Windows.

Les événements de Registre sont spécifiques aux systèmes Windows, mais ils sont signalés par différents systèmes qui surveillent Windows, tels que les systèmes EDR (End Point Detection and Response), Sysmon ou Windows lui-même.

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

Analyseurs

Pour utiliser l’analyseur d’unification qui unifie tous les analyseurs intégrés et vous assurer que votre analyse s’exécute sur toutes les sources configurées, utilisez imRegistry comme nom de table dans votre requête.

Pour obtenir la liste des analyseurs d’événements de processus Microsoft Sentinel fournit prête à l’emploi, reportez-vous à la liste des analyseurs ASIM.

Déployez les analyseurs d’unification et spécifiques à la source à partir du dépôt GitHub Microsoft Sentinel.

Pour plus d’informations, consultez Analyseurs ASIM et Utiliser des analyseurs ASIM.

Ajouter vos propres analyseurs normalisés

Lorsque vous implémentez des analyseurs personnalisés pour le modèle d’informations sur les événements du Registre, nommez vos fonctions KQL à l’aide de la syntaxe suivante : imRegistry<vendor><Product>.

Ajoutez vos fonctions KQL aux imRegistry analyseurs d’unification pour vous assurer que tout contenu utilisant le modèle d’événement du Registre utilise également votre nouvel analyseur.

Filtrage des paramètres de l’analyseur

Les analyseurs d’événements du Registre prennent en charge les paramètres de filtrage. Bien que ces paramètres soient facultatifs, ils 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 événements de Registre qui se sont produits à ou après cette date. 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 événements de Registre qui se sont produits à cette heure ou avant. 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.
eventtype_in Dynamique Filtrez uniquement les événements de Registre pour lesquels le type d’événement est l’une des valeurs répertoriées, notamment : RegistryKeyCreated, RegistryKeyDeletedRegistryKeyRenamed, RegistryValueDeleted, ou RegistryValueSet.
actorusername_has_any Dynamique Filtrez uniquement les événements de Registre pour lesquels le nom d’utilisateur de l’acteur a l’une des valeurs répertoriées.
registrykey_has_any Dynamique Filtrez uniquement les événements de Registre pour lesquels la clé de Registre a l’une des valeurs répertoriées.
registryvalue_has_any Dynamique Filtrez uniquement les événements de Registre pour lesquels la valeur de Registre contient l’une des valeurs répertoriées.
registrydata_has_any Dynamique Filtrez uniquement les événements de Registre pour lesquels les données du Registre ont l’une des valeurs répertoriées.
dvchostname_has_any Dynamique Filtrez uniquement les événements de Registre pour lesquels le nom d’hôte de l’appareil a l’une des valeurs répertoriées.

Par exemple, pour filtrer uniquement les événements de création de clé de Registre du dernier jour, utilisez :

_Im_RegistryEvent (eventtype_in=dynamic(['RegistryKeyCreated']), starttime = ago(1d), endtime=now())

Contenu normalisé

Microsoft Sentinel fournit la requête de repérage de clé de Registre IFEO persistante. Cette requête fonctionne sur toutes les données d’activité du Registre normalisées à l’aide du modèle d’informations de sécurité avancées.

Pour plus d’informations, consultez Rechercher les menaces avec Microsoft Sentinel.

Détails du schéma

Le modèle d’informations sur les événements du Registre est aligné sur le schéma d’entité du Registre OSSEM.

Champs ASIM courants

Importante

Les champs communs à tous les schémas sont décrits en détail dans l’article Champs communs ASIM .

Champs communs avec des instructions spécifiques

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

Field Classe Type Description
EventType Obligatoire Énumérés Décrit l’opération signalée par l’enregistrement.

Pour les enregistrements du Registre, les valeurs prises en charge sont les suivantes :
- RegistryKeyCreated
- RegistryKeyDeleted
- RegistryKeyRenamed
- RegistryValueDeleted
- RegistryValueSet
EventSchemaVersion Obligatoire SchemaVersion (String) Version du schéma. La version du schéma documentée ici est 0.1.3
EventSchema Obligatoire String Le nom du schéma documenté ici est RegistryEvent.
Champs Dvc Pour les événements d’activité du Registre, les champs d’appareil font référence au système sur lequel l’activité du Registre s’est produite.

Tous les champs courants

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, reportez-vous à l’article Champs communs ASIM .

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

Champs spécifiques à l’événement de registre

Les champs répertoriés dans le tableau ci-dessous sont spécifiques aux événements de Registre, mais sont similaires aux champs d’autres schémas et suivent des conventions d’affectation de noms similaires.

Pour plus d’informations, consultez La structure du Registre dans la documentation Windows.

Field Classe Type Description
RegistryKey Obligatoire String Clé de Registre associée à l’opération, normalisée aux conventions d’affectation de noms de clé racine standard. Pour plus d’informations, consultez Clés racines.

Les clés de Registre sont similaires aux dossiers dans les systèmes de fichiers.

Par exemple : HKEY_LOCAL_MACHINE\SOFTWARE\MTG
RegistryValue Recommandé String Valeur de Registre associée à l’opération. Les valeurs de Registre sont similaires aux fichiers dans les systèmes de fichiers.

Par exemple : Path
RegistryValueType Recommandé String Type de valeur de Registre, normalisé au format standard. Pour plus d’informations, consultez Types valeur.

Par exemple : Reg_Expand_Sz
RegistryValueData Recommandé String Données stockées dans la valeur de Registre.

Exemple : C:\Windows\system32;C:\Windows;
RegistryPreviousKey Recommandé String Pour les opérations qui modifient le Registre, la clé de Registre d’origine, normalisée en nommage de clé racine standard. Pour plus d’informations, consultez Clés racines.

Remarque : Si l’opération a modifié d’autres champs, tels que la valeur, mais que la clé reste la même, la propriété RegistryPreviousKey aura la même valeur que RegistryKey.

Exemple : HKEY_LOCAL_MACHINE\SOFTWARE\MTG
RegistryPreviousValue Recommandé String Pour les opérations qui modifient le Registre, le type de valeur d’origine est normalisé au format standard. Pour plus d’informations, consultez Types valeur.

Si le type n’a pas été modifié, ce champ a la même valeur que le champ RegistryValueType .

Exemple : Path
RegistryPreviousValueType Recommandé String Pour les opérations qui modifient le Registre, le type de valeur d’origine.

Si le type n’a pas été modifié, ce champ aura la même valeur que le champ RegistryValueType , normalisé au format standard. Pour plus d’informations, consultez Types valeur.

Exemple : Reg_Expand_Sz
RegistryPreviousValueData Recommandé String Données de Registre d’origine, pour les opérations qui modifient le registre.

Exemple : C:\Windows\system32;C:\Windows;
Utilisateur Alias Alias du champ ActorUsername .

Exemple : CONTOSO\ dadmin
Processus Alias Alias du champ ActingProcessName .

Exemple : C:\Windows\System32\rundll32.exe
ActorUsername Obligatoire Nom d’utilisateur (chaîne) Nom d’utilisateur de l’utilisateur qui a lancé l’événement.

Exemple : CONTOSO\WIN-GG82ULGC9GO$
ActorUsernameType Conditionnelle Énumérés Spécifie le type du nom d’utilisateur stocké dans le champ ActorUsername . Pour plus d’informations, consultez L’entité Utilisateur.

Exemple : Windows
ActorUserId Recommandé String ID unique de l’acteur. L’ID spécifique dépend du système qui génère l’événement. Pour plus d’informations, consultez L’entité Utilisateur.

Exemple : S-1-5-18
ActorScope Facultatif String Étendue, telle que Microsoft Entra locataire, dans laquelle ActorUserId et ActorUsername sont définis. ou plus d’informations et la liste des valeurs autorisées, consultez UserScope dans l’article Vue d’ensemble du schéma.
ActorUserIdType Conditionnelle Énumérés Type de l’ID stocké dans le champ ActorUserId . Pour plus d’informations, consultez L’entité Utilisateur.

Exemple : SID
ActorSessionId Facultatif String ID unique de la session de connexion de l’acteur.

Exemple : 999

Remarque : Le type est défini en tant que chaîne pour prendre en charge différents systèmes, mais sur Windows, cette valeur doit être numérique. Si vous utilisez une machine Windows et que la source envoie un autre type, veillez à convertir la valeur. Par exemple, si la source envoie une valeur hexadécimale, convertissez-la en valeur décimale.
ActingProcessName Facultatif String Nom de fichier du fichier image de processus agissant. Ce nom est généralement considéré comme le nom du processus.

Exemple : C:\Windows\explorer.exe
ActingProcessId Obligatoire String ID de processus (PID) du processus d’action.

Exemple : 48610176

Remarque : Le type est défini en tant que chaîne pour prendre en charge différents systèmes, mais sur Windows et Linux cette valeur doit être numérique.

Si vous utilisez un ordinateur Windows ou Linux et que vous avez utilisé un autre type, veillez à convertir les valeurs. Par exemple, si vous avez utilisé une valeur hexadécimale, convertissez-la en valeur décimale.
ActingProcessGuid Facultatif GUID (Chaîne) Identificateur unique (GUID) généré du processus d’action.

Exemple : EF3BD0BD-2B74-60C5-AF5C-010000001E00
ParentProcessName Facultatif String Nom du fichier image du processus parent. Cette valeur est généralement considérée comme le nom du processus.

Exemple : C:\Windows\explorer.exe
ParentProcessId Obligatoire String ID de processus (PID) du processus parent.

Exemple : 48610176
ParentProcessGuid Facultatif String Identificateur unique (GUID) généré du processus parent.

Exemple : EF3BD0BD-2B74-60C5-AF5C-010000001E00

Champs d’inspection

Les champs suivants sont utilisés pour représenter l’inspection effectuée par un système de sécurité tel qu’un système EDR.

Field Classe Type Description
RuleName Facultatif String Nom ou ID de la règle associé aux résultats de l’inspection.
RuleNumber Facultatif Entier Numéro de la règle associée aux résultats de l’inspection.
Règle Conditionnelle String La valeur de kRuleName ou la valeur de RuleNumber. Si la valeur de RuleNumber est utilisée, le type doit être converti en chaîne.
ThreatId Facultatif String ID de la menace ou du programme malveillant identifié dans l’activité de fichier.
ThreatName Facultatif String Nom de la menace ou du programme malveillant identifié dans l’activité de fichier.

Exemple : EICAR Test File
ThreatCategory Facultatif String Catégorie de la menace ou du programme malveillant identifié dans l’activité de fichier.

Exemple : Trojan
ThreatRiskLevel Facultatif RiskLevel (Integer) Niveau de risque associé à la menace identifiée. 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 ThreatOriginalRiskLevel.
ThreatOriginalRiskLevel Facultatif String Niveau de risque indiqué par l’appareil de création de rapports.
ThreatField Facultatif String Champ pour lequel une menace a été identifiée.
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 d’origine de la menace identifiée, tel que signalé par l’appareil de création de rapports.
ThreatIsActive Facultatif Booléen True si la menace identifiée est considérée comme une menace active.
ThreatFirstReportedTime Facultatif DateHeure La première fois que l’adresse IP ou le domaine ont été identifiés comme une menace.
ThreatLastReportedTime Facultatif DateHeure Dernière fois que l’adresse IP ou le domaine ont été identifiés comme une menace.

Clés racines

Différentes sources représentent des préfixes de clé de Registre utilisant différentes représentations. Pour les champs RegistryKey et RegistryPreviousKey , utilisez les préfixes normalisés suivants :

Préfixe de clé normalisé Autres représentations courantes
HKEY_LOCAL_MACHINE HKLM, \REGISTRY\MACHINE
HKEY_USERS HKU, \REGISTRY\USER

Types de valeur

Différentes sources représentent des types de valeurs de Registre à l’aide de représentations différentes. Pour les champs RegistryValueType et RegistryPreviousValueType , utilisez les types normalisés suivants :

Préfixe de clé normalisé Autres représentations courantes
Reg_None None, %%1872
Reg_sz String, %%1873
Reg_Expand_Sz ExpandString, %%1874
Reg_Binary Binary, %%1875
Reg_dword Dword, %%1876
Reg_Multi_Sz MultiString, %%1879
Reg_QWord Qword, %%1883

Mises à jour de schéma

Voici les modifications apportées à la version 0.1.1 du schéma :

  • Ajout du champ EventSchema.

Voici les modifications apportées à la version 0.1.2 du schéma :

  • Ajout des champs ActorScope, DvcScopeIdet DvcScope.

Voici les modifications apportées à la version 0.1.3 du schéma :

  • Ajout de champs d’inspection.

Prochaines étapes

Pour plus d’informations, reportez-vous aux rubriques suivantes :