USB et périphériques
Historique des périphériques USB
Fiche forensique USB : clés USBSTOR et USB, numéros de série, première et dernière connexion, lettres de lecteur, setupapi.dev.log et événements.
- Emplacement
- SYSTEM\CurrentControlSet\Enum\USBSTOR
- Prouve
- Quels supports USB ont été branchés, quand pour la première et la dernière fois, et par qui
- Horodatages
- Propriétés 0064 à 0067 et LastWrite de MountPoints2 en FILETIME, UTC ; setupapi.dev.log en heure locale ; journaux d'événements en UTC
- Rétention
- Clés persistantes jusqu'à désinstallation ou nettoyage ; les mises à jour de fonctionnalités peuvent réinitialiser USBSTOR et setupapi.dev.log
- Accès
- Administrateur ; SYSTEM, SOFTWARE et NTUSER.DAT verrouillés à chaud : collecte en NTFS brut (KAPE) ou VSS ; journaux setupapi copiables
- Preuve de
- USB et périphériques
- Type
- Registre
- Windows
- XPVista / 78 / 8.11011
- Cible KAPE
- RegistryHivesSystemRegistryHivesUserUSBDevicesLogsEventLogs
- Velociraptor
- Windows.Triage.Targets:RegistryHivesSystemRegistryHivesUserUSBDevicesLogsEventLogs
Outils
Comparer tous les outilsPrésentation
Windows conserve plusieurs traces indépendantes à chaque branchement d'un périphérique USB : le gestionnaire Plug and Play enregistre le périphérique dans la ruche SYSTEM, le gestionnaire de montage attribue une lettre de lecteur, le profil de l'utilisateur enregistre le point de montage, l'installation du pilote est journalisée dans un fichier texte et, sous Windows 10/11, plusieurs journaux d'événements capturent la connexion. Aucune source n'est complète : l'enquête consiste à les corréler autour du numéro de série du périphérique et du numéro de série du volume.
Emplacement
| Artefact | Emplacement | Windows |
|---|---|---|
| Supports de stockage USB | SYSTEM\ControlSet00x\Enum\USBSTOR\<Disk&Ven_&Prod_&Rev_>\<série> | Toutes |
| Tous les périphériques USB (VID/PID) | SYSTEM\ControlSet00x\Enum\USB\VID_xxxx&PID_yyyy\<série> | Toutes |
| Heures de connexion | ...\<série>\Properties\{83da6326-97a6-4088-9453-a1923f573b29}\0064 / 0065 / 0066 / 0067 | 0064/0065 : 7+ ; 0066/0067 : 8+ |
| Lettres de lecteur et GUID de volume | SYSTEM\MountedDevices | Toutes |
| Noms conviviaux (téléphones, MTP, disques) | SOFTWARE\Microsoft\Windows Portable Devices\Devices | Vista+ |
| Numéro de série du volume (ReadyBoost) | SOFTWARE\Microsoft\Windows NT\CurrentVersion\EMDMgmt | Vista+ (non renseigné quand le disque système est un SSD) |
| Utilisateur ayant monté le volume | NTUSER.DAT\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\{GUID de volume} | Toutes |
| Première installation | C:\Windows\inf\setupapi.dev.log (C:\Windows\setupapi.log sous XP) | Toutes |
| Événements de connexion | Microsoft-Windows-Partition/Diagnostic 1006 ; Microsoft-Windows-Kernel-PnP/Configuration 400/410 ; Microsoft-Windows-DriverFrameworks-UserMode/Operational (désactivé par défaut) | 10 / 11 |
Ce que l'artefact prouve
- Un support USB d'un fabricant, modèle et numéro de série donnés a été connecté à cet hôte.
- Quand : première installation, dernière connexion et dernier retrait (Windows 8+), plus les connexions individuelles d'après les journaux.
- Quelle lettre de lecteur il a reçue et, via
MountPoints2, quel utilisateur était connecté au montage. - Avec le numéro de série du volume, on relie le support aux fichiers LNK, Jump Lists et ShellBags qui référencent des fichiers qu'il contenait.
- Un numéro de série dont le deuxième caractère est
&a été généré par Windows parce que le périphérique n'a pas de série unique ; il n'est pas stable d'un hôte à l'autre.
Champs clés
| Champ | Signification |
|---|---|
| Nom de sous-clé USBSTOR | Classe, fabricant, produit et révision |
| Nom de sous-clé de série | Numéro de série du périphérique (ou identifiant généré par Windows) |
FriendlyName | Nom affiché à l'utilisateur |
ContainerID | Relie l'entrée USBSTOR à l'entrée Enum\USB et aux autres entrées correspondantes |
0064 | Date de première installation |
0065 | Date d'installation (dernière installation du pilote) |
0066 | Date de dernière arrivée (connexion) |
0067 | Date de dernier retrait |
Données de MountedDevices | Relient \DosDevices\E: ou un GUID de volume à l'identifiant du périphérique |
Horodatages
| Horodatage | Positionné quand | Format | Pièges |
|---|---|---|---|
Propriétés 0064 à 0067 | Installation, arrivée, retrait du périphérique | FILETIME, UTC | Seuls le premier et le plus récent événement sont conservés |
Lignes « Section start » de setupapi.dev.log | Installation du pilote | Texte, heure locale | À convertir avec le fuseau de l'hôte (UTC et heure locale) |
LastWrite de MountPoints2\{GUID} | Montage du volume dans la session de cet utilisateur | FILETIME, UTC | Dernier montage pour cet utilisateur |
| Partition/Diagnostic 1006 | Chaque connexion / montage de volume | UTC | Contient capacité, numéros de série et données de partition (parfois le VBR) |
Rétention et effacement
- Les entrées du registre persistent jusqu'à leur suppression (désinstallation dans le Gestionnaire de périphériques, outils de nettoyage comme USBOblivion).
- Les mises à jour de fonctionnalités de Windows peuvent supprimer
USBSTORet les clésEnumassociées et recréersetupapi.dev.log; des données migrées peuvent subsister sousSYSTEM\Setup\Upgrade\Pnp\CurrentControlSet\Control\DeviceMigration, et des ruches plus anciennes dansWindows.oldet les clichés instantanés. - Les journaux tournent ; le canal Partition/Diagnostic est généralement petit.
Collecte
- Cibles KAPE :
RegistryHivesSystem,RegistryHivesUser,USBDevicesLogs(journaux setupapi) etEventLogs; la cible composéeUSBDetectiveles regroupe. - Velociraptor (
Windows.Triage.Targets) : mêmes noms ;Windows.Registry.MountPoints2etWindows.Detection.Thumbdrives.Listaident en direct. - Commandes natives :
reg query HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR /s
reg query HKLM\SYSTEM\MountedDevices
findstr /i "USBSTOR" C:\Windows\inf\setupapi.dev.log
wevtutil qe Microsoft-Windows-Partition/Diagnostic /f:text /c:20
Outils d'analyse
- Registry Explorer / RECmd (Eric Zimmerman) : signets et fichiers batch dédiés à l'USB.
- RegRipper : plugins
usbstor,usb,mountdev,mp2. - USBDeview (NirSoft) : vue d'ensemble en direct de tous les périphériques déjà connectés.
- EvtxECmd : maps pour Partition/Diagnostic 1006 et les événements Kernel-PnP.
Conseils d'investigation
- Pivotez sur le numéro de série du périphérique entre
USBSTOR,USB,MountedDevicesetWindows Portable Devices, puis sur le numéro de série du volume vers les entrées LNK et Jump List. - Construisez une chronologie des connexions à partir de Partition/Diagnostic 1006 : il enregistre chaque connexion, contrairement au registre qui ne garde que la première et la dernière.
- Comparez
0066/0067avec SRUM et l'activité fichiers pour montrer que des données ont été copiées pendant la fenêtre de connexion. - Vérifiez si une mise à jour de fonctionnalités a eu lieu après l'incident avant de conclure qu'un support n'a jamais été branché.
- Les téléphones et appareils photo (MTP) apparaissent sous
Windows Portable Deviceset dans les ShellBags, pas dansUSBSTOR.
Artefacts liés
- ShellBagsFiche ShellBags : clés BagMRU et Bags dans UsrClass.dat et NTUSER.DAT, shell items, horodatages des dossiers, dossiers supprimés et USB, analyse avec SBECmd.
- Fichiers de raccourci LNKFiche LNK : raccourcis du dossier Recent, première et dernière ouverture, horodatages de la cible, numéro de série, partage réseau et adresse MAC.
- Jump ListsFiche Jump Lists : AutomaticDestinations et CustomDestinations, AppID, entrées DestList avec dernier accès, nombre d'accès, épinglage, et JLECmd.
- Journaux d'événements Windows (EVTX)Fiche des journaux d'événements Windows : emplacements EVTX, ID indispensables (connexions, processus, services, effacement), rétention, audit et outils.
- Ruches du registreFiche ruches du registre : SYSTEM, SOFTWARE, SAM, SECURITY, NTUSER.DAT, UsrClass.dat, journaux de transactions, RegBack, LastWrite et collecte.
- Images disque montées (ISO, IMG, VHD, VHDX)Fiche images disque montées : ISO/IMG/VHD/VHDX, événements VHDMP, MountedDevices, traces LNK et Jump Lists, failles Mark-of-the-Web et méthode de détection.
- Périphériques Bluetooth appairésFiche Bluetooth : clés BTHPORT des appareils appairés, adresses MAC et noms, dates LastSeen/LastConnected, BTHENUM, journaux et transferts fsquirt.
Termes du glossaire
- Numéro de série de volumeL'identifiant écrit sur un volume lors de son formatage ; enregistré dans les LNK et le Prefetch, il rattache une activité à un volume précis.
- ControlSet et CurrentControlSetLes jeux de configuration numérotés de la ruche SYSTEM ; CurrentControlSet est un lien d'exécution absent d'une ruche analysée hors ligne.
- LastWrite d'une clé de RegistreL'unique FILETIME stocké dans chaque clé de Registre, qui indique en UTC la dernière modification de la clé ou de l'une de ses valeurs.
- UTC et heure locale dans les artefacts WindowsPourquoi certains artefacts Windows enregistrent l'UTC et d'autres l'heure locale, et comment la clé TimeZoneInformation aide à normaliser une chronologie.