27 maja 2010

Jak odtworzyć historię wykorzystania pamięci USB?

To zaskakujące i fascynujące zarazem, jak wiele informacji skrywają w swych zakamarkach nowoczesne systemy operacyjne na temat praktycznie wszelkich odbywających się w ich ramach zdarzeń. Załóżmy więc przykładowo, że chcielibyśmy odtworzyć dokładną historię wykorzystania pamięci USB w systemie Windows 7. W jaki sposób możemy tego dokonać? Wystarczy tylko wiedzieć, gdzie takowe informacje się znajdują, a będziemy w stanie  ustalić niezwykle szczegółową historię zdarzeń.

Czy to w informatyce śledczej, czy to w przypadku incydentów bezpieczeństwa występujących w firmach i instytucjach, szczególnego znaczenia nabrała obecnie analiza wykorzystania w systemach komputerowych pamięci USB flash. Pamięci tego typu są obecnie używane nie tylko do uruchamiania nielegalnych lub niepożądanych programów na komputerach firmowych, ale również mogą zostać wykorzystane do kradzieży danych przez zwalnianych lub nielojalnych pracowników. Warto więc wiedzieć, że możliwe jest bardzo dokładne ustalenie historii wykorzystania tego typu przenośnych nośników. Warto zapoznać się z poniższym przykładem również z tego względu, że świetnie obrazuje on to, jak niesamowite ilości szczegółowych informacji przechowują dzisiejsze systemy operacyjne.

Użycie pamięci USB flash pozostawia w systemie operacyjnym Windows (a dokładniej w jego rejestrze oraz plikach konfiguracyjnych) sporo śladów. Jako, że struktura rejestru w różnych wersjach systemów Windows jest różna, osoba przeprowadzająca dochodzenie musi wiedzieć, gdzie każda z wersji przechowuje dowody związane z pamięciami USB. Zobaczmy więc, gdzie tego rodzaju informacje możemy odnaleźć w przypadku Siódemki.

Przykładowa procedura zbierania informacji o wykorzystywanej w danym systemie Windows 7 pamięci USB może wyglądać następująco:
  • zbierz informacje o producencie, modelu, wersji oraz numerze seryjnym pamięci (wszystkie te informacje odnajdziemy w kluczu HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR),
  • zapisz VID (Vendor ID) oraz PID (Product ID) wyszukując w kluczu HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB ustalony wcześniej numer seryjny pamięci,
  • ustal literę napędu przypisaną w systemie do analizowanej pamięci USB (w kluczu HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices należy przeszukać poszczególne wpisy dotyczące liter napędów na wystąpienie numeru seryjnego pamięci),
  • zapisz identyfikatory GUID dla woluminów pamięci USB (w kluczu HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices należy przeszukać poszczególne wpisy dotyczące woluminów na wystąpienie numeru seryjnego pamięci),
  • ustal użytkowników korzystających z analizowanej pamięci (klucze HKEY_USERS\Identyfikator_użytkownika\Software\Microsoft\ Windows\CurrentVersion\Explorer\MountPoints2 należy przeszukać poszczególne wpisy dla każdego systemowego użytkownika na wystąpienie identyfikatorów GUID woluminów pamięci USB),
  • ustal dokładny czas oraz datę pierwszego podłączenia pamięci USB (informację tę odnajdziemy przeszukując plik tekstowy c:\windows\inf\setupapi.dev.log na wystąpienie numeru seryjnego pamięci),
  • ustal dokładny czas oraz datę pierwszego podłączenia pamięci USB od czasu ostatniego uruchomienia systemu (informację tę odnajdziemy przeszukując klucz HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ USBSTOR\Producent_Model_Wersja_Pamięci_USB na wystąpienie ostatniego wystąpienia numeru seryjnego pamięci),
  • ustal dokładny czas oraz datę ostatniego podłączenia pamięci USB (informację tę odnajdziemy przeszukując klucz HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ USB\VID_XXXX&PID_YYYY na wystąpienie ostatniego wystąpienia numeru seryjnego pamięci).
Jak widać na powyższym przykładzie, środowisko Windows 7 może dostarczyć śledczym lub też administratorom wyznaczonym do obsługi incydentu szereg bardzo ważnych cyfrowych dowodów dotyczących użycia pamięci USB w systemie. Podsumowując, jesteśmy w stanie ustalić bardzo dokładną historię użycia konkretnego egzemplarza pamięci USB przez konkretnych użytkowników systemu Windows 7. Tego rodzaju dowody mogą z pewnością być bardzo przydatne. Warto więc zawsze pamiętać, że nowoczesne systemy operacyjne są prawdziwą kopalnią wiedzy na temat wszelkich zdarzeń, jakie zaszły w ich ramach. Warto o tym pamiętać zbierając cyfrowe dowody, warto jednak mieć to również na uwadze będąc zwykłym użytkownikiem tychże systemów...