Aller au contenu

Réseau et accès distant

Traces de connexions RDP

Fiche forensique RDP : ID côté cible (4624 type 10, 1149, 21 à 25, 131) et traces côté source (clés Terminal Server Client, Default.rdp, événement 1024).

Emplacement
C:\Windows\System32\winevt\Logs\Microsoft-Windows-TerminalServices-*.evtx
Prouve
Qui s'est connecté en RDP, depuis quelle IP, quand, et vers quels hôtes un utilisateur s'est connecté
Horodatages
SystemTime des événements en UTC ; LastWrite des clés client Servers et Default en FILETIME, UTC ; modification $SI de Default.rdp, UTC
Rétention
Journaux Operational RDP petits, en rotation rapide sur serveur chargé ; clés MRU et Servers persistantes jusqu'à suppression par l'utilisateur
Accès
Administrateur pour exporter les EVTX (verrouillés à chaud : wevtutil ou KAPE EventLogs-RDP) ; clés client dans NTUSER.DAT, verrouillé en session
Type
Journal d'événements
Windows
Vista / 78 / 8.11011
Cible KAPE
EventLogs-RDPRegistryHivesUser
Velociraptor
Windows.Triage.Targets:EventLogs-RDPRegistryHivesUser

Présentation

Les sessions RDP (Remote Desktop Protocol) laissent des traces aux deux extrémités. Sur la cible (la machine à laquelle on se connecte), plusieurs canaux de journaux enregistrent la connexion réseau, l'authentification et le cycle de vie de la session. Sur la source (la machine d'où l'utilisateur se connecte), le client Bureau à distance (mstsc.exe) conserve un historique des serveurs et des noms d'utilisateur, ainsi que son propre journal. Ensemble, ils constituent la principale preuve d'un mouvement latéral interactif.

Emplacement

Côté cible (journaux dans C:\Windows\System32\winevt\Logs\) :

CanalÉvénements
Security4624 (connexion de type 10, ou 7 en reconnexion/déverrouillage), 4625, 4634/4647, 4778 (session reconnectée), 4779 (session déconnectée)
Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational1149 : authentification réussie pour une connexion réseau (utilisateur, domaine, IP source)
Microsoft-Windows-TerminalServices-LocalSessionManager/Operational21 ouverture de session, 22 démarrage du shell, 23 fermeture, 24 déconnexion, 25 reconnexion (chacun avec l'adresse source)
Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational131 : le serveur a accepté une nouvelle connexion TCP (IP et port du client)

Côté source :

EmplacementContenu
NTUSER.DAT\Software\Microsoft\Terminal Server Client\DefaultMRU0…MRU9 : serveurs récents saisis dans le client
NTUSER.DAT\Software\Microsoft\Terminal Server Client\Servers\<hôte>UsernameHint (compte utilisé), CertHash
C:\Users\<user>\Documents\Default.rdp (caché)Paramètres de la dernière connexion, dont full address
Microsoft-Windows-TerminalServices-RDPClient/Operational1024 : le client tente de se connecter à un serveur ; 1102 : le client a initié une connexion multi-transport vers une IP
%LOCALAPPDATA%\Microsoft\Terminal Server Client\Cache\Cache bitmap RDP

Ce que l'artefact prouve

  • Côté cible : un compte s'est authentifié en RDP depuis une IP source à un moment donné, et la durée de la session (ouverture → déconnexion/fermeture).
  • Côté source : un utilisateur de cette machine s'est connecté (ou a tenté de le faire) à ces hôtes, avec tel nom de compte.
  • Le 1149 seul prouve l'authentification réussie d'une connexion réseau, pas une ouverture de session interactive complète ; confirmez avec 4624 type 10 et LocalSessionManager 21/22.

Champs clés

ChampOùSignification
LogonType462410 = RemoteInteractive ; 7 = déverrouillage/reconnexion (types de connexion)
IpAddress, WorkstationName4624 / 4625Source de la connexion (le nom de poste est le nom NetBIOS du client)
TargetLogonId4624Relie la connexion aux événements suivants de la même session
User, Session ID, Source Network AddressLocalSessionManager 21 à 25Cycle de vie de la session par utilisateur
UsernameHintClé ServersCompte saisi par l'utilisateur pour cet hôte

Horodatages

HorodatagePositionné quandFormatPièges
SystemTime de l'événementEnregistrement de l'événementUTCLes visionneuses affichent l'heure locale ; normalisez avant de corréler
LastWrite de Servers\<hôte>Première connexion ou changement de réglages pour cet hôteFILETIME, UTCPas mis à jour à chaque connexion
LastWrite de DefaultMise à jour de la liste MRUFILETIME, UTCNe date que le MRU0 le plus récent
Modification $SI de Default.rdpLe client a enregistré ses derniers réglagesNTFS, UTCDernière connexion uniquement

Rétention et effacement

  • Les canaux Operational liés à RDP sont petits et tournent vite sur un serveur chargé ; le journal Security peut tourner encore plus vite.
  • Un utilisateur peut retirer des serveurs de l'historique du client, ce qui supprime la valeur MRU et la sous-clé Servers ; Default.rdp, le journal RDPClient et le cache bitmap peuvent subsister.
  • L'effacement des journaux produit 1102 / 104 ; vérifiez les copies du SIEM et les clichés instantanés.

Collecte

  • Cible KAPE : EventLogs-RDP (Security, System et les canaux RDP) et RegistryHivesUser pour les clés du client ; RDPCache et RDPLogs existent pour les fichiers associés.
  • Velociraptor (Windows.Triage.Targets) : EventLogs-RDP et RegistryHivesUser ; Windows.EventLogs.RDPAuth et Windows.Registry.RDP les analysent en direct.
  • Commandes natives :
Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-LocalSessionManager/Operational' | Where-Object Id -in 21,22,23,24,25
Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational' | Where-Object Id -eq 1149
reg query "HKCU\Software\Microsoft\Terminal Server Client" /s

Outils d'analyse

  • EvtxECmd (Eric Zimmerman) : maps pour tous les canaux RDP ; filtrez par ID dans Timeline Explorer.
  • Hayabusa / Chainsaw : synthèses de connexions RDP et règles Sigma intégrées.
  • Registry Explorer / RegRipper (plugin tsclient) : clés Terminal Server Client.
  • Velociraptor : Windows.EventLogs.RDPAuth, Windows.Registry.RDP.

Conseils d'investigation

  • Construisez un tableau par session sur la cible : 131 (TCP) → 1149 (authentification) → 4624 type 10 → 21/22 → 24/25 → 23 ; les étapes manquantes indiquent souvent ce qui a échoué.
  • Les IP sources des 1149 et 21 désignent la prochaine machine à examiner ; sur cette source, confirmez avec la clé Servers, mstsc.exe dans UserAssist et la Jump List de mstsc.
  • Des connexions depuis 127.0.0.1 ou ::1 évoquent un RDP tunnelé par une redirection de port locale (via SSH ou un proxy inverse, par exemple).
  • Le cache bitmap du client peut montrer ce que l'utilisateur a réellement vu à l'écran distant.
  • Des comptes de service ou des comptes locaux récemment créés utilisant RDP sont une piste forte ; vérifiez la création de comptes (4720) dans SAM et comptes utilisateurs.

Artefacts liés

Termes du glossaire

Guides

Tous les artefacts sur une page : aide-mémoire