Ktoś był w moim komputerze!

Kto zalogowany, jakie aplikacje

Wykonawszy te kroki sprawdźmy, kto jest aktualnie zalogowany w systemie. Może hasło administratora zostało rozszyfrowane i mamy kilka instancji użytkownika Administrator/Root? Może odkryjemy zupełnie nieznanego użytkownika, albo takiego, który na pewno nie powinien w danej chwili być zalogowany. W tym celu posłużymy się innym narzędziem od znanej nam już firmy SysInternals - psloggedon:

#/mnt/cdrom/nc -l -p 5000 > użytkownicy (MAGAZYN)

F:\> psloggedon.exe | nc 192.168.5.1 5000 -w 5 (PACJENT)

Jeszcze tylko suma kontrolna i gotowe. Dalej zobaczmy, jakie procesy działają w systemie. Pozwoli to zorientować się, czy nie zostały uruchomione nieznane nam aplikacje. Możemy dowiedzieć się m.in. jaka komenda została użyta do wywołania procesu, od kiedy proces działa, z jakich bibliotek korzysta itp.

W tym celu wykorzystamy znakomite narzędzie "pslist.exe" w Windows oraz standardową aplikację "ps" w Linuksie z odpowiednimi przełącznikami. W przypadku pslist wykorzystamy dwa warianty uruchomienia. Pierwszy z przełącznikiem "-t" pokaże drzewo procesów wraz z podprocesami. Drugi z przełącznikiem -x zobrazuje same procesy, wykorzystywaną przez nie pamięć oraz wątki. Procedura postępowania jest podobna do wcześniejszych działań:

#/mnt/cdrom/nc -l -p 5000 > procesy (MAGAZYN)

F:\> pslist.exe -t | nc 192.168.5.1 5000 -w 5 (PACJENT)

#/mnt/cdrom/nc -l -p 5000 > procesy_max (MAGAZYN)

F:\> pslist.exe -x | nc 192.168.5.1 5000 -w 5 (PACJENT)

F:\>nc -l -p 5000 > procesy (MAGAZYN)

#/mnt/cdrom/ps -efH | nc 192.168.5.1 5000 -w 5 (PACJENT)

Sumy kontrolne tworzymy już z przyzwyczajenia. Jeżeli od razu zauważymy, że w systemie obecny jest proces, którego zupełnie nie znamy i którego nie powinno być, możemy z marszu w celu późniejszej analizy zrzucić do pliku pamięć, która jest przez niego wykorzystywana:

F:\>Pmdump.exe [PID procesu] \\192.168.5.1\slady\zrzut_ircbot

Tym razem nie użyliśmy netcata. Ponieważ pmdump wymaga podania nazwy pliku - skorzystaliśmy z udziału dostępnego na Magazynie. No i suma kontrolna.

Otoczenie sieciowe

Kolejnym, bardzo ważnym krokiem w zbieraniu ulotnych śladów jest dowiedzenie się czegoś o szeroko rozumianym otoczeniu sieciowym. Pierwszą rzeczą, jaką możemy szybko sprawdzić, jest obecność sniffera w systemie. Oznaką jego bytności jest działanie karty sieciowej w trybie przekazywania pakietów tzw. promiscuous. W systemie Windows możemy to sprawdzić, używając narzędzia promqry.exe. Jest ono o tyle interesujące, że pokaże nam informacje o wszystkich interfejsach zapewniających komunikację, z podczerwienią włącznie, a także pozwoli zdalnie zbadać system:

#/mnt/cdrom/nc -l -p 5000 > sniffer (MAGAZYN)

F:\> promqry.exe | nc 192.168.5.1 5000 -w 10 (PACJENT)

W Linuksie z pomocą przyjdzie skompilowane statycznie dobrze znane narzędzie ifconfig:

F:\>nc -l -p 5000 > sniffer (MAGAZYN)

#/mnt/cdrom/ifconfig -a | grep PROMISC | nc 192.168.5.1 5000 -w 5 (PACJENT)

Ponadto szczególnie interesować nas będą następujące informacje o środowisku sieciowym:

  • zawartość tablicy ARP przechowującej informacje o powiązaniach adresów IP z adresami MAC kart sieciowych. Zarówno w Windows, jak i w Linuksie wykorzystujemy program "arp":

    #/mnt/cdrom/nc -l -p 5000 > tablica_arp (MAGAZYN)

    F:\> arp.exe -a | nc 192.168.5.1 5000 -w 5 (PACJENT)

  • stan tablicy routingu - być może została zmodyfikowana przez włamywacza

    #/mnt/cdrom/nc -l -p 5000 > tablica_rutingu (MAGAZYN)

    F:\> route.exe PRINT | nc 192.168.5.1 5000 -w 5 (PACJENT)

  • lista aktualnych połączeń - kto wie, może jesteśmy jeszcze połączeni ze sprawcą? Te informacje uzyskamy używając powszechnie stosowanego programu netstat:

    #/mnt/cdrom/nc -l -p 5000 > polaczenia (MAGAZYN)

    F:\> netstat.exe -ano | nc.exe 192.168.5.1 5000 -w 10 (PACJENT)

    W systemie Linux zamiast przełączników "-ano" używamy "-vnel". W ten sposób oprócz informacji o nawiązanych połączeniach otrzymamy listę nasłuchujących gniazd. Pamiętamy o sumach kontrolnych? Dodatkowo możemy sprawdzić, jakie porty są otwarte w naszym systemie i jakie aplikacje z nich korzystają. W Windows możemy do tego celu użyć w zasadzie niepozostawiającego śladów wykorzystania narzędzia openports.exe.

    #/mnt/cdrom/nc -l -p 5000 > otwarte_porty (MAGAZYN)

    F:\> openports.exe -lines -path | nc 192.168.5.1 5000 -w 5 (PACJENT)

    Czy to już koniec?

    To już prawie wszystkie informacje, jakie mogły wyparować z naszego komputera. Ale czy na pewno? W Windows warto jeszcze, tak na wszelki wypadek, przyjrzeć się zawartości rejestru. Spora grupa koni trojańskich zapewnia sobie spokojny żywot dzięki dodaniu wpisów w rejestrze. Nas interesują najczęściej wykorzystywane klucze, tj.:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Run

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\RunOnce

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\RunOnceEx

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceEx

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices

    Do pobrania wartości tych kluczy wykorzystamy standardowe narzędzie regedit.exe i wyeksportujemy wymienione wyżej klucze do plików na udziale sieciowym Magazynu.

    Można rzecz jasna pójść jeszcze dalej i zbierać informacje o sterownikach, już teraz pobrać zawartość pliku wymiany, sprawdzić zawartość schowka i wiele innych. My jednak chcieliśmy uzyskać najbardziej przydatne dane.

    Podczas tej długiej, usłanej kolcami drogi śledczego zebraliśmy sporo cennych informacji. Zanim zaparzymy kawę i udamy się na zasłużony odpoczynek przed... kolejnymi godzinami poświęconymi na przejrzenie naszego skarbca informacji, musimy wykonać jeszcze jedno, najbardziej czasochłonne zadanie: sporządzić kopię bitową dysku lub dysków twardych naszego spracowanego komputera.

    Dlaczego akurat kopię bitową? Jest to jedyna metoda uzyskania lustrzanego odbicia kopiowanego nośnika. Nie jest tutaj brana pod uwagę struktura logiczna dysku. Jest on po prostu kopiowany niskopoziomowo. Jeżeli wykonamy kopię tego rodzaju, nie ma możliwości ukrycia czegokolwiek, co znajduje się na dysku. Poza tym, a w zasadzie przede wszystkim, starą zasadą śledczych tropiących ślady elektroniczne jest nieużywanie do badań oryginałów. Zawsze pracujemy na kopii. Z tą uwagą w pamięci przechodzimy do czynów. I znów, jeżeli lubimy gadżety i dysponujemy gotówką możemy do tego celu użyć narzędzia sprzętowego. Przykładem może być EconoDupe (StorageHeaven). Mając takie narzędzie, możemy teraz śmiało odłączyć zasilanie od komputera, wyjąć dysk i wykonać kopię. W większości przypadków nie będziemy mieli jednak takiego komfortu i skorzystamy z wykorzystywanego już wcześniej narzędzia dd. W Windows tworzymy obraz pierwszego dysku:

    #/mnt/cdrom/nc -l -p 5000 > dysk.img (MAGAZYN)

    F:\>dd.exe if=\\.\PhysicalDrive0 | nc.exe 192.168.5.1 5000 (PACJENT)

    W Linuksie:

    F:\>nc.exe -l -p 5000 > dysk.img

    #/mnt/cdrom/dd if=/dev/hda | /mnt/cdrom/nc 192.168.5.5 5000 (PACJENT)

    Teraz możemy spokojnie odciąć maszynę od prądu i pozwolić jej odpocząć. Sami możemy zacząć przeszukiwać zgromadzone w Magazynie pliki. Może się zdarzyć, że oznaki działalności intruza zauważymy już na początku, przeglądając np. listę procesów, zawartość kluczy rejestru. Wtedy dość szybko dowiemy się co się stało. W większości przypadków niestety proces ten będzie dość żmudny. My jednak jesteśmy uparci i w końcu rozwiążemy zagadkę. Procedura drobiazgowej analizy zebranego materiału to temat na powieść. Ale przecież Internet to kopalnia wiedzy i w naszej determinacji na pewno znajdziemy tam wiele wskazówek.

    Jak przekonaliśmy się na własnej skórze, proces zbierania śladów elektronicznych w sposób możliwie profesjonalny to nie gra w kółko i krzyżyk. Wymaga od nas dobrego planowania, zimniej krwi, cierpliwości i systematyczności. Oczywiście, rodzi się nieco akademickie pytanie: Czy gdybyśmy mieli odpowiednio silniejsze zabezpieczenia i lepiej skonfigurowany system, musielibyśmy przechodzić przez to piekło? Prawdopodobnie nie, gdyż w większości przypadków sprawny system zabezpieczeń skutecznie studzi zapał włamywacza. Patrząc z jego punktu widzenia, po co marnować czas i siły na całkiem nieźle chroniony system, skoro są setki innych pozbawionych takiej tarczy.


  • TOP 200