Jako, że poprzednie wpisy dotyczące analizy Rejestru pod kątem urządzeń USB dotyczyły głównie systemu Windows XP, chciałbym w tym wpisie przedstawić różnice pomiędzy XP a systemami Vista i Windows 7, gdzie zakres informacji o podłączanych do komputera urządzeniach USB jest nieco inny. Ponadto, zarówno dla Windows Vista jak i Windows 7 występują znaczące różnice pomiędzy urządzeniami typu ‘jump’ i ‘enclosure’, gdzie:
- Jump – czyli inaczej ‘thumb drives’, ‘usb stick’, ‘pendrive’ a w Polsce po prostu ‘pamięć USB’ czyli urządzenia oparte o pamięć typu flash,
- Enclosure – czyli dyski zewnętrzne (typu IDE lub SATA) w obudowach pozwalających na ich podłączenie przez USB (także write-blockery, czy tak zwane ‘usb cradle’, czyli urządzenia pozwalające na podłączenie dysku IDE lub SATA).
Dla trzech pierwszych elementów układanki, tj:
- ID dostawcy i ID produktu dla każdego urządzenia USB wpiętego do komputera – na podstawie danych z firmware zapisanych w urządzeniu
- Numeru seryjnego urządzenia
- Nazwy dostawcy i urządzenia
nie ma znaczących zmian pomiędzy systemami XP, Vista i 7, w związku z czym aktualne pozostają informacje z jednego z poprzednich wpisów.
Dla pozostałych informacji, jest to odrobinę bardziej skomplikowane (w dzisiejszym odcinku – czasy podłączeń). Do rzeczy:
- Data i czas pierwszego podłączenia urządzenia do systemu (tylko w Windows Vista)
LastWriteTime kluczy
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBSTOR\Disk&Ven_{nazwa dostawcy}&Prod_{nazwa produktu}&Rev_{numer rewizji sprzętu}\Device Parameters\Partmgr
lub
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBSTOR\Disk&Ven_{nazwa dostawcy}&Prod_{nazwa produktu}&Rev_{numer rewizji sprzętu}\Device Parameters\MediaChangeNotification
Uwagi:
- W podkluczach klucza
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBzawarta jest informacja o czasie pierwszego podłączenia urządzenia po ostatnim restarcie systemu
-
MediaChangeNotification
nie występuje dla urządzeń typu enclosure
- W podkluczach klucza
- Data i czas pierwszego podłączenia urządzenia do systemu (tylko w Windows 7 – tylko dla urządzeń typu Jump)
LastWriteTime kluczy
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBSTOR\Disk&Ven_{nazwa dostawcy}&Prod_{nazwa produktu}&Rev_{numer rewizji sprzętu}\Device Parameters (LogConf, Properties)
lub
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBSTOR\Disk&Ven_{nazwa dostawcy}&Prod_{nazwa produktu}&Rev_{numer rewizji sprzętu}\Device Parameters (LogConf, Properties)
- Data i czas pierwszego podłączenia urządzenia do systemu (tylko w Windows 7 – tylko dla urządzeń typu enclosure)
LastWriteTime klucza
HKLM\SYSTEM\{CurrentControlSet}\Enum\USBSTOR\Disk&Ven_{nazwa dostawcy}&Prod_{nazwa produktu}&Rev_{numer rewizji sprzętu}\Device Parameters\PartMgr
Uwagi:
-
MediaChangeNotification
nie jest używany
- Większość pozostałych kluczy związanych z urządzeniem w USB i USBSTOR zawiera informację o czasie pierwszego podłączenia urządzenia po restarcie systemu
-
- Data i czas ostatniego podłączenia urządzenia do systemu (tylko w Windows Vista i 7 – urządzenia typu Jump)
LastWriteTime klucza
HKEY_CURRENT_USER\Software\Microsoft\Windows\
CurrentVersion\Explorer\MountPoints2\{GUID}gdzie GUID bierzemy z
HKLM\System\MountedDevices
na podstawie identyfikatora urządzenia z
HKLM\System\{CurrentControlSet}\Enum\USBSTORUwagi:
- Mimo zmiany z ParentIdPrefix na identyfikator urządzenia metoda ta działa tylko dla urządzeń typu Jump, w związku z czym jesteśmy w stanie ustalić w powyższy sposób czas ostatniego połączenia.
- Data i czas ostatniego podłączenia urządzenia do systemu (enclosures)
LastWriteTime klucza
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\{GUID}gdzie GUID bierzemy z
HKLM\System\MountedDevices
na podstawie 12-bajtowej sygnatury dysku
Uwagi:
- Dla enclosures nie ma możliwości bezpośredniego połączenia zawartości kluczy USB i USBSTOR z MountedDevices i MountPoints2
- Ustalenie 12-bajtowej sygnatury dysku możliwe jest jedynie w przypadku posiadania fizycznego dostępu do tego dysku
- W przypadku Windows 7 LastWriteTime to data ostatniego odłączenia urządzenia USB od systemu (o ile urządzenie zostało odłączone)
- Data i czas ostatniego podłączenia urządzenia do systemu (Windows 7)
LastWriteTime klucza
HKLM\SYSTEM\{CurrentControlSet}\Enum\USB\Vid_{ID dostawcy}&Pid_{ID produktu}\{identyfikator urządzania}

