ANAVEM
Languageen
Windows security monitoring dashboard displaying Event ID 5139 registry deletion events in Event Viewer
Event ID 5139InformationMicrosoft-Windows-Security-AuditingWindows

ID d'événement Windows 5139 – Microsoft-Windows-Security-Auditing : Valeur de registre supprimée

L'ID d'événement 5139 enregistre lorsqu'une valeur de registre est supprimée sur les systèmes Windows avec l'audit d'accès aux objets activé. Critique pour la surveillance de la sécurité et le suivi de la conformité.

Emanuel DE ALMEIDAEmanuel DE ALMEIDA
18 mars 202612 min de lecture 0
Event ID 5139Microsoft-Windows-Security-Auditing 5 méthodes 12 min
Référence événement

Signification de cet événement

L'ID d'événement Windows 5139 représente un événement d'audit de sécurité qui documente les opérations de suppression de valeurs de registre dans le système d'exploitation Windows. Cet événement est généré lorsque le moniteur de référence de sécurité Windows détecte qu'une valeur de registre a été supprimée avec succès de la base de données du registre Windows. L'événement nécessite que l'audit d'accès aux objets soit activé via la stratégie de groupe ou la configuration de la stratégie de sécurité locale.

La structure de l'événement inclut des détails complets sur l'opération de suppression, y compris le chemin complet du registre de la valeur supprimée, l'identifiant de sécurité (SID) du compte utilisateur ayant effectué l'action, le nom et l'ID du processus responsable de la suppression, ainsi que des informations de timestamp. Cette capacité de journalisation granulaire rend l'ID d'événement 5139 particulièrement précieux pour la surveillance de la sécurité, l'audit de conformité et les scénarios d'analyse médico-légale.

Dans les environnements Windows Server 2025 et Windows 11 24H2, Microsoft a amélioré la journalisation des événements pour inclure un contexte supplémentaire sur la source de suppression et a amélioré les capacités de corrélation avec d'autres événements de sécurité. L'événement s'intègre à Windows Defender Advanced Threat Protection (ATP) et Microsoft Sentinel pour des scénarios de détection de menaces avancées, où les suppressions de valeurs de registre pourraient indiquer la suppression de mécanismes de persistance ou des activités anti-médico-légales par des acteurs malveillants.

Les organisations mettant en œuvre des modèles de sécurité zéro confiance bénéficient particulièrement de la surveillance de l'ID d'événement 5139, car les modifications du registre représentent souvent des tentatives d'escalade de privilèges ou des changements de configuration système pouvant impacter la posture de sécurité. L'événement joue également un rôle crucial dans les processus de gestion des changements, fournissant des pistes d'audit pour les actions administratives et les activités de gestion du cycle de vie des logiciels.

S'applique à

Windows 10Windows 11Windows Server 2019/2022/2025
Analyse

Causes possibles

  • Suppression administrative de valeurs de registre via l'Éditeur du Registre (regedit.exe)
  • Processus de désinstallation de logiciels supprimant des entrées de registre spécifiques à l'application
  • Traitement des stratégies de groupe supprimant des valeurs de registre obsolètes ou conflictuelles
  • Scripts PowerShell ou fichiers batch exécutant des commandes de suppression de registre
  • Utilitaires de maintenance système nettoyant les entrées de registre orphelines ou invalides
  • Logiciels malveillants ou acteurs de menace supprimant des valeurs de registre pour cacher des mécanismes de persistance
  • Processus de mise à jour Windows ou de mise à jour de fonctionnalités supprimant des valeurs de registre obsolètes
  • Outils d'optimisation système tiers effectuant des opérations de nettoyage de registre
  • Plantages d'applications ou arrêts incorrects déclenchant un nettoyage automatique du registre
  • Logiciels de sécurité supprimant des modifications de registre malveillantes ou suspectes
Méthodes de résolution

Étapes de dépannage

01

Examiner les détails de l'événement dans le Visualiseur d'événements

Commencez par examiner les détails spécifiques de l'ID d'événement 5139 pour comprendre quelle valeur de registre a été supprimée et par qui.

  1. Ouvrez Observateur d'événements en appuyant sur Win + R, en tapant eventvwr.msc, et en appuyant sur Entrée
  2. Accédez à Journaux WindowsSécurité
  3. Filtrez pour l'ID d'événement 5139 en cliquant avec le bouton droit sur le journal Sécurité et en sélectionnant Filtrer le journal actuel
  4. Entrez 5139 dans le champ ID d'événements et cliquez sur OK
  5. Double-cliquez sur un événement 5139 pour voir des informations détaillées, y compris :
    • Sujet (compte utilisateur qui a effectué la suppression)
    • Nom de l'objet (chemin complet du registre de la valeur supprimée)
    • Informations sur le processus (exécutable et ID de processus)
    • Informations sur la demande d'accès (droits d'accès demandés)
  6. Notez l'ID de connexion pour corréler avec les événements de connexion (4624/4625) pour un contexte supplémentaire

Utilisez PowerShell pour un filtrage plus efficace :

Get-WinEvent -FilterHashtable @{LogName='Security'; Id=5139} -MaxEvents 50 | Format-Table TimeCreated, Id, LevelDisplayName, Message -Wrap
02

Corréler avec les événements de processus et de connexion

Recoupez l'ID d'événement 5139 avec les événements de sécurité connexes pour obtenir une image complète de l'activité de suppression.

  1. Extrait l'ID de processus et l'ID de connexion des détails de l'événement 5139
  2. Recherchez les événements de création de processus (4688) avec un ID de processus correspondant :
$ProcessId = "0x1234"  # Remplacez par l'ID de processus réel de l'événement 5139
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4688} | Where-Object {$_.Message -like "*$ProcessId*"} | Select-Object TimeCreated, Message
  1. Identifiez la session de connexion en utilisant l'ID de connexion :
$LogonId = "0x5678"  # Remplacez par l'ID de connexion réel de l'événement 5139
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4624,4625} | Where-Object {$_.Message -like "*$LogonId*"} | Select-Object TimeCreated, Id, Message
  1. Vérifiez les événements de registre connexes autour de la même période :
$StartTime = (Get-Date).AddHours(-1)
$EndTime = Get-Date
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=5136,5137,5138,5139,5140,5141; StartTime=$StartTime; EndTime=$EndTime} | Sort-Object TimeCreated
  1. Documentez la chronologie et le contexte pour une enquête ou un rapport ultérieur
03

Activer l'audit avancé du registre

Configurez un audit complet du registre pour capturer des informations plus détaillées sur les modifications du registre.

  1. Ouvrez Group Policy Management Console ou Local Group Policy Editor (gpedit.msc)
  2. Accédez à Configuration de l'ordinateurParamètres WindowsParamètres de sécuritéConfiguration avancée de la stratégie d'auditStratégies d'auditAccès aux objets
  3. Configurez la stratégie Audit du registre :
    • Activez l'audit de Succès et Échec
    • Appliquez la stratégie en utilisant gpupdate /force
  4. Pour la surveillance de clés de registre spécifiques, configurez les entrées SACL (System Access Control List) :
# Exemple : Surveiller HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
$RegistryPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
$Acl = Get-Acl $RegistryPath
$AccessRule = New-Object System.Security.AccessControl.RegistryAuditRule("Everyone", "Delete,SetValue,CreateSubKey", "None", "None", "Success,Failure")
$Acl.SetAuditRule($AccessRule)
Set-Acl $RegistryPath $Acl
  1. Vérifiez que l'audit est actif en vérifiant la stratégie d'audit :
auditpol /get /subcategory:"Registry"
  1. Testez la configuration en supprimant une valeur de registre de test et en confirmant la génération de l'ID d'événement 5139
Astuce pro : Utilisez Sysmon (System Monitor) en parallèle avec l'audit Windows pour une surveillance améliorée du registre avec des capacités de contexte et de filtrage supplémentaires.
04

Mettre en œuvre la surveillance et l'alerte automatisées

Configurez la détection et la réponse automatisées pour les suppressions suspectes de valeurs de registre en utilisant PowerShell et le Planificateur de tâches Windows.

  1. Créez un script de surveillance PowerShell :
# Enregistrez sous Monitor-RegistryDeletions.ps1
param(
    [string]$LogName = "Security",
    [int]$EventId = 5139,
    [int]$MaxEvents = 100
)

$Events = Get-WinEvent -FilterHashtable @{LogName=$LogName; Id=$EventId; StartTime=(Get-Date).AddMinutes(-5)} -ErrorAction SilentlyContinue

foreach ($Event in $Events) {
    $EventXML = [xml]$Event.ToXml()
    $SubjectUserName = $EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "SubjectUserName"} | Select-Object -ExpandProperty "#text"
    $ObjectName = $EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "ObjectName"} | Select-Object -ExpandProperty "#text"
    $ProcessName = $EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "ProcessName"} | Select-Object -ExpandProperty "#text"
    
    # Définir des modèles suspects
    $SuspiciousKeys = @(
        "*\\Run*",
        "*\\RunOnce*",
        "*\\Winlogon*",
        "*\\Services*",
        "*\\Policies*"
    )
    
    foreach ($Pattern in $SuspiciousKeys) {
        if ($ObjectName -like $Pattern) {
            $AlertMessage = "ALERTE : Suppression suspecte de registre détectée`nUtilisateur : $SubjectUserName`nRegistre : $ObjectName`nProcessus : $ProcessName`nHeure : $($Event.TimeCreated)"
            Write-EventLog -LogName "Application" -Source "Registry Monitor" -EventId 1001 -EntryType Warning -Message $AlertMessage
            # Envoyer un email ou déclencher des actions de réponse supplémentaires ici
        }
    }
}
  1. Enregistrez le script en tant que tâche planifiée :
$Action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-ExecutionPolicy Bypass -File C:\Scripts\Monitor-RegistryDeletions.ps1"
$Trigger = New-ScheduledTaskTrigger -Once -At (Get-Date) -RepetitionInterval (New-TimeSpan -Minutes 5) -RepetitionDuration (New-TimeSpan -Days 365)
$Settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable
Register-ScheduledTask -TaskName "Registry Deletion Monitor" -Action $Action -Trigger $Trigger -Settings $Settings -User "SYSTEM"
  1. Créez une source d'événements personnalisée pour les alertes :
New-EventLog -LogName "Application" -Source "Registry Monitor"
  1. Configurez le transfert d'événements Windows (WEF) pour une surveillance centralisée dans les environnements d'entreprise
  2. Intégrez avec des solutions SIEM en utilisant Windows Event Collector ou des agents tiers
05

Analyse Forensique et Réponse aux Incidents

Effectuez une analyse médico-légale complète lorsque l'ID d'événement 5139 indique des incidents de sécurité potentiels ou des modifications non autorisées.

  1. Collectez des données d'événements complètes pour l'analyse :
# Exporter les événements de sécurité pour l'analyse médico-légale
$StartDate = (Get-Date).AddDays(-7)
$EndDate = Get-Date
$ExportPath = "C:\Forensics\SecurityEvents_$(Get-Date -Format 'yyyyMMdd_HHmmss').evtx"

wevtutil epl Security $ExportPath /q:"*[System[TimeCreated[@SystemTime>='$($StartDate.ToString('yyyy-MM-ddTHH:mm:ss.fffZ'))' and @SystemTime<='$($EndDate.ToString('yyyy-MM-ddTHH:mm:ss.fffZ'))']]]"
  1. Analysez les modèles de suppression de registre et corrélez-les avec les changements système :
# Analyser les modèles d'ID d'événement 5139
$RegistryDeletions = Get-WinEvent -FilterHashtable @{LogName='Security'; Id=5139; StartTime=$StartDate; EndTime=$EndDate}

$Analysis = $RegistryDeletions | ForEach-Object {
    $EventXML = [xml]$_.ToXml()
    [PSCustomObject]@{
        TimeCreated = $_.TimeCreated
        User = ($EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "SubjectUserName"})."#text"
        RegistryPath = ($EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "ObjectName"})."#text"
        Process = ($EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "ProcessName"})."#text"
        ProcessId = ($EventXML.Event.EventData.Data | Where-Object {$_.Name -eq "ProcessId"})."#text"
    }
}

$Analysis | Group-Object User, Process | Sort-Object Count -Descending | Format-Table Name, Count
  1. Vérifiez les options de sauvegarde et de récupération du registre :
# Vérifier les points de restauration système
Get-ComputerRestorePoint | Sort-Object CreationTime -Descending | Select-Object -First 10

# Examiner les journaux de transactions du registre
Get-ChildItem "C:\Windows\System32\config\" -Filter "*.LOG*" | Sort-Object LastWriteTime -Descending
  1. Documentez les résultats et créez une chronologie de l'incident :
# Générer un rapport d'incident
$ReportPath = "C:\Forensics\RegistryDeletionReport_$(Get-Date -Format 'yyyyMMdd_HHmmss').html"
$Analysis | ConvertTo-Html -Title "Registry Deletion Analysis" -PreContent "

Analyse de l'incident de suppression de registre

Généré : $(Get-Date)

" | Out-File $ReportPath
  1. Mettez en œuvre des mesures de confinement si une activité malveillante est suspectée :
    • Isoler les systèmes affectés du réseau
    • Préserver les preuves à l'aide d'outils d'imagerie disque
    • Réinitialiser les identifiants utilisateur compromis
    • Appliquer une surveillance et des contrôles d'accès supplémentaires
Avertissement : Pendant l'analyse médico-légale, évitez de faire des modifications au système qui pourraient écraser les preuves. Utilisez des outils d'analyse en lecture seule et maintenez une documentation appropriée de la chaîne de garde.

Aperçu

L'ID d'événement 5139 se déclenche chaque fois qu'une valeur de registre est supprimée sur les systèmes Windows avec l'audit d'accès aux objets configuré. Cet événement d'audit de sécurité capture des informations détaillées sur les modifications du registre, y compris la valeur spécifique supprimée, le compte utilisateur responsable et le processus qui a effectué la suppression. L'événement apparaît dans le journal de sécurité et nécessite une configuration appropriée de la politique d'audit pour être généré.

Cet événement sert de composant critique de la surveillance de la sécurité Windows, en particulier dans les environnements d'entreprise où les modifications du registre doivent être suivies pour des raisons de conformité ou d'enquête judiciaire. Contrairement aux événements de suppression de clés de registre, 5139 suit spécifiquement les suppressions de valeurs individuelles au sein des clés existantes. L'événement offre une visibilité granulaire sur les modifications du système qui pourraient indiquer des actions administratives légitimes, une désinstallation de logiciel ou une activité potentiellement malveillante tentant de supprimer des traces ou de désactiver des fonctionnalités de sécurité.

Les équipes de sécurité s'appuient sur cet événement pour surveiller les modifications non autorisées du registre, suivre les activités de suppression de logiciels et maintenir des pistes d'audit pour les cadres de conformité. L'événement capture à la fois les suppressions réussies et fournit un contexte sur le principal de sécurité et le processus impliqué, ce qui le rend précieux pour la réponse aux incidents et les enquêtes judiciaires.

Questions Fréquentes

Que signifie l'ID d'événement Windows 5139 et quand se produit-il ?+
L'ID d'événement 5139 indique qu'une valeur de registre a été supprimée avec succès du Registre Windows. Cet événement d'audit de sécurité se produit lorsque l'audit d'accès aux objets est activé et capture des informations détaillées sur les modifications du registre, y compris le compte utilisateur responsable, le chemin de registre spécifique affecté et le processus qui a effectué la suppression. L'événement est essentiel pour la surveillance de la sécurité, le suivi de la conformité et les enquêtes judiciaires dans les environnements d'entreprise.
Comment activer l'audit pour générer l'ID d'événement 5139 ?+
Pour générer l'ID d'événement 5139, vous devez activer l'audit d'accès aux objets via la stratégie de groupe. Accédez à Configuration de l'ordinateur → Paramètres Windows → Paramètres de sécurité → Configuration avancée de la stratégie d'audit → Stratégies d'audit → Accès aux objets, puis activez 'Audit du registre' pour les événements de réussite et d'échec. De plus, vous devrez peut-être configurer les Listes de contrôle d'accès système (SACL) sur des clés de registre spécifiques que vous souhaitez surveiller. Appliquez la stratégie en utilisant 'gpupdate /force' et vérifiez avec 'auditpol /get /subcategory:Registry'.
L'ID d'événement 5139 peut-il indiquer une activité malveillante ?+
Oui, l'ID d'événement 5139 peut indiquer une activité malveillante, en particulier lorsque des valeurs de registre sont supprimées de lieux critiques pour la sécurité tels que les clés Run, les entrées Winlogon ou les configurations de service. Les acteurs malveillants suppriment souvent des valeurs de registre pour éliminer des mécanismes de persistance, désactiver des logiciels de sécurité ou dissimuler leurs traces lors d'activités anti-forensiques. Les schémas suspects incluent des suppressions par des processus inattendus, des suppressions en dehors des heures de travail ou des suppressions massives de valeurs de registre liées à la sécurité. Toujours corréler avec d'autres événements de sécurité et l'activité des utilisateurs pour un contexte approprié.
Quelles informations sont incluses dans l'ID d'événement 5139 ?+
L'ID d'événement 5139 contient des détails complets, y compris le Sujet (SID du compte utilisateur, nom, domaine et ID de connexion), les informations sur l'Objet (chemin de la clé de registre et nom de la valeur), les détails du Processus (nom, ID et chemin de l'exécutable), les informations sur la Demande d'accès (droits d'accès demandés) et les données de l'horodatage. L'événement inclut également l'ID de connexion qui peut être corrélé avec les événements de connexion (4624/4625) pour comprendre le contexte de la session. Ces informations détaillées le rendent précieux pour l'analyse de sécurité et les activités de réponse aux incidents.
Comment puis-je filtrer et analyser efficacement les événements d'ID d'événement 5139 ?+
Utilisez la cmdlet Get-WinEvent de PowerShell avec FilterHashtable pour un filtrage efficace : 'Get-WinEvent -FilterHashtable @{LogName='Security'; Id=5139; StartTime=(Get-Date).AddDays(-1)}'. Pour une analyse avancée, analysez les données d'événements XML pour extraire des champs spécifiques tels que les noms d'utilisateur, les chemins de registre et les informations sur les processus. Vous pouvez également utiliser Windows Event Forwarding (WEF) pour centraliser les événements de plusieurs systèmes, ou intégrer avec des solutions SIEM pour une analyse automatisée. Envisagez d'utiliser Sysmon en parallèle avec l'audit natif de Windows pour des capacités de surveillance du registre améliorées avec de meilleures fonctionnalités de filtrage et de corrélation.
Documentation

Références (2)

Emanuel DE ALMEIDA
Écrit par

Emanuel DE ALMEIDA

Senior IT Journalist & Cloud Architect

Microsoft MCSA-certified Cloud Architect | Fortinet-focused. I modernize cloud, hybrid & on-prem infrastructure for reliability, security, performance and cost control - sharing field-tested ops & troubleshooting.

Événements Windows associés

Windows security monitoring dashboard displaying audit events and privilege tracking logs
Event 6276
Microsoft-Windows-Security-Auditing
Windows EventInformation

ID d'événement Windows 6276 – Microsoft-Windows-Security-Auditing : Privilèges spéciaux attribués à une nouvelle connexion

L'ID d'événement 6276 enregistre lorsque des privilèges spéciaux sont attribués à un compte utilisateur lors de la connexion, indiquant que des droits d'accès élevés ont été accordés pour la session.

18 mars9 min
Windows security monitoring dashboard displaying privilege assignment events in a professional SOC environment
Event 6274
Microsoft-Windows-Security-Auditing
Windows EventInformation

ID d'événement Windows 6274 – Microsoft-Windows-Security-Auditing : Privilèges spéciaux attribués à une nouvelle connexion

L'ID d'événement 6274 enregistre lorsque des privilèges spéciaux sont attribués à une nouvelle session de connexion utilisateur, indiquant que des droits d'accès élevés ont été accordés pour des opérations sensibles à la sécurité.

18 mars9 min
Network Policy Server monitoring dashboard showing authentication events and security logs
Event 6273
Microsoft-Windows-Security-Auditing
Windows EventInformation

ID d'événement Windows 6273 – Microsoft-Windows-Security-Auditing : Accès accordé par le serveur de stratégie réseau

L'ID d'événement 6273 indique que le serveur de politique réseau (NPS) a accordé l'accès au réseau à un utilisateur ou un appareil après une authentification et une autorisation réussies via les protocoles RADIUS.

18 mars9 min
Network operations center displaying Windows NPS authentication monitoring dashboards and security event logs
Event 6272
Microsoft-Windows-Security-Auditing
Windows EventInformation

ID d'événement Windows 6272 – Microsoft-Windows-Security-Auditing : Serveur de stratégie réseau a accordé l'accès

L'ID d'événement 6272 indique que le serveur de politique réseau (NPS) a accordé l'accès au réseau à un utilisateur ou un appareil après une authentification et une autorisation réussies via les protocoles RADIUS.

18 mars12 min

Discussion

Partagez vos réflexions et analyses

Vous devez être connecté pour commenter.

Chargement des commentaires...