/
/

Comment vérifier l’historique des connexions Bureau à distance et établir une chronologie prête pour un audit

par Grant Funtila, Technical Writer   |  
traduit par Laurie Mouret
Comment vérifier l'historique des connexions Bureau à distance et établir une chronologie prête pour un audit

Points clés

  • Connaissez vos sources de journaux : Windows consigne l’activité RDP dans le journal de sécurité, dans le journal opérationnel « TerminalServices-LocalSessionManager » et dans le journal opérationnel « TerminalServices-RemoteConnectionManager ».
  • Utilisez les identifiants d’événement appropriés : 1149 (connexion réseau), 4624/4625 (connexion réussie/échouée), 21 à 25, 39 et 40 (cycle de vie de la session), et 4778/4779 (reconnexion/déconnexion).
  • Exportations de scripts avec Get-WinEvent : Utilisez la commande « Get-WinEvent » de PowerShell avec l’option « -FilterHashtable » pour extraire et exporter les événements RDP des journaux de sécurité, LSM et RCM au format CSV.
  • Créer des chronologies de session en mettant en corrélation les événements : Faites correspondre l’événement 1149 avec l’événement 4624 (à ±1 minute près) afin d’établir un lien entre une connexion et un utilisateur authentifié ainsi qu’une adresse IP source.
  • Compléter les journaux du serveur avec des éléments provenant du côté client : La clé de registre « HKCUSoftwareMicrosoftTerminal Server ClientDefault » enregistre les cibles RDP récemment contactées lorsque le programme mstsc.exe est utilisé.
  • Conservation et centralisation des journaux : Augmentez la taille du journal de sécurité au-delà de la valeur par défaut, archivez les journaux avant leur remplacement et utilisez la fonctionnalité de transfert d’événements Windows (Windows Event Forwarding) ou une solution SIEM pour centraliser les données RDP.

Le Remote Desktop Protocol (RDP) laisse des traces dans les journaux Windows. Le défi consiste à distinguer les sessions interactives à distance des connexions via la console et à rassembler ces événements pour en faire un récit cohérent. Cet article présente des identifiants d’événements, des filtres et un modèle de corrélation simple, ainsi que des éléments côté client et des conseils pratiques tirés de l’expertise informatique sur le terrain et de guides d’administration.

Quels fichiers journaux Windows enregistrent l’activité RDP ?

Trois canaux d’événements sont concernés :

  • le journal de sécurité (événements d’authentification 4624, 4625, 4634, 4647, 4778, 4779),
  • le journal « TerminalServices-LocalSessionManager/Operational » (événements liés au cycle de vie des sessions 21 à 25, 39 et 40), et
  • le journal « TerminalServices-RemoteConnectionManager/Operational » (événement de connexion pré-authentification 1149).

Chaque canal couvre une étape différente d’une connexion RDP (établissement de la connexion réseau, authentification et gestion de la session active) et une chronologie d’audit complète nécessite les trois.

Consulter l’historique des connexions sur l’ordinateur de bureau et établir une chronologie

La vérification de l’historique des connexions sur les postes de travail et la création d’une chronologie impliquent de mapper les sources d’événements, d’extraire l’historique, de regrouper les événements en sessions, de recenser les défaillances, d’ajouter des artefacts, de centraliser et de conserver les données, ainsi que d’analyser les résultats.

📌 Conditions préalables :

  • Un administrateur local ou équivalent sur les systèmes cibles
  • Accès à l’Observateur d’événements ou accès à distance via PowerShell
  • Un espace partagé central ou une solution SIEM pour stocker les exportations et les journaux d’exécution
  • Transfert facultatif des événements Windows pour éviter les lacunes liées au renouvellement des fichiers journaux

Étape 1 : Répertorier les sources d’événements

📌 Cas d’utilisation : vous devez déterminer quels canaux d’événements Windows enregistrent les événements d’authentification et lesquels fournissent le contexte des sessions RDP et des connexions à des fins d’analyse.

  1. Appuyez sur Win + R, saisissez « eventvwr.msc », puis appuyez sur Entrée.
  2. Accédez à l’emplacement suivant :
    • Journaux des applications et services > Microsoft > Windows > TerminalServices-LocalSessionManager > Operational TerminalServices-RemoteConnectionManager > Operational
  3. Passez en revue les identifiants d’événements clés par contexte :
    • Authentification (journal de sécurité) : 4624, 4625, 4634, 4647
    • Connexion RDP (avant la connexion) : 1149
    • Activité des sessions RDP (après connexion) : 21, 22, 23, 24, 25, 39, 40
    • Reconnexion/déconnexion RDP (journal de sécurité) : 4778, 4779

Remarque : les identifiants d’événement 39 et 40 permettent de distinguer un utilisateur qui s’est déconnecté de manière formelle (Démarrer > Se déconnecter) de celui qui a simplement fermé la fenêtre RDP. Les identifiants d’événement 4778 et 4779 du journal de sécurité enregistrent le même cycle de reconnexion/déconnexion et indiquent l’adresse IP du client, ce qui les rend utiles pour l’attribution de la source.

Tableau récapitulatif de tous les identifiants d’événement

ID d’événementJournalDescriptionContexte
1149RCM/OpérationnelConnexion réseau établie (pré-authentification)Connexion
4624SécuritéConnexion réussie (filtre LogonType 10, 7, 3)Authentification
4625SécuritéTentative de connexion infructueuseAuthentification
4778SécuritéLa session s’est reconnectée à la station WindowsReconnexion
4779SécuritéSession déconnectée de la station WindowsDéconnexion
21LSM/OpérationnelConnexion à la session réussieSession
22LSM/OpérationnelNotification de démarrage du shellSession
23LSM/OpérationnelDéconnexion de la session réussieDéconnexion
24LSM/OpérationnelSession interrompueDéconnexion
25LSM/OpérationnelReconnexion à la session réussieReconnexion
39LSM/OpérationnelSession déconnectée par l’utilisateur/l’administrateur (formel)Déconnexion
40LSM/OpérationnelSession déconnectée avec le code de motifDéconnexion
4634SécuritéDéconnexion du compteDéconnexion
4647SécuritéDéconnexion initiée par l’utilisateurDéconnexion

Étape 2 : Récupérer l’historique avec PowerShell

📌 Cas d’utilisation : exportez les événements RDP pertinents provenant de plusieurs canaux à des fins d’analyse ou d’archivage.

Remarque : utilisez la commande Get-WinEvent pour toutes les requêtes relatives au journal des événements. L’ancienne cmdlet Get-EventLog s’appuie sur une API Win32 obsolète, renvoie des résultats inexacts dans certains cas et a été entièrement supprimée dans PowerShell 7. Tous les scripts présentés dans cet article utilisent Get-WinEvent en conséquence.

  1. Appuyez sur la touche Windows, saisissez « PowerShell », puis cliquez sur « Exécuter en tant qu’administrateur ».
  2. Copiez et collez le script suivant dans l’invite de commande avant d’appuyer sur Entrée :
# Security Log (success & failure)

Get-WinEvent -FilterHashtable @{

LogName = 'Security'

Id = 4624,4625

StartTime = (Get-Date).AddDays(-7)

} | ForEach-Object {

$xml = [xml]$_.ToXml()

[PSCustomObject]@{

TimeCreated = $_.TimeCreated

EventID = $_.Id

LogonType = ($xml.Event.EventData.Data | Where-Object { $_.Name -eq 'LogonType' }).'#text'

User = ($xml.Event.EventData.Data | Where-Object { $_.Name -eq 'TargetUserName' }).'#text'

IpAddress = ($xml.Event.EventData.Data | Where-Object { $_.Name -eq 'IpAddress' }).'#text'

}

} | Export-Csv C:\Logs\SecurityEvents_WithLogonType.csv -NoTypeInformation

  1. Puis, utilisez le script suivant :
Get-WinEvent -LogName "Microsoft-Windows-TerminalServices-LocalSessionManager/Operational" |

Export-Csv C:\Logs\LSM_Events.csv -NoTypeInformation

Étape 3 : Regrouper en sessions

📌 Cas d’utilisation : créez des chronologies de session en associant les identifiants de connexion des utilisateurs, leurs adresses IP et la durée de leurs sessions.

  1. Associez l’événement 1149 (RCM) à l’événement 4624 (LogonType 10) :
    • Effectuez une corrélation sur le nom d’utilisateur et l’horodatage ± 1 minute.
      Remarque : filtrez également selon le LogonType 7 (reconnexion à une session existante) et le LogonType 3 (RDP au niveau du réseau dans certaines configurations). Si vous appliquez un filtre portant exclusivement sur la valeur 10 de LogonType, vous risquez de passer à côté d’événements de reconnexion.
  2. Comparez LSM 22 (début du shell) pour vérifier qu’une session est active.
  3. Utilisez LSM 23 ou 24 pour déterminer la fin de la session.
  4. Calculez la durée de la session à l’aide des horodatages.

Étape 4 : Capturer les échecs et les anomalies

📌 Cas d’utilisation : détectez les tentatives d’attaques par force brute, de « credential spray » ou d’utilisation abusive des comptes.

  1. Ouvrez l’Observateur d’événements > Journaux Windows > Sécurité.
  2. À droite, cliquez sur « Filtrer le journal actuel… »
  3. Dans le champ « ID d’événement », saisissez « 4625 », puis cliquez sur OK.
  4. Double-cliquez sur n’importe quel événement pour l’ouvrir. Dans l’onglet « Général » ou « Détails », recherchez les éléments suivants :
    • TargetUserName (la personne visée)
    • IpAddress (provenance)
    • Status/SubStatus (raison de l’échec)

Étape 5 : Ajouter des artefacts

📌 Cas d’utilisation : effectuez une corrélation depuis le poste de travail de l’opérateur lorsque les journaux côté serveur sont manquants.

  1. Appuyez sur Win + R, saisissez « regedit », puis appuyez sur Entrée.
  2. Accédez à cet emplacement :
    • HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default
  3. À droite, vous verrez des entrées telles que MRU0, MRU1 et MRU2, qui contiennent des noms de serveurs ou des adresses IP. Notez les cibles qui comptent vraiment.

Remarque : les clés de registre HKCU\Software\Microsoft\Terminal Server Client\Default sont renseignées par l’outil intégré « Connexion Bureau à distance » (mstsc.exe), qui reste pris en charge pour les connexions RDP directes de pair à pair. Si votre entreprise utilise l’application Windows App (qui remplace l’ancienne application Remote Desktop Store et le client MSI de Microsoft, et qui est requise pour les connexions à Azure Virtual Desktop, Windows 365 et Microsoft Dev Box), il se peut que ces clés de registre ne soient pas présentes. Dans ce cas, vérifiez les artefacts spécifiques aux applications Windows ou les journaux de session dans le portail Azure ou dans Intune. Si la connexion RDP n’a pas été lancée depuis ce poste de travail ou si un outil d’accès à distance tiers a été utilisé, ces traces peuvent ne pas être présentes, quel que soit le client.

Ensuite, suivez les étapes ci-dessous :

  1. Ouvrez l’explorateur de fichiers.
  2. Dans la barre d’adresse, collez ceci :
    1. %AppData%\Microsoft\Windows\Recent\AutomaticDestinations\
  3. Triez par « Date de modification ».
  4. Recherchez les fichiers volumineux ou récents. Ces données peuvent être analysées à l’aide d’outils d’investigation, mais leur simple présence et leurs horodatages sont déjà révélateurs.

Suivez ensuite les étapes ci-dessous :

  1. Dans l’Explorateur de fichiers, accédez à l’emplacement suivant :
    1. C:\Utilisateurs\<nom d’utilisateur>\Documents\
  2. Dans le champ de recherche situé en haut à droite, saisissez ce qui suit :
    • *.rdp
  3. Notez les noms des fichiers et leurs dates de modification

Remarque : les fichiers .rdp sont des éléments facultatifs côté client et ne sont présents que si un utilisateur a enregistré manuellement un fichier de connexion RDP. Leur absence n’empêche pas l’utilisation du RDP.

Étape 6 : Centraliser et conserver

📌 Cas d’utilisation : garantissez une visibilité en continu et éviter toute perte de journaux.

  1. Appuyez sur Win + R, saisissez « eventvwr.msc », puis appuyez sur Entrée.
  2. Accédez à « Journaux Windows > Sécurité ».
  3. Faites un clic droit sur « Sécurité » et sélectionnez « Propriétés ».
  4. Définissez une taille maximale plus importante pour le fichier journal.
  5. Sélectionnez « Remplacer les événements » si nécessaire ou « Archiver le journal lorsqu’il est plein », puis cliquez sur OK.

Remarque : il n’y a pas de taille recommandée pour le journal de sécurité. Une approche courante consiste à dimensionner le fichier journal en fonction du volume d’événements prévu et de la durée de conservation souhaitée.

Pour enregistrer une copie, procédez comme suit :

  1. Dans l’Observateur d’événements, faites un clic droit sur « Sécurité » > « Enregistrer tous les événements sous… »
  2. Sélectionnez un emplacement, par exemple C:\Logs\Security_<date>.evtx.
  3. Faites de même pour les éléments suivants :
    • TerminalServices-LocalSessionManager / Operational
    • TerminalServices-RemoteConnectionManager / Operational

7ème étape : Résultats opérationnels

📌 Cas d’utilisation : transformez les données en actions concrètes tout en préservant l’intégrité des audits.

  1. Ouvrez des tickets en cas d’échecs répétés, de nouvelles adresses IP sources ou de couverture insuffisante des journaux.
  2. Joignez le calendrier aux comptes rendus d’incidents et aux bilans trimestriels des services.
  3. Tous les mois, examinez les données relatives à l’enregistrement des sessions ainsi que les exceptions en matière d’accès.

Bonnes pratiques en matière d’audit et de conservation de l’historique des connexions à distance

Le tableau ci-dessous résume les bonnes pratiques à respecter lors de la vérification de l’historique des connexions au bureau à distance :

Bonne pratiqueActionValeur apportée
Priorité à la sécurité, au LSM et au RCMCouverture plus étendueUn triage plus rapide et plus sûr
Filtrer par LogonType 10 et identifiantsClassification correcteDistinction claire entre RDP et la console
Ajouter les événements « pre-auth » et « auth »Attribution de la sourceMappage précis entre les utilisateurs et les adresses IP
Standardiser au format CSV et JSONPreuveAudits récurrents et QBR
Transmettre et conserver les journauxFiabilitéCalendriers disponibles en cas de besoin

NinjaOne vous aide à consulter l’historique de vos connexions à distance

Avec NinjaOne, vous pouvez déployer des scripts de collecte et de surveillance en fonction du rôle de chaque appareil, collecter et analyser de manière centralisée les données des journaux d’événements, joindre les conclusions pertinentes à la documentation informatique et configurer des alertes capables de créer des tickets en cas de situations notables (telles que des pics de pannes ou une activité inhabituelle). Certaines configurations spécifiques à Windows, telles que le transfert d’événements, doivent être activées au niveau du système d’exploitation.

Veillez à ce que l’historique de vos connexions RDP soit clair et simple

Des filtres précis et un modèle de corrélation simple vous garantissent que votre historique RDP est clair et précis. Associez les événements serveur aux artefacts client et programmez des exportations afin de savoir qui s’est connecté, quand et depuis où, ce qui permet également de préparer les artefacts en vue d’audits et d’enquêtes.

Articles connexes :

FAQs

Extrayez les entrées RCM 1149 et LSM 21 à 25 des journaux opérationnels des services de terminal afin de reconstituer l’activité des sessions RDP. Ces événements vous permettent d’identifier les tentatives de connexion, les débuts de session, les déconnexions et les sorties du système, ce qui peut servir à reconstituer une chronologie de base même lorsque les journaux de sécurité ne sont plus disponibles.

Triez les événements du groupe 4625 par adresse IP source et par SubStatus. La défaillance d’une seule source affectant plusieurs comptes laisse supposer un comportement de « spray ». Un compte ayant enregistré plusieurs échecs de connexion à partir d’une adresse IP d’entreprise connue est généralement dû à une erreur de l’utilisateur.

Utilisez le code RCM 1149 sur le serveur pour l’adresse IP du client au moment de la connexion et établissez une corrélation avec les journaux du pare-feu ou du VPN qui répertorient les traductions NAT ou les sessions utilisateur au cours de cette minute.

N’oubliez pas que l’événement 1149 se déclenche avant l’authentification. Si le client se déconnecte ou si l’authentification échoue, vous n’obtiendrez pas l’événement 4624. Vérifiez également les paramètres de la politique d’audit et assurez-vous que la journalisation de sécurité est activée et que sa capacité est adaptée.

En règle générale, il est recommandé de conserver au moins 12 mois de données chronologiques. Si vous effectuez des analyses trimestrielles, conserver les données des cinq derniers trimestres peut vous aider à identifier les tendances d’une année sur l’autre. Veillez à ce que la durée de conservation soit toujours conforme aux exigences réglementaires et organisationnelles.

You might also like

Prêt à simplifier les aspects les plus complexes de l'informatique et de la sécurité ?