Rejestr(ując) aktywności związane z dokumentami

counterintelligence.pl 1 rok temu

Dwa ostatnie posty dotyczyły ukrywania śladów złośliwej aktywności w środowisku i próbom zmylenia analityków. Tym razem skupimy się na śladach pozwalających ustalić to czym zajmował się użytkownik bądź napastnik. Analiza powłamaniowa może mieć bowiem dwa główne cele. W przypadkach najczęściej kojarzonych z threat intelligence będziemy starali się wykryć aktywności atakujących prowadzących zdalne operacje, po uzyskaniu dostępu no urządzenia przez sieć. Jesteśmy w końcu jednak na counterintelligence.pl, a równie ważnym aspektem aktywności kontrwywiadowczej jest analiza aktywności użytkowników mających jak najbardziej uprawniony dostęp do środowiska. Mowa o szeroko pojętym ’insider threat’, czyli zagrożeniach wynikających z wykorzystania pozycji w organizacji do własnych celów jak np.: szpiegostwa przemysłowego. I w tym kontekście spojrzymy na bardziej subtelne ślady. Rejestr systemu Windows pomoże nam w analizie aktywności związanych z przeglądaniem dokumentów.

Źródeł informacji o tym co użytkownik robił może być wiele, włączając w to monitorowanie na żywo choćby dzięki dostępu zapewnianego przez system EDR. My jednak skupimy się na typowo przypadku w którym analizowana jest zawartość zabezpieczonego systemu, bez żadnych szczególnych narzędzi. Pozostają więc artefakty systemu Windows. A jednym z najbogatszych artefaktów jest właśnie rejestr systemowy. O strukturze rejestru wspominałem już w poście poświęconym technikom anti-forensics, teraz możemy skupić się na konkretnych kluczach i wartościach.

Ponieważ próbujemy odkryć działania napastnika, to głównym źródłem dla naszej analizy będą klucze zawarte w plikach adekwatnych dla użytkownika, nie komputera. Konkretnie zajmiemy się NTUSER.DAT, który domyślnie znajduje się w katalogu użytkownika.

Plik NTUSER.DAT naszego podejrzanego – Dave’a.

O ile klucze SAM, SOFTWARE, SYSTEM, SECURITY przechowują informacje o konfiguracji urządzenia, to w NTUSER.DAT przechowywane są indywidualne ustawienia użytkownika. Plik ten umożliwia systemowi operacyjnemu zachowanie konfiguracji pomiędzy kolejnymi uruchomieniami komputera, a także lepszą współpracę z użytkownikiem. W kluczach zapisane są bowiem dane o ostatnich czynnościach, co sprawia, iż system „uczy się” najczęściej wykorzystywanych funkcjonalności.

W analizie wpisów pomoże nam ponownie Registry Explorer, który to posiada szereg wbudowanych funkcjonalności ułatwiających zaglądanie w rejestr. o ile korzystamy z obrazu dysku to możemy otworzyć plik NTUSER.DAT, jednak dla odmiany skorzystamy z funkcji odczytania kluczy z uruchomionego systemu:

Wybieramy plik naszego podejrzanego i po chwili dane zostaną załadowane:

Nad tabelką z wylistowanymi kluczami i podkluczami znajdziemy dwa przydatne narzędzia – wyszukiwarkę i zakładkę Available bookmarks. Szczególnie interesujący jest ten drugi element, znajdziemy tam skróty do pozycji rejestru najczęściej wykorzystywanych w analizie takich jak WordWheelQuery czy RecentDocs. Funkcja ta przyspiesza więc znacząco wstępną analizę. Przejdźmy teraz do poszczególnych wpisów rejestru i tego jakie informacje może na ich podstawie ustalić. Ważna uwaga – ponieważ najpopularniejszym obecnie system operacyjnym jest Windows 10 to właśnie na nim będziemy prowadzić analizę.

Skoro chcemy skupić się na szpiegostwie i wykradaniu danych, to w pierwszej kolejności spójrzmy na ślady wyszukiwania plików. Jednym z popularnych narzędzi w tym zakresie jest wyszukiwarka wbudowana w Explorer i znajdująca się w prawym górnym rogu okna eksploratora:

Jak widzimy na załączonym obrazku Windows zapisuje historię naszych wyszukiwań, i właśnie ta historia jest naszym pierwszym artefaktem. W kluczu Software\Microsoft\Windows\CurrentVersion\Explorer\WordWheelQuery znajdziemy bowiem właśnie wpisy historii:

Każdy użytkownik Windowsa zetknął się również z charakterystycznym oknem eksploratora wykorzystywanym przez wiele programów do otwierania i zapisywania plików:

Informacje o historii plików otwieranych i zapisanych w ten sposób Windows przechowuje w kluczu Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidMRU. o ile spojrzymy na jego strukturę w Registry Explorer, to zobaczymy, iż klucz zawiera wpisy odpowiedzialne za poszczególne typy plików:

Wyjątkiem jest klucz oznaczony jako „*”. W nim znajdziemy dwadzieścia ostatnich plików niezależnie od ich rozszerzenia. Jak widzimy na załączonym obrazku, w przypadku mojej analizy Registry Explorer w kolumnie Absolute Path nie wyodrębniał nazwy pliku, a jedynie ścieżkę folderu. W takim razie musimy spojrzeć w szczegóły konkretnego wpisu:

Alternatywnie możemy również przyjrzeć się wprost zawartości wpisów w kluczach odpowiedzialnych za konkretne typy plików. Widok to nie jest tak przyjazny jak dane w poprzednim oknie, ale również pozwalają na ustalenie plików którymi interesował się użytkownik:

Kiedy wiemy już czego użytkownik szukał systemie i jakie dokumenty go interesowały, przejdźmy do ostatnio otwieranych dokumentów standardowo zapisywanych w kluczu Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDoc. Domyślnie Registry Explorer pokaże nam taki widok, listując ostatnie wpisy:

Jest to jednak już niejako obrobiona wersja wpisów, która może przyspieszyć analizę, jednak należy zrozumieć dlaczego wygląda tak, a nie inaczej – i czemu kolumna dotycząca ostatniego otwarcia pliku nie jest całkiem wypełniona. Podobnie jak w przypadku ComDlg32 i OpenSavePidMRU, o ile rozwiniemy klucz to znajdziemy tam pozycje odpowiedzialne za poszczególne typy plików. Ponieważ na szczycie listy znaleźliśmy dokument invoice.docx, to zobaczmy jakie informacje znajdziemy w kluczu odpowiedzialnym za to rozszerzenie.

Jeżeli porównamy dostępne sygnatury czasowe to odkryjemy, iż czas ostatniego otwarcia pliku jest w istocie datą ostatniego czasu zapisu do klucza. Dlatego też czas ostatniego otwarcia będzie dostępny dla ostatniego pliku danego typu. Sam Registry Explorer nazywa kolumnę „Extension Last Opened”. Trzeba też zwrócić uwagę, iż ponieważ czas ten wynika z czasu ostatniego zapisu to wpłyną na niego manipulacje rejestru zupełnie nie związane z otwieraniem plików – np.: o ile rejestr zostanie manualnie zmodyfikowany. W przypadku pakietu Office dodatkowym źródłem informacji będą klucze File MRU zawarte w Software\Microsoft\[wersja pakietu]\[program]\File MRU, tak jak w naszym przykładzie tutaj:

Na analizowanym systemie zainstalowany jest pakiet Office 2021 co przekłada się na konkretną składnię kluczy. o ile mielibyśmy do czynienia z pakietem Office 365 to w kluczu zawarty byłby również identyfikator konta użytkownika rozpoczynający się od „LiveID_”.

Jeżeli jesteśmy już przy dokumentach to interesującym artefaktem jest też pozycja kursora. Korzystając z pakietu Office prawdopodobnie spotkaliśmy się z tym, iż system pomocnie podpowiada w którym miejscu ostatnio skończyliśmy pracę z dokumentem. Kliknięcie w dymek przy pasku przewijania pozwoli na wrócić do tego miejsca. Rejestr zapisuje również te informację. W kluczu „Software\Microsoft\[wersja pakietu]\[program]\Reading Locations” znajdziemy listę plików, i wartość Position:

Prowadząc analizę aktywności użytkownika i mając dostęp do dokumentów, które miałby wykradać podejrzany możemy wykorzystać te wiedzę ściągając plik i manualnie ustawiając wartość w rejestrze. W ten sposób możemy potencjalnie ustalić którym fragmentem dokumentu interesował się sprawca.

Rejestr może dostarczyć nam bardzo dużo informacji na temat interakcji z dokumentami. Analizując historię wyszukiwań czy otwierania i zapisywania plików możemy określić o jakich plikach użytkownik już wiedział, czego szukał, jakie pliki otwierał, a choćby w którym miejsce dokumentu zakończył pracę. Z perspektywy ustalania intencji i odtwarzania działania podejrzanego jest to niezwykle cenny zestaw informacji. Sprawy nie obejmujące technicznych środków włamania jak RATy, rootkity i keyloggery często mogą być bardziej wymagające z punktu widzenia analityka. Bez wyraźnych artefaktów technicznych jak zainstalowany malware czy próba eskalacji uprawnień szczególnie ważne jest zrozumienie przebiegu wydarzeń i celów napastnika. Dlatego też zrozumienie tego jak system uczy się naszej aktywności starając się przyśpieszyć pracę zdecydowanie pomoże w naszych DFIRowych zmaganiach.

Idź do oryginalnego materiału