2008.02_Helix – analiza powłamaniowa.pdf

(1753 KB) Pobierz
439177038 UNPDF
Helix – analiza
powłamaniowa
Obrona
Grzegorz Błoński
stopień trudności
Wszyscy zdajemy sobie sprawę, iż coraz więcej przestępstw ma
miejsce w systemach informatycznych irm, a nawet
w prywatnych komputerach zwykłych obywateli. Z pewnością nie
wszyscy są świadomi faktu, że można takie przestępstwo wykryć
i zabezpieczyć ślady po incydencie w taki sposób, aby były
ważnym dowodem.
stytucji zajmujących się profesjonal-
ną analizą przypadków przestępstw
komputerowych. Istnieje specjalistyczne
oprogramowanie służące zbieraniu danych
o przestępstwie oraz pozwalające na do-
głębną analizę zdobytych informacji i wła-
ściwe zabezpieczenie ich w celu później-
szego wykorzystania jako dowody w spra-
wach sądowych. Jedną z firm produkują-
cych takie oprogramowanie jest AccessDa-
ta. Niestety oprogramowanie nie należy do
tanich, produkt Forensic Toolkit kosztuje bli-
sko 5.000 złotych. Guidance Software to ko-
lejna firma, która produkuje oprogramowa-
nie do przeprowadzania śledztw informa-
tycznych. Cała gama programów EnCase
tej firmy, a także Field Intelligence Model
(który jest dostępny tylko dla organów ści-
gania) są jeszcze droższe, a ich ceny są ne-
gocjowane dla każdej kupującej je instytu-
cji. W przypadku małych firm wydanie du-
żej kwoty pieniędzy na oprogramowanie
w celu wykrycia przestępstwa dokonanego
w ich systemie informatycznym może oka-
zać się zbyt dużym wydatkiem w porównaniu
z ewentualnymi stratami wynikającymi z ta-
kiego przestępstwa. Sytuacja małych firm
oraz osób fizycznych nie jest jednak bezna-
dziejna, ponieważ istnieją podobne aplikacje
na licencji OpenSource. Mało tego, występu-
ją w formie na przykład uruchamianej bezpo-
średnio płyty CD. Przykładami takich zesta-
wów narzędzi są Snarl – bootowalny system
FreeBSD, INSERT czy F.I.R.E., opisywany
w marcowym numerze hakin9 w roku 2004.
W tym artykule chciałbym przybliżyć dzie-
ło firmy E-fense, jakim jest Helix. To system,
który jest używany przez liczne centra szko-
leniowe kształcące specjalistów w dziedzi-
nie informatyki śledczej.
Z artykułu dowiesz się
• poznasz darmowe narzędzia do analizy powła-
maniowej,
• poznasz schemat działania podczas analizy
powłamaniowej.
Co powinieneś wiedzieć
• znać Linuksa,
• umieć pracować w konsoli tekstowej Linuksa.
64
hakin9 Nr 2/2008
www.hakin9.org
N a rynku światowym istnieje wiele in-
439177038.022.png 439177038.023.png 439177038.024.png
Helix – analiza powłamaniowa
Rysunek 1. Helix uruchamiany z
poziomu Windows
cy w środowisku Windows. Po wło-
żeniu płyty do napędu automatycz-
nie startuje menu Heliksa, co widać
na Rysunku 1.
Po wybraniu i zaakceptowaniu
języka (niestety, nie ma polskie-
go) w oknie ukazuje się menu wy-
boru narzędzi, z których chcemy
korzystać. Bardzo dobrym przy-
kładem wykorzystania Heliksa
w systemie Windows jest potrze-
ba wykonania obrazu zawartości
pamięci operacyjnej w przypad-
ku, gdy podejrzewamy, iż system
został zaatakowany przez hakera.
Restart komputera i uruchomienie
Heliksa spowodowałoby utracenie
zawartości pamięci operacyj-
nej jednak wystartowanie Helik-
sa w środowisku Windows pozwo-
li na przygotowanie nie tylko ob-
razu zawartości pamięci operacyj-
nej, ale także wszystkich partycji
dyskowych. Na wykonanych obra-
zach można bez większego trudu
prowadzić analizę oraz szukać śla-
dów pozostawionych przez hakera.
W skład narzędzi dostępnych
w darmowej dystrybucji Helix wcho-
dzą typowe narzędzia do prowadze-
nia dochodzenia, między innymi ta-
kie, jak SleuthKit wraz z webowym
interfejsem Autopsy, Linen, AIR czy
pyFLAG oraz wiele innych przydat-
nych aplikacji. Postaram się przy-
bliżyć Czytelnikom możliwości tego
zestawu narzędzi i jednocześnie za-
chęcić do jego używania.
Mimo tego że przeznaczenie
Heliksa jest raczej jednoznacz-
nie określone przez autorów, uwa-
żam, że doskonale nadaje się on
nawet do takich prac jak chociaż-
by wykonanie kopii zapasowej za-
wartości dysku czy jako płyta ra-
tunkowa w przypadku problemów
z systemem. Helix zawiera bo-
wiem między innymi narzędzie do
przeglądania rejestru Windows,
a także inne aplikacje możliwe do
wykorzystania zarówno w syste-
mach linuksowych, jak i window-
sowych. Aby dokonać przeszu-
kania zawartości dysku w nadziei
znalezienia śladów przestępstwa,
nie narażając jednocześnie bada-
nego dysku na dokonanie jakiej-
kolwiek zmiany w jego zawartości
podczas takich działań, nie operu-
je się na żywym dysku, tylko na je-
go obrazie. Helix jest wyposażo-
ny w narzędzia pozwalające na
wykonanie takich obrazów na ze-
wnętrznych dyskach USB lub Fi-
reWire. Jest także możliwość wy-
konania obrazu dysku na stre-
amerze oraz przy wykorzystaniu
sieci na zdalnym komputerze, co
w niektórych przypadkach może
być bardzo przydatne. Sam Helix
nie montuje automatycznie żad-
nych dysków dostępnych w sys-
Helix LiveCD – opis
Dystrybucja Helix to zestaw na-
rzędzi przydatnych w analizie
powłamaniowej systemów informa-
tycznych, a także podczas prowa-
dzenia dochodzenia w przestęp-
stwach komputerowych. Jej przy-
datność jest bardzo duża, a atutem
Heliksa jest fakt, iż jest on całko-
wicie darmowy. To bardzo ważne,
bo choć narzędzia komercyjne są
w niektórych przypadkach nie-
co lepsze, to możliwość używa-
nia Heliksa za darmo pozwala ob-
niżyć koszty, jakie pociąga za so-
bą konieczność używania tego typu
narzędzi. Wymagania sprzętowe
dla Heliksa nie są zbyt wygórowa-
ne. Do pracy w konsoli wystarczy
procesor x86 oraz 48 MB pamię-
ci operacyjnej. Aby móc korzystać
z interfejsu graicznego bazujące-
go na menadżerze okien XFWM
z graicznym pulpitem XFCE, w któ-
ry jest wyposażony Helix, potrzeba
już co najmniej procesora Pentium
i 128 MB pamięci RAM. Uruchomio-
ny z płyty CD system pracuje płyn-
nie już przy 256 MB RAM i proce-
sorze Pentium II 300 MHz. Istnie-
je możliwość zapisania koniguracji
systemu na zewnętrznym nośniku
(Floppy, USB, CD), a także opcja
utworzenia dyskietek startowych.
Oczywiście można zainstalować
Heliksa na dysku twardym wyko-
rzystując skrypt knx2hd , ale wersja
bootowalna z płyty CD jest o wiele
bardziej elastyczna w użytkowaniu.
Oprócz możliwości pracy z pozio-
mu Heliksa, na płycie znajdują się
pliki umożliwiające uruchamianie
narzędzi w systemie Solaris x86.
Dostępna jest też możliwość pra-
Rysunek 2. Widok uruchomionego systemu Helix Live
www.hakin9.org
hakin9 Nr 2/2008
65
 
439177038.001.png 439177038.002.png 439177038.003.png 439177038.004.png
 
Obrona
temie, w którym jest uruchamiany
– właśnie ze względu na możliwe
przypadkowe wprowadzenie zmian
w strukturze zawartości dysku.
Aby wykonać obraz dysku,
który później będziemy badać,
musimy skorzystać z narzędzi,
które nam to umożliwią. Do dyspo-
zycji mamy standardowy program
dd działający w konsoli lub też gra-
ficzną nakładkę na to narzędzie
– czyli Adepto.
dd jest doskonałym narzędziem
do wykonania obrazu dysku – wy-
konuje to zadanie dość szybko,
a wynik jest wierną kopią (tak zwa-
nym bitstreamem) tego, co znajdu-
je się faktycznie na dysku; przeno-
si także uszkodzone pliki czy na-
wet błędy systemu plików. Na pły-
cie znajduje się również ulepszo-
na wersja dd: sdd (Specialized
dd) , która dzięki nowym algoryt-
mom pracuje znacznie szybciej.
Kolejnym znajdującym się w ze-
stawie narzędzi interfejsem gra-
ficznym dla dd jest AIR. Jego uży-
wanie nie powinno sprawiać kłopo-
tów, ponieważ program jest bardzo
prosty, a jego obsługa – niezwykle
wygodna.
Po wykonaniu obrazu zawarto-
ści badanego dysku możemy przy-
stąpić do analizy jego zawarto-
ści w poszukiwaniu śladów prze-
Rysunek 4. Okno programu AIR
stępstwa, ukrytych plików czy in-
nych elementów ważnych dla pro-
wadzonego dochodzenia. Jest to
także doskonały moment do ana-
lizy logów systemowych (bez ich
izycznego naruszania) po ata-
ku wykonanym na dany system
w celu uzyskania maksymalnej ilo-
ści informacji na temat rodzaju ata-
ku, drogi jaką został przeprowadzo-
ny, a także znalezienia ewentual-
nych śladów pozostawionych przez
hakera mogących pomóc w ustale-
niu źródła ataku. W zestawie narzę-
dzi znalazł się także program wy-
mienionej wcześniej irmy produku-
jącej oprogramowanie wykorzysty-
wane przez policje na całym świecie
do wykrywania przestępstw kompu-
terowych Guidance Software o na-
zwie LinEn, służący także do wyko-
nywania obrazu dysku.
Retriever to z kolei narzędzie
pozwalające na wyszukiwanie
i przeglądanie poszczególnych
plików. Program potrafi wyszuki-
wać pliki dokumentów w najbar-
dziej popularnych formatach, pli-
ki graficzne (także w kilku forma-
tach), pliki wideo, a także pliki wia-
domości email. Narzędzie posiada
intuicyjny interfejs i jest wygodne
w użyciu.
Bardzo potężnego kalibru jest
kolejne obecne w Heliksie narzę-
dzie – SleuthKit wraz z graficznym
(Web) interfejsem Autopsy. Pro-
gram potrafi naprawdę dużo – po-
cząwszy od przeszukiwania dys-
ku w poszukiwaniu skasowanych
plików, po odnajdywanie danych
ukrytych w obszarach ADS (Al-
ternate Data Streams) , które wy-
stępują w systemie plików NTFS.
To imponująca aplikacja, warta po-
znania i używania.
Analiza powłamaniowa to waż-
ny element obrony przed kolejnymi
Rysunek 3. Uruchomiony Adepto – GUI dla DiskDump
66
hakin9 Nr 2/2008
www.hakin9.org
439177038.005.png
 
439177038.006.png
 
439177038.007.png
 
439177038.008.png 439177038.009.png
 
439177038.010.png 439177038.011.png
 
Helix – analiza powłamaniowa
atakami. Tu przychodzi nam z po-
mocą program pyFLAG – Foren-
sic and Log Analysis Gui . Posia-
da również graficzny (Web) inter-
fejs podobnie jak Autopsy, jednak
wyróżnia się na korzyść dodatko-
wymi funkcjami, których nie ma to
pierwsze narzędzie. Są to przeglą-
danie logów systemu oraz analiza
zawartości rejestru systemowego
Windows. Program posiada rów-
nież funkcje przeszukiwania śla-
dów ataku w plikach aplikacji sie-
ciowych, a także w plikach prze-
chwyconych pakietów TCP/IP.
Do przeglądania rejestru syste-
mu Windows jest jeszcze na pły-
cie program Regviewer oraz przy-
datny do analizy zawartości plików
edytor szesnastkowy Ghex.
programowi na komputerze, na któ-
rym istnieje podejrzenie kompromi-
tacji (ponieważ może na nim praco-
wać jakiś program typu koń trojański
lub inny, który może powodować nie-
prawidłowe działanie aplikacji), nale-
ży używać wyłącznie oprogramowa-
nia na nośnikach takich, jak dyskiet-
ka czy płyta CD/DVD. W trakcie te-
go etapu prac warto wykonać poniż-
sze czynności:
szej analizy programami Adepto,
Air,LinEn lub używając polece-
nia kopiowania z przełącznikiem
p dla zachowania atrybutów pliku
oraz właściciela i grupy:
cp -rp katalog_źródłowy katalog_
docelowy
• lub na komputerze zdalnym uży-
wając polecenia netcat :
• wykonać kopie danych na no-
śniku zewnętrznym w celu dal-
komputer docelowy: nc -p 1234 -l
> plik _docelowy
Schemat działania
analizy przestępstwa
Przykładowy schemat działania
podczas zbierania dowodów prze-
stępstwa obrazuje podstawowe
czynności, które należy wykonać w
celu sprawnego i skutecznego zna-
lezienia i zabezpieczenia we wła-
ściwy sposób śladów działalno-
ści hakera w skompromitowanym
systemie. Poszczególne czynności
oczywiście wykonuje się w miarę
potrzeb i podejrzeń co do rodzaju
ataku oraz potencjalnych szans na
znalezienie dowodów, niemniej jed-
nak warto zrobić kilka kroków wię-
cej i mieć pewność, że uczyniło się
wszystko, aby zdobyć jak najwięcej
informacji. Schemat opiera się na
standardowej metodologii składa-
jącej się z czterech etapów: iden-
tyikacji, zbierania danych, analizy
i prezentacji wyników.
Rysunek 5. LinEn przed wykonaniem obrazu zawartości dysku
Inspekcja online
W pierwszym etapie zajmujemy się
identyikowaniem systemu z jakim
będziemy pracować, zbieramy in-
formacje na temat rodzaju dysków,
wielkości partycji, systemów plików
wykorzystanych w systemie – po
to, aby umieć określić, jakiego ro-
dzaju nośnika musimy użyć do wy-
konania obrazu zawartości dysków
na późniejszym etapie. W związku
z tym, że nie można ufać żadnemu
Rysunek 6. Retriever w pełnej krasie
www.hakin9.org
hakin9 Nr 2/2008
67
 
439177038.012.png 439177038.013.png 439177038.014.png
 
Obrona
komputer źródłowy: cat data |nc
-w 3 komputer _ docelowy 1234
• lub wykonać obraz dysku/partycji
używając polecenia dd :
dd if=/dev/dysk _ źródłowy of=/
dev/dysk _ docelowy
• wykonać obraz zawartości pa-
mięci operacyjnej w celu jak
wyżej używając na przykład po-
lecenia dd :
dd if= /dev/mem of=plik _ z _
zawartością _ pamięci
• zbadać uruchomione procesy
przy pomocy na przykład polece-
nia ps :
Rysunek 8. pyFLAG przed skanowaniem systemu plików
lsof bez parametrów – dla wy-
świetlenia plików otwartych
przez wszystkie działające pro-
cesy
lsof -s numer _ pid _ procesu
– dla wyświetlenia plików kon-
kretnego procesu;
• zebrać informacje o połącze-
niach sieciowych z użyciem
netstat :
ps auxeww , które wyświetli
wszystkie uruchomione proce-
sy (uwaga – może to być bardzo
długa lista procesów, w zależ-
ności od ilości uruchomionych
programów/usług)
netstat -a
• sprawdzić konkretny host, któ-
rego adres IP wydaje się podej-
rzany – przy pomocy narzędzia
traceroute :
• przejrzeć adresy uruchomionych
w pamięci procesów – także przy
pomocy komendy ps :
• wyświetlić wywołania bibliotek
dla konkretnego procesu pole-
ceniem ltrace :
traceroute adres _ IP
ltrace -p numer _ pid _ procesu
ps -ealf
• znalezienie adresu sprzętowego
MAC z użyciem polecenia arp :
• arp adres _ ip – dla wyświe-
tlenia adresu MAC dla kon-
kretnego adresu IP;
• arp -a – dla wyświetle-
nia MAC dla wszystkich adre-
sów znajdujących się w tabli-
cy arp;
• przejrzeć otwarte pliki przy
użyciu na przykład polecenia
lsof :
• wyświetlić wywołania systemowe
poleceniem strace :
strace -p numer _ pid _ procesu
• zrzut do pliku ruchu sieciowego
– przy pomocy tcpdump lub inne-
go narzędzia:
tcpdump -w zrzucany _ plik
• wyświetlenie pliku historii konso-
li poleceniem cat w celu przejrze-
nia ostatnio wykonywanych ope-
racji:
cat .bash _ history
Rysunek 7. Autopsy – webowy interfejs użytkownika
Na tym etapie możemy zakończyć
pracę z aktywnym połączeniem
68
hakin9 Nr 2/2008
www.hakin9.org
439177038.015.png
 
439177038.016.png
 
439177038.017.png
 
439177038.018.png 439177038.019.png
 
439177038.020.png 439177038.021.png
 
Zgłoś jeśli naruszono regulamin