Professional Documents
Culture Documents
ISBN: 978-83-283-1486-3
All rights reserved. No part of this book may be reproduced or transmitted in any
form or by any means, electronic or mechanical, including photocopying, recording
or by any information storage retrieval system, without permission from the Publisher.
Wydawnictwo HELION
ul. Kociuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail: helion@helion.pl
WWW: http://helion.pl (ksigarnia internetowa, katalog ksiek)
Drogi Czytelniku!
Jeeli chcesz oceni t ksik, zajrzyj pod adres
http://helion.pl/user/opinie/incbez_ebook
Moesz tam wpisa swoje uwagi, spostrzeenia, recenzj.
Dla Christiny
Matt
O AUTORACH
Jason T. Luttgens pracuje w brany bezpieczestwa informatycznego ju od prawie dwudziestu lat.
Kiedy by dyrektorem technicznym w firmie konsultingowej Mandiant. Podczas pracy w tej firmie
w rnych miejscach wiata przeprowadzi wiele ledztw dotyczcych szpiegostwa przemysowego,
kradziey danych kart kredytowych i innych przestpstw w rodowiskach skadajcych si z 250 000
systemw komputerowych. Wsplnie z Jedem Mittenem opracowa narzdzie do analizowania
i wizualizacji danych z dziennikw o nazwie Highlighter.
Luttgens, zanim znalaz zatrudnienie w firmie Mandiant, suy w Biurze Inspektora Generalnego NASA
w dziale ds. przestpstw komputerowych jako ledczy techniczny. W NASA do obowizkw Luttgensa
naleao prowadzenie ledztw komputerowych, reagowanie na incydenty bezpieczestwa, badania i rozwijanie
metod ledczych, testowanie sprztu i oprogramowania oraz szkolenie pracownikw. Jednoczenie bra
udzia w wanych ledztwach na szczeblu pastwowym, dotyczcych m.in. wydarze z 11 wrzenia.
Jason Luttgens jest weteranem powietrznych si zbrojnych USA, w ktrych przez cztery lata suy
w biurze dochodze specjalnych. Pracowa w laboratorium informatyki ledczej Departamentu Obrony
w Linthicum, w stanie Maryland. Do jego obowizkw naleao badanie i rozwijanie technologii
wykrywania przestpstw komputerowych. Jako szef czteroosobowego zespou analitykw sdowych
osobicie przeprowadza ekspertyzy komputerowe, reagowa na incydenty i zeznawa przed sdem jako
ekspert. Przed podjciem pracy w laboratorium informatyki ledczej Luttgens stacjonowa w 18. oddziale
cznoci w Kadena Air Base, na japoskiej Okinawie. Wykonywa tam operacje komputerowe
i przeprowadza analizy systemw, obsugiwa aplikacje sieciowe, zajmowa si zarzdzaniem sieci,
inynieri i zapewnianiem bezpieczestwa; przeprowadza take szkolenia.
Jason Luttgens ukoczy studia informatyczne w George Mason University z tytuem Bachelor of Science.
Matthew Pepe dziaa w brany informatyki ledczej od 1995 roku, kiedy to dwch agentw AFOSI
uratowao go przed wysaniem do Pentagonu. Aktualnie jest gwnym dyrektorem technicznym
i zaoycielem firmy Mandiant. Przeprowadzi wiele ledztw, wystpowa jako ekspert w sprawie
dziwnych i niepowtarzalnych cech programu Incident Response firmy Mandiant oraz opracowa
techniki ledcze, ktre s uywane do dzisiaj.
Wczeniej Pepe pracowa jako ledczy techniczny i ekspert ds. bezpieczestwa komputerowego
w Foundstone, Trident Data Systems, Sytex i United States Air Force Office of Special Investigations
(AFOSI). W pierwszych latach pracy w AFOSI rozwin swoje umiejtnoci analityczne i pozna
zasady procesu, w ramach ktrego stawia si hipotezy, a nastpnie sprawdza si je dowiadczalnie.
Pokocha te aktywne terminatory magistrali SCSI.
Pepe jest absolwentem wydziau informatyki George Washington University.
Kevin Mandia jest starszym wiceprezesem i gwnym dyrektorem operacyjnym w firmie FireEye.
W 2004 roku zaoy firm Mandiant i by jej gwnym dyrektorem wykonawczym. Wczeniej Mandia
pracowa na stanowisku dyrektora dziau informatyki ledczej w Foundstone. W latach 1993 1998
pracowa w Siach Powietrznych USA, gdzie peni wiele obowizkw, np. by specjalist ds. bezpieczestwa
komputerowego w 7. grupie cznociowej w Pentagonie, a pniej agentem specjalnym w Air Force
Office of Special Investigations (AFOSI). W 2011 roku Kevin Mandia otrzyma tytu Ernst & Young
Entrepreneur of the Year w okrgu Greater Washington. Posiada tytu Bachelor of Science z informatyki
na Lafayette College oraz Master of Science z informatyki ledczej George Washington University.
14 INCYDENTY BEZPIECZESTWA
O wsppracownikach
Marshall Heilman pracuje w brany zabezpiecze komputerowych i informacyjnych ju od ponad
czternastu lat, z czego wicej ni siedem przepracowa w firmie Mandiant. Aktualnie jest dyrektorem
zarzdzajcym w Mandiant, a do jego obowizkw naley reagowanie na incydenty bezpieczestwa
i ocenianie poziomu bezpieczestwa systemw. Heilman specjalizuje si m.in. w reagowaniu
na incydenty bezpieczestwa, prowadzeniu dochodze w sprawach dotyczcych nowoczesnych
technologii, wykonywaniu testw penetracyjnych oraz zabezpieczaniu sieci. Marshall Heilman pracowa
przy najbardziej niszczycielskich i znanych incydentach, jakie miay miejsce w rnych firmach w ostatnich
siedmiu latach. Wczeniej suy na stanowisku sieranta sztabowego w Piechocie Morskiej Stanw
Zjednoczonych, gdzie rwnie zajmowa si bezpieczestwem komputerowym i ochron informacji.
O korektorze merytorycznym
Curtis W. Rose jest prezesem i zaoycielem firmy Curtis W. Rose & Associates LLC z Kolumbii w stanie
Maryland, ktra specjalizuje si w informatyce ledczej, dostarczaniu ekspertyz sdowych, sporach sdowych,
reagowaniu na wamania do komputerw oraz prowadzeniu szkole dla firm i agencji rzdowych. Rose
jest znanym w brany ekspertem o ponad dwudziestoletnim dowiadczeniu w dochodzeniach, informatyce
ledczej i bezpieczestwie informacji. Jest te wspautorem ksiki Real Digital Forensics: Computer
Security and Incident Response, a take autorem wspomagajcym lub redaktorem merytorycznym wielu
innych popularnych ksiek na tematy zwizane z bezpieczestwem informacji, np. Handbook of Digital
Forensics and Investigations, Malware Forensics Field Guide for Windows Systems, Malware Forensics
Field Guide for Linux Systems, Malware Forensics: Investigating and Analyzing Malicious Code, SQL Server
Forensic Analysis, Anti-Hacker Toolkit, Network Security: The Complete Reference oraz poprzedniego
wydania tej ksiki.
Spis treci
O autorach . ..................................................................................................................................13
Wstp . ...........................................................................................................................................15
Podzikowania . ..........................................................................................................................17
Wprowadzenie . ...........................................................................................................................19
CZ I Przygotowywanie si na nieuniknione
CZ IV Analiza danych
System OS X ................................................................................................................................................440
System Linux ...............................................................................................................................................440
Oglne zasady badania aplikacji na potrzeby ledztwa . .............................................................441
Przegldarki internetowe ...............................................................................................................445
Internet Explorer . .......................................................................................................................................447
Google Chrome ...........................................................................................................................................453
Mozilla Firefox . ...........................................................................................................................................458
Klienty poczty elektronicznej ........................................................................................................463
Internetowe klienty poczty elektronicznej . .............................................................................................464
Microsoft Outlook dla systemw Windows . ..........................................................................................465
Apple Mail ...................................................................................................................................................469
Microsoft Outlook for Mac . ......................................................................................................................470
Komunikatory internetowe . ...........................................................................................................472
Metody analizy ............................................................................................................................................472
Najpopularniejsze komunikatory i protokoy . .......................................................................................473
I co z tego ..........................................................................................................................................481
Pytania ..............................................................................................................................................481
CZ V Naprawa
T
echniki reagowania na incydenty bezpieczestwa ulegy zmianie w ostatniej dekadzie, czyli
od czasu pojawienia si pierwszego wydania tej ksiki. Dziesi lat temu wci uwaano,
e problem dotyczy niewielkiej liczby hostw lub serwerw. Niezmiernie rzadko zdarzao si
zamanie zabezpiecze w kilkudziesiciu lub kilkuset komputerach. Jeli jednak pominiemy
urzdzenia przenone, powierzchnia ataku (liczba miejsc lub aplikacji, ktre mog by podatne
na ataki) pozostaje mniej wicej taka sama. Znaczy to, e hakerzy czciej wamuj si do systemw
albo udaje si lepiej wykrywa takie zdarzenia. Uwaam, e jedno i drugie jest prawd. Hakerw
coraz mniej interesuje zwyke wamanie i rabowanie. Dzi s bardziej cierpliwi, potrafi miesicami,
a nawet latami prowadzi dziaania rozpoznawcze w naszych sieciach. Z mojego dowiadczenia
zebranego w ostatnich latach wynika, e hakerzy znaj atakowane sieci nie gorzej od pracownikw
dziaw informatycznych firm. Nie znaczy to, e dziay informatyczne le pracuj, po prostu hakerzy
stosuj takie same profesjonalne, metodologiczne i cierpliwe podejcie.
Co si zmienio? Notujemy coraz czstsze (i bardziej widoczne) przypadki cyberatakw
przeprowadzanych z rnych powodw. Syszy si o nich w telewizji. Atak moe przeprowadzi
jakie pastwo, ktre za cel obierze rzdowych kontrahentw budujcych najnowsz platform
zbrojn, albo cyberprzestpca chccy wykra numery dziesitek milionw kart kredytowych lub
bazy danych z informacjami osobistymi klientw jakiej firmy. Atak musi by dobrze zaplanowany
i przemylany. Przestpca musi rozway, jak porusza si po sieci, aby pozosta w ukryciu
i osign swj cel.
Wraz z technikami atakw rozwiny si te metody i narzdzia do ich wykrywania. Stalimy si
lepsi w tropieniu przestpstw nie tylko na poziomie sieci, opracowalimy te doskonalsze narzdzia
umoliwiajce otrzymywanie oglnego obrazu hosta. Nie musimy ju tylko przeglda pojedynczych
bitw w kilku systemach, moemy sprawdzi, co si dzieje w szerokim zakresie. Wamania nie s
tylko problemem pojedynczych firm, lecz maj dalekosine globalne skutki ekonomiczne.
16 INCYDENTY BEZPIECZESTWA
James R. Butler od ponad siedemnastu lat zajmuje si zabezpieczeniami systemw operacyjnych. Jest cenionym
specjalist ds. atakw i technik ich wykrywania, a ostatnio skupi si na badaniach w zakresie analizy pamici
i introspekcji maszyn wirtualnych. Przed rozpoczciem pracy w FireEye Butler by gwnym badaczem w Mandiant;
kierowa tam zespoem Endpoint Security Team z wykorzystaniem produktu dla przedsibiorstw Mandiant
Intelligent Response. James R. Butler jest wspautorem bestselleru Rootkits: Subverting the Windows Kernel
(Addison-Wesley 2005). Napisa take wiele publikowanych artykuw i czsto przemawia na najwaniejszych
konferencjach powiconych bezpieczestwu komputerowemu. Jest te czonkiem komisji recenzujcej
w Black Hat.
1
David Drummond, A new approach to China, 12 stycznia 2010 r.,
http://googleblog.blogspot.sg/2010/01/new-approach-to-china.html.
Podzikowania
K
sika jest naszym najwikszym dzieem; zawarlimy w niej opis dowiadcze, jakie
zdobylimy podczas pracy. Chcielibymy, aby zawarte w niej lekcje byy pomocne naszym
kolegom po fachu. Chtnie pogratulowalibymy sobie nawzajem, gdyby jednak nie pomoc
i powicenie wielu innych osb nic by z tego nie wyszo. Na tej stronie dzikujemy tylko niewielkiej
garstce tych wszystkich ludzi. Kevin Mandia zaoy firm Mandiant i wypracowa metody, ktre
przyczyniy si do rozwoju technik reagowania na incydenty bezpieczestwa, a przy tym nigdy nie
zapomnia o szeregowych pracownikach. Steve Surdu, ktry jak mwi niektrzy pi tylko
raz na rok, pierwszego dnia wiosny przez 10 minut, zachci nas do utrzymywania najwyszych
standardw we wszystkim, co robimy. Naley te wymieni wspaniae osobowoci, ktre powiciy
kawa swojego ycia na pocztku istnienia firmy Mandiant i walczyy z cyberprzestpcami;
s to Kris Kendall, Ken Bradley, Jed Mitten, Chuck Willis, Kris Harms, Bret Padres, Ben Rubin,
Nicholas Harbour, David Ross i Tony Dell. Chcemy te podzikowa wszystkim pozostaym
pracownikom z Mandiant, ktrzy przepracowali wicej godzin, ni ktokolwiek mgby przypuszcza.
Dzikujemy osobom, ktre nauczyy nas podstaw informatyki ledczej, m.in. Charlesowi
Coemu, Gregowi Dominguezowi i Richardowi Wilkinsonowi.
Ponadto dzikujemy wszystkim tym, ktrzy pomogli w pracy nad tym wydaniem ksiki,
szczeglnie autorom pomocniczym, Marshallowi Heilmanowi i Ryanowi Kazanciyanowi.
Dzikujemy te autorom sekcji rozdziaw: Jeffowi Hammowi, Justinowi Prosco, Williemu
Ballenthinowi, Ryanowi Bensonowi, Nikesowi Akensowi, Robertowi Honniesowi i Gregowi
Dominguezowi. Poniewa adna ksika nie moe zosta ukoczona bez osb, ktre zadbaj o jej
wiarygodno, oto lista tych, ktre podzieliy si z nami swoimi spostrzeeniami na temat tekstu:
Barry Grundy, Danny Mares, Greg Dominguez, James Akers oraz John Beers.
18 INCYDENTY BEZPIECZESTWA
Jamie, dzikujemy za napisanie wstpu. Jerry, dziki za podsunicie pomysu, aby to Jamie
napisa wstp.
Mielimy najlepszego moliwego redaktora merytorycznego, Curtisa Rosea. Jego wiedza,
oko do szczegw i bezstronne komentarze przyczyniy si do znacznego polepszenia jakoci tej
ksiki. Dzikujemy, Curt.
W kocu chcielibymy podzikowa wszystkim pracownikom wydawnictwa McGraw-Hill
Education, m.in. Brandi Shailer, Amandzie Russell i Amy Jollymore za wsparcie i cierpliwo.
Wprowadzenie
W
padzierniku 2013 roku Instytut Ponemon opublikowa wyniki bada dotyczcych
kosztw ponoszonych przez rne organizacje z powodu cyberprzestpstw. redni czas
rozwizania problemu z bezpieczestwem wrd badanych instytucji wynosi 32 dni,
a redni koszt wszystkich zwizanych z tym operacji to nieco ponad milion dolarw. W poprzednim
roku redni czas operacji wynosi 24 dni, a rednie koszty byy rzdu 600 000 dolarw. Jednak
koszty ponoszone przez organizacj dotknit atakiem to nie wszystko, bo szkody, jakich narobi
przestpcy przy uyciu wykradzionych informacji, s bardzo trudne do oszacowania i mona je
okreli dopiero po jakim czasie lub mog nigdy nie zosta odkryte.
Tworzy si przepisy prawne i rne regulacje przemysowe majce na celu zwikszenie
bezpieczestwa komputerowego, za nieprzestrzeganie ktrych gro surowe kary. Dziaania te
mog by w pewnym stopniu pomocne, ale jednoczenie zamieniaj bezpieczestwo komputerowe
w pole do odhaczenia na licie zada. W efekcie organizacje robi tylko to, co musz, aby postawi
haczyk w odpowiednim kwadraciku. Natomiast poprawa bezpieczestwa komputerowego wymaga
wyposaenia obrocw w najbardziej efektywne narzdzia, techniki i wiedz. I to wanie
prbujemy zrobi za pomoc tej ksiki. W nowym wydaniu staramy si przekaza ca wiedz,
jak zdobylimy przez ostatnich dziesi lat. Mamy nadziej, e w tej ksice znajduje si wiele
cennych informacji.
20 INCYDENTY BEZPIECZESTWA
ADRESACI KSIKI
Tematyka ksiki jest interesujca dla wszystkich osb, ktre zajmuj si procesami reagowania
na incydenty bezpieczestwa, a wic powinien j przeczyta kady, od dyrektora dziau informatyki,
przez pracownikw zespow reagowania na incydenty, po pracownikw pobierajcych dzienniki
z serwera sieciowego. Opisujemy zarwno techniczne, jak i inne aspekty dziaa. Aktualnie powodzenie
operacji wymaga zaangaowania nie tylko informatykw i specjalistw zabezpiecze, ale i przedstawicieli
dziaw prawnego, HR, PR, marketingu i innych.
Ksika ta zawiera cenne informacje dla kadego, kto chce:
pozna proces reagowania na incydenty bezpieczestwa,
stworzy i odpowiednio wyposay zesp ds. reagowania na incydenty bezpieczestwa,
rozszerzy infrastruktur lub organizacj o moliwo wykonywania procesw zwizanych
z reagowaniem na incydenty bezpieczestwa,
prowadzi dochodzenia i wdraa rozwizania,
nauczy si gromadzenia materiau dowodowego,
nauczy si analizy dowodw z systemw operacyjnych Windows i OS X,
segregowa zoliwe oprogramowanie,
pisa lepsze raporty.
ORGANIZACJA KSIKI
Ksik podzielilimy na sze czci, zaczynajc od tematw wstpnych, na metodach
rozwizywania problemw z incydentami bezpieczestwa koczc. Opisujemy w niej pojcia
dotyczce incydentw, techniki gromadzenia danych oraz metody analityczne. Zawsze staralimy
si podsuwa takie rozwizania, ktre powinny sprawdza si take w przyszoci. Nie tylko
opisujemy kwestie zwizane z reagowaniem na incydenty, ale rwnie przedstawiamy zagadnienia
fundamentalne, aby mona byo podejmowa jak najlepsze decyzje take wtedy, gdy zmieni si
warunki. Podstawowe zagadnienia nie powinny bardzo zmieni si w czasie i dlatego mamy
nadziej, e to wydanie ksiki bdzie przydatne przez wiele lat.
Cz I. Przygotowywanie si na nieuniknione
W tej czci staramy si przedstawi problematyk narusze bezpieczestwa systemw informatycznych
z szerokiej perspektywy oraz podpowiadamy, jak skompletowa zesp fachowcw, ktrzy w razie
wystpienia incydentu bd wiedzieli, co maj robi. Najpierw przytaczamy dwa prawdziwe przykady
zaczerpnite z wasnego dowiadczenia. Nastpnie omawiamy kwestie dotyczce prowadzenia
dziaa zwizanych z reakcj na incydent bezpieczestwa, a wic np. definiujemy, czym jest proces
reakcji na incydent, etapy dochodzenia, metody oddalania zagroenia, techniki ledzenia informacji,
oraz podpowiadamy, co jest potrzebne do stworzenia skutecznego zespou specjalistw. Na koniec
opisujemy, jak przygotowa infrastruktur, organizacj i zesp reagowania na incydenty.
BD! W DOKUMENCIE NIE MA TEKSTU O PODANYM STYLU. WPROWADZENIE 21
Cz V. Naprawa
Naprawa to ostateczny cel wszystkich czynnoci zwizanych z reakcj na incydent bezpieczestwa.
Chodzi o przywrcenie organizacji do normalnego stanu. W czci tej opisujemy rne koncepcje,
m.in. siedmioetapowy proces naprawy. Nastpnie omawiamy studium przypadku, w ktrym
pokazujemy, jak praktycznie wykorzysta przedstawione metody w prawdziwych sytuacjach
opisanych w rozdziale pierwszym.
RDA
Jako e technologia i strony internetowe cigle si zmieniaj, stworzylimy internetowe rdo
informacji, w ktrym znajdziesz aktualne wersje odnonikw z tej ksiki. Strona ta znajduje si
pod adresem ir3e.com i oprcz aktualizacji odnonikw zawiera take rne inne zasoby.
Komentarze i sugestie mona wysya na adres e-mail authors@ir3e.com.
CZ I
Przygotowywanie si
na nieuniknione
ROZDZIA 1.
Prawdziwe incydenty
26 INCYDENTY BEZPIECZESTWA
O
d drugiego wydania tej ksiki, ktre ukazao si dziesi lat temu, wiat cyberprzestpczoci
znacznie si zmieni. Zmianom ulegy nie tylko metody i narzdzia dokonywania przestpstw,
ale i systemy oraz aplikacje, ktre s poddawane atakom. Wraz z metodami i celami
przestpstw zmieniy si rwnie sposoby obrony i reakcji na ataki. Niektrzy ignoruj zdarzenia
i akceptuj ryzyko lub wkalkulowuj koszt cyberatakw w koszty prowadzenia dziaalnoci. Inni
wydaj due sumy pienidzy na rozwizania, ktre ich zdaniem powinny wszystko zaatwi,
i niewiele uwagi powicaj szczegom. W kocu s te tacy, ktrzy wini rzd za to, e ich
odpowiednio nie chroni. Popularyzator nauki Carl Sagan powiedziaby, gdyby y: im bardziej
oczekujemy, e problem rozwie za nas kto inny, tym mniejsze mamy szanse, e rozwiemy go
we wasnym zakresie. W naszym zamierzeniu ksika ta powinna spowodowa, e staniesz si
aktywn stron w rozwizywaniu problemu.
Aby skorzysta z wiedzy tu zawartej, musisz wiedzie, co to jest incydent bezpieczestwa, na
czym polega reakcja na taki incydent, jaki jest aktualny stan wiedzy oraz dlaczego w ogle naley si
tym przejmowa. Wszystkie te zagadnienia opisujemy w tym rozdziale; dodatkowo przedstawiamy
dwa powizane z nimi studia przypadku.
W INTERNECIE
http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-61r2.pdf
Uwaga Naley pamita, e kada organizacja moe ustali wasn definicj incydentu bezpieczestwa.
Wyrnia si rne warstwy incydentw, w zalenoci od ktrych podejmuje si rnorodne rodki
zaradcze. Posiadanie definicji incydentu i opracowanych procedur postpowania w przypadku jego
wystpienia jest znakiem tego, e firma powanie podchodzi do kwestii bezpieczestwa. Zalecamy,
aby podczas opracowywania definicji incydentu przeanalizowa obowizujce przepisy prawne
definiujce przestpstwa komputerowe. W USA definicj przestpstwa komputerowego podano
w dziale 18. Kodeksu Stanw Zjednoczonych, w paragrafie 1030. Innym dobrym rdem informacji
jest podrcznik Ministerstwa Sprawiedliwoci USA zatytuowany Prosecuting Computer Crimes
(ciganie przestpstw komputerowych).
W INTERNECIE
www.law.cornell.edu/uscode/text/18/1030
www.justice.gov/criminal/cybercrime/docs/ccmanual.pdf
To, jakie czynnoci zostan podjte i kto wejdzie w skad zespou reagujcego na incydent,
zaley od celw, jakie powzito. Cele natomiast zale od takich czynnikw jak powaga incydentu,
potrzeby ofiary, metody reagowania na incydenty stosowane przez ofiar, czas incydentu, intencje
przestpcw, ktrzy zaatakowali (jeli s znani), dotknite brane lub klienci oraz pomoc ze strony
decydentw. Generalnie reakcja na incydent polega na stworzeniu zespou sprawdzajcego, co si
stao, i oceniajcego zakres szkd, a take zespou naprawczego, ktry pozbdzie si intruza
i wzmocni zabezpieczenia organizacji bdcej ofiar ataku, oraz wyznaczeniu kogo do kontaktu
(z kierownikami wyszego szczebla, pracownikami wewntrznymi, partnerami biznesowymi
i opini publiczn).
Uwaga Wiele z opisywanych w tej ksice koncepcji moe wydawa si sprzecznych z powszechnie
stosowanymi rozwizaniami. Trzeba jednak pamita, e najnowsze osignicia nauki i techniki
sprawiaj, i stare mdroci ludowe przestaj mie jakiekolwiek znaczenie. Wemy np. przyjt
niedawno zasad, e osob z atakiem serca naley schodzi. Co ciekawe, Hipokrates odkry t
technik ju ponad dwa tysice lat temu. Cho moe si to wydawa bezsensowne i niebezpieczne,
nauka i dowiadczenia wskazuj wyranie, e metoda ta pozwala znacznie efektywniej ratowa
ycie. Podobnie sprawa wyglda w przypadku metod opisywanych w tej ksice. W pierwszej
chwili mog wydawa si niemdre, ale z naszych dowiadcze wynika, e s skuteczne.
30 INCYDENTY BEZPIECZESTWA
DLACZEGO POWINIENE
INTERESOWA SI KWESTIAMI REAKCJI
NA INCYDENTY BEZPIECZESTWA
Prawie codziennie odbieramy telefony od przedstawicieli rnych firm, ktre pady ofiar
cyberataku. Problem ten dotyczy wszystkich bran dziaalnoci gospodarczej, od kancelarii
prawniczych po firmy z sektora finansowego, od duych producentw, handlowcw detalicznych,
przedstawicieli wojskowoci po sklepy z pizz, firmy telekomunikacyjne, placwki suby zdrowia,
firmy z brany kosmicznej i satelitarnej, producentw rozwiza kryptograficznych i firmy
telekomunikacyjne, agencje rzdowe, kopalnie, firmy programistyczne itd. Bylimy wiadkami
zagroe firm z kadej z tych bran i widzielimy, jak zakres ataku rozprzestrzenia si, obejmujc
sektor prywatny, publiczny, korporacje i nawet zwykych obywateli w ich domach. Nie ma
wtpliwoci, e na naszych oczach odbywa si najwiksza w historii nielegalna wymiana
informacji i nie ma powodu sdzi, e zjawisko cyberszpiegostwa zacznie zanika.
Przestpcy ryzykuj niewiele i gro im niezbyt surowe kary za wamania do systemw
w celu dokonywania oszustw zakupowych, wykradania informacji osobistych oraz czerpania
korzyci ze skradzionych danych kart kredytowych lub kont bankowych. Zbrojne konflikty
na tle ideologicznym tocz si take na polu cybernetycznym. Rosnca fala bezprawnych lub
nieautoryzowanych wtargni wymaga zachowania cigej czujnoci i nieprzerwanego stosowania
si do porad zawartych w tej ksice. Pamitaj, e incydenty bezpieczestwa moe s nieuniknione,
ale dziki naszym dowiadczeniom bdziesz mg zminimalizowa spowodowane przez nie szkody.
Reagowanie na przypadki zamania zabezpiecze jest wymagane przez agencje rzdowe i firmy
prywatne, a jest to zajcie zarwno fascynujce, jak i trudne. W istocie naruszenia bezpieczestwa
s dzi tak powszechne, e dowiadczeni specjalici zajmujcy si reagowaniem na incydenty s
bardzo poszukiwani i mog liczy na ciekaw ciek rozwoju.
To wszystko moe wydawa si przytaczajce, ale mamy nadziej, e rozbudzilimy w Tobie
ciekawo i ju nie moesz si doczeka przeczytania reszty tej ksiki! Naszym celem jest wyposaenie
Ciebie, nasz Czytelniku, w narzdzia i techniki, ktre opracowalimy w ogromnych blach,
a nastpnie doszlifowywalimy przez dziesi ostatnich lat na podstawie setek wielkoskalowych,
midzynarodowych, skomplikowanych i publicznych przypadkw.
STUDIA PRZYPADKU
W tej czci rozdziau prezentujemy dwa studia przypadku; poznajc je, zdobdziesz oglny obraz
tego, z czym mierzymy si w naszej pracy. Pierwszy przypadek dotyczy kradziey danych kart
bankowych z duej organizacji finansowej. Do danych kart bankowych zaliczamy karty kredytowe
i debetowe oraz informacje o powizanych z nimi kontach. Bohaterem drugiej opowieci jest firma
technologiczna, w ktrej haker za pomoc zoliwego oprogramowania najpierw wkrad si do systemu,
a potem wycofa i wykorzystywa wirtualn sie prywatn (VPN) do wykradania poufnych danych.
Wybralimy te dwa przypadki ze wzgldu na wysoki stopie zoonoci zarwno ataku, jak i metod
ROZDZIA 1. PRAWDZIWE INCYDENTY 31
jego odparcia. Warto uczy si na podstawie wasnego dowiadczenia i dlatego mamy nadziej,
e opisy te bd pouczajce. Oczywicie zmienilimy fakty, aby nie zdradzi tosamoci ofiar,
poniewa jak ju wspomnielimy opisujemy tu prawdziwe zdarzenia.
Dawa on hakerowi pen kontrol nad systemem ofiary oraz funkcjami wysyania i pobierania
plikw, moliwo tunelowania ruchu, np. przy uyciu protokou RDP (ang. Remote Desktop
Protocol) do rodowiska, oraz umoliwia przekazywanie ruchu sieciowego midzy tylnymi
drzwiami. Oprogramowanie BKDOOR szyfrowao swoje polecenia (C2) algorytmem RC4.
Okreleniem dane C2 oznaczamy instrukcje wysyane przez hakera do wirusa, odpowiedzi na te
instrukcje i zwizane z nimi protokoy. Serwer C2, do jakiego odnosimy si dalej w tym rozdziale,
to serwer, ktry najczciej znajduje si poza rodowiskiem ofiary i jest kontrolowany przez
atakujcego oraz suy mu do przesyania danych C2 do i z wirusa. Program BKDOOR zapisywa
informacje przy uyciu techniki zwanej przechwytywaniem kolejnoci szukania bibliotek DLL
(ang. DLL search order hijacking). Wicej informacji na jej temat mona znale na podanych
niej stronach internetowych.
W INTERNECIE
msdn.microsoft.com/en-us/library/ms682586(VS.85).aspx
www.mandiant.com/blog/dll-search-order-hijacking-revisited
ze rodowiska do serwera C2 tylnych drzwi. Zaawansowani hakerzy nie wykorzystuj tej techniki,
poniewa nietypowo duy transfer danych wzbudza podejrzenia. W prawie kadym przypadku
dane byy kompresowane do formatw ZIP, RAR lub CAB. Tego rodzaju kompresja pozwala
zmniejszy rozmiar plikw o 50 95%.
W czerwcu haker wiedzia ju o serwerze wstpnym cile kontrolowanym systemie,
ktry jako jedyny ma dostp do poufnych zasobw wykorzystywanym przez administratorw
systemowych do wchodzenia do chronionej czci sieci, w ktrej przechowywane byy wszystkie
poufne informacje finansowe. W tym przypadku haker wykry istnienie serwera wstpnego
(JMPSRV) przy uyciu monitorowania pocze RDP nawizywanych przez jednego konkretnego
administratora systemu i przegldania zapisu naciskanych przez niego klawiszy.
Na poniszym rysunku ilustrujemy drog, jak przeby haker, aby doj do chronionego
rodowiska finansowego.
Ponadto tworzy skrt kadego egzemplarza danych, aby zapobiec gromadzeniu duplikatw danych.
Pniej program szyfrowa znalezione informacje przy uyciu algorytmu RC4 i zakodowanego
na stae statycznego klucza oraz zapisywa dane w pliku lokalnym.
W ramach testu haker wczy program cardharvest.exe w PROC_FIN01 na okoo 15 minut,
a nastpnie zrobi to samo w innych piciu systemach. Po uruchomieniu wirus szuka pliku
c:\windows\system32\temp\stopme.txt. Jeli go znalaz, koczy dziaanie, co zapobiegao uruchomieniu
wielu kopii tego samego programu w jednym systemie. Pniej haker wykonywa skrypt z JMPSRV,
ktry montowa udzia sieciowy do kadego z szeciu systemw testowych, przenosi pliki zdobyte
przez wirus do katalogu lokalnego i kompresowa ten katalog do postaci archiwum RAR
zabezpieczonego hasem. Potem pobiera to archiwum za pomoc programu BKDOOR.
Przez kolejne trzy miesice haker zdoby miliony egzemplarzy danych posiadaczy kont z wszystkich
dziewidziesiciu systemw finansowych. Wchodzi do rodowiska co tydzie lub dwa przy
uyciu tunelowania ruchu RDP przez ustanowione poczenie C2 midzy JMPSRV i serwerem C2,
nastpnie wykonywa rne skrypty do pracy w zdobytym systemie finansowym. Skrypty te
zatrzymyway program cardharvest.exe we wszystkich systemach, kopioway pliki z wynikami do
JMPSRV i tworzyy zaszyfrowany plik RAR zawierajcy zgromadzone pliki wyjciowe. Na koniec
haker wykonywa polecenie pobrania plikw w programie BKDOOR, aby pobra archiwum RAR.
Mniej wicej po dziesiciu miesicach, od momentu w ktrym doszo do wamania do sieci,
jeden z administratorw systemu zauway, e serwer o nazwie MAIL komunikuje si przez port
TCP 80 z adresem IP pochodzcym z obcego kraju. Po wykonaniu kilku czynnoci wstpnych
stwierdzi, e doszo do wamania, i wszcz postpowania zaradcze. Polegao ono na tym,
e wezwano czterech z nas do siedziby firmy w celu opracowania planu ograniczenia szkd,
przeprowadzenia kompleksowego ledztwa oraz eradykacji wszystkich ladw dziaalnoci hakera
ze rodowiska. Cay proces reakcji na incydent trwa w sumie mniej ni dwa miesice.
Byo to zadanie trudne z wielu powodw. Nasz zesp musia:
znale wskaniki naruszenia bezpieczestwa we wszystkich systemach w rodowisku;
prowadzi analizy w systemach Windows, Linux oraz Apple OS X;
przeanalizowa ruch sieciowy ponad dziesiciu internetowych punktw dostpowych;
przeanalizowa zoliwe oprogramowanie systemw Windows (PE) i Linux (ELF);
rozgry skomplikowane systemy finansowe i zoone rodowisko, aby dobrze zrozumie
istot incydentu.
Zesp naprawczy mia za zadanie:
natychmiastowo wdroy plan ograniczania szkd dla chronionego rodowiska
finansowego;
wsppracowa z zespoem ledczym w celu opracowania kompleksowego rozwizania;
przeprowadzi eradykacj wirusw z caej organizacji w cigu dwch dni;
unika wywierania wpywu na dziaanie systemw finansowych przez pewien czas.
ROZDZIA 1. PRAWDZIWE INCYDENTY 37
Od tej pory haker mg uwierzytelnia si w sieci VPN firmy, podszywajc si pod uprawnionego
uytkownika, oraz mia dostp do prawie kadego systemu w rodowisku, bo wykorzystywa konto
lokalnego administratora. Zatem od tej pory hakera nie interesowa ju system Boba ani znajdujcy
si w nim wirus. Nie usun go jednak, prawdopodobnie jako zabezpieczenie na wypadek utraty
dostpu do sieci VPN.
Niecay tydzie pniej haker poczy si z sieci VPN z systemu o nazwie HOME3. Nazwa
systemu hakera zostaa wykryta podczas ledztwa prowadzonego w systemie, do ktrego nastpio
wamanie. Haker zakoczy sesj RDP, zamykajc okno, a nie wylogowujc si. To spowodowao
zarejestrowanie w dzienniku zabezpiecze systemu ofiary zdarzenia wraz z nazw hosta i adresem
IP hakera przypisanym z puli VPN. Analiza dziennikw VPN pozwolia znale adres IP, z jakiego
nawizano poczenie. Nastpnie za pomoc ekspertyzy geolokacyjnej ustalono, e adres IP naley
do sieci komputerowej z Teksasu. To jednak nie musi oznacza, e haker rzeczywicie znajduje si
w tym regionie. Hakerzy czsto wamuj si do niepowizanych systemw spoza organizacji ofiary
i wykorzystuj je jako tymczasowe lokalizacje do przeprowadzania atakw.
Przez dwa nastpne tygodnie haker prowadzi rozeznanie w rodowisku, m.in. mapowa
udziay sieciowe, rekurencyjnie tworzy listy katalogw, zainstalowa rejestrator naciskanych
klawiszy w krytycznych systemach oraz przy uyciu skradzionych danych powiadczajcych
uytkownikw czy si zdalnie z ich poczt przez firmow implementacj usugi sieciowej
Outlook Web Access (OWA). Nie ma adnych ladw przemawiajcych za tym, e w okresie tym
haker skrad jakiekolwiek poufne informacje.
Mniej wicej dwa tygodnie pniej haker zacz pobiera wane dane dotyczce dziaalnoci
firmy z udziau na serwerze plikw SENS1. Udzia ten zawiera poufne dane inynieryjne dotyczce
nowej technologii, nad ktr pracowaa firma. Wyciek tych informacji oznaczaby utrat rynkowej
przewagi firmy nad konkurencj. Dostp do plikw tylko dla inynierw pracujcych w projekcie
by chroniony za pomoc list ACL, ale haker mia dostp do lokalnego konta administratora, wic
dopisa do tych list take siebie. Przypomnijmy, e haso lokalnego konta administratora byo takie
same w wikszoci systemw w rodowisku. Przez cztery nastpne tygodnie haker sporadycznie
wykrada dane z tajnego udziau. Tworzy zaszyfrowane archiwa RAR zawierajce interesujce go
pliki, zmienia nazwy RAR na CAB, a nastpnie wysya dane do kontrolowanego przez siebie
serwera poprzez FTP. Po wykradzeniu danych haker usuwa plik RAR i wcza defragmentator
dysku Windows, aby uniemoliwi ledczym ewentualne odzyskanie danych.
Mniej wicej dwa tygodnie po tym, jak haker rozpocz wykradanie wanych informacji
dotyczcych dziaalnoci firmy z serwera SENS1, firma zacza ewaluacj nowego systemu
zarzdzania informacjami oraz zdarzeniami bezpieczestwa informatycznego (ang. Security
Information and Event Management SIEM) i przekazaa dzienniki VPN jako jeden ze zbiorw
danych do przeanalizowania przez ten system. Analiza wykazaa, e Bob wielokrotnie logowa si
do sieci VPN z wicej ni jednego systemu i z wicej ni jednego adresu IP jednoczenie. Firmowi
specjalici od zabezpiecze przeanalizowali ruch VPN i natychmiast wyczyli konto Boba.
Wwczas haker zacz korzysta z konta uytkownika o nazwie Mary, ktre rwnie zdoby.
Prawdopodobnie wama si do wikszej liczby kont i zdoby wicej certyfikatw, aby zapewni
sobie cigy dostp do rodowiska.
ROZDZIA 1. PRAWDZIWE INCYDENTY 39
Tego samego dnia system SIEM wykry te niepokojc dziaalno na koncie Mary. To skonio
kierownictwo firmy do podjcia rodkw zaradczych i skontaktowania si z nami w celu uzyskania
pomocy. Okazao si, e w firmie nie zdawano sobie sprawy z rozlegoci zagroenia. Przed wdroeniem
czynnoci naprawczych warto byo najpierw szczegowo zbada spraw. W toku ledztwa odkrylimy,
e jeden z adresw IP wykorzystywanych przez hakera do czenia si z sieci VPN by taki sam,
jak adres IP, na ktry sygna wysya program GH0ST RAT. To umoliwio nam zidentyfikowanie
GH0ST RAT i wczenie BOBSYS01 do dziaa naprawczych. Pomoglimy firmie przeprowadzi
kompleksow eradykacj i usun hakera ze rodowiska w dwa tygodnie po wszczciu akcji.
Dwa dni po eradykacji system SIEM wykry, e adres IP uywany wczeniej przez hakera
prbuje poczy si z instancj OWA przy uyciu wielu kont uytkownikw. Cho w ramach
eradykacji zmieniono hasa do wszystkich kont uytkownikw, specjalici od zabezpiecze
zorientowali si, e nie wszyscy uytkownicy to zrobili. Zatem jeszcze raz przeprowadzono masow
zmian wszystkich hase oraz wyczono te konta, ktre nie zmieniy hasa w cigu dwudziestu
czterech godzin. W ten sposb uniemoliwiono hakerowi dostp do OWA. Na szczcie dla firmy
hakerowi udao si jedynie odczyta wiadomoci e-mail z piciu rnych kont uytkownikw,
wszyscy byli inynierami. Potem znw straci dostp do systemu. Opisane dziaania przedstawiamy
na poniszym rysunku.
Sprawa ta bya bardzo interesujca z tego powodu, e haker zaszczepi tylko jedne tylne drzwi
GH0ST, ktrych uy na pocztku do zainfekowania systemu. Pniej haker uzyskiwa i utrzymywa
dostp do rodowiska, korzystajc z sieci VPN. To utrudnio nam dochodzenie, poniewa wszelkie
bezprawne dziaania, z wyjtkiem wykonywanych w systemie BOBSYS01, byy prowadzone przez VPN.
40 INCYDENTY BEZPIECZESTWA
Zesp dochodzeniowy musia sprawdza pozornie normalne zdarzenia, ktre byy wykonywane
w zych zamiarach. Aby np. dowie, e haker rekurencyjnie sporzdzi list katalogw na okrelonym
serwerze plikw, nasi specjalici musieli zrobi jedn z poniszych rzeczy:
odzyska polecenia wykonane przez hakera,
odzyska plik, w ktrym haker zapisa dane,
znale du liczb plikw, do ktrych kto uzyskiwa dostp sekwencyjny w czasie
trwania infekcji (w analizowanym okresie).
Inn rnic midzy tym a poprzednim przypadkiem jest to, e w pierwszym przypadku zesp
dochodzeniowy szuka dowodw wamania w caym rodowisku, a w drugim tylko w okrelonym
podzbiorze systemw (na podstawie poszlak). Oprcz znalezienia wszystkich celw pocztkowego
ataku typu spear phising, specjalici ledczy podpierali si dowodami zdobywanymi za pomoc
analizy aktywnoci w sieci VPN i na podstawie tak uzyskanych informacji okrelali, ktre systemy
trzeba przeanalizowa. Zesp ledczy nie musia szuka dowodw wamania we wszystkich
systemach w caym rodowisku. Byo tak, poniewa haker mia dostp do rodowiska przez
ograniczony czas i za kadym razem wchodzi do niego w taki sam sposb, co uatwiao ledztwo.
Natomiast w pierwszym przypadku specjalici ledczy, aby okreli zakres ekspansji szkd, musieli
szuka wskanikw wamania we wszystkich systemach w rodowisku, gdy haker mia duo czasu
na dziaanie, zdy wiele zrobi, a samo rodowisko naleao zabezpieczy przed dalszymi
nielegalnymi dziaaniami.
Najwiksz rnic midzy rozwizaniami zastosowanymi w tym i poprzednim przypadku jest
to, e ta firma zastosowaa kilka natychmiastowych rozwiza, kade w odpowiedzi na okrelone
dziaania hakera. Gdyby wamywacz wszczepi inne tylne drzwi ni GH0ST lub gdyby przeoczono
inn ciek dostpu do rodowiska, wszystkie te rodki zaradcze nie powstrzymayby hakera przed
dalszym penetrowaniem rodowiska.
Na zakoczenie tego rozdziau pragniemy przedstawi pojcie, ktrego uywamy do wyjaniania
rnych faz ataku, czyli cykl ataku. Posugujemy si nim przy demonstrowaniu rnych etapw
wikszoci wama oraz przy planowaniu czynnoci zaradczych. Pomylelimy, e najlepiej
bdzie zdefiniowa to pojcie ju w tym rozdziale, poniewa moemy posuy si przykadami
z przedstawionych studiw przypadku.
Poniej opisujemy siedem faz cyklu ataku oraz wskazujemy, jak kady etap odnosi si
do przypadkw, ktre przestudiowalimy wczeniej.
Pocztkowe stadium wamania haker wykonuje zoliwy kod w przynajmniej jednym
systemie. Najczciej jest to moliwe z wykorzystaniem inynierii spoecznej, np. przy
uyciu techniki spear phishing, lub za pomoc luki w systemie podczonym do internetu.
W atakach bazujcych na inynierii spoecznej czsto wykorzystuje si podatn na ataki
obc aplikacj dziaajc w systemie docelowego uytkownika.
Przypadek 1. Haker zastosowa technik SQL injection na podatnym serwerze
baz danych.
Przypadek 2. Haker wysa zainfekowany dokument PDF poczt e-mail.
Ustanowienie punktu wejcia haker zapewnia sobie dostp do zaatakowanego systemu.
Robi to natychmiast po pocztkowym stadium wamania. Najczciej w tym celu
w zainfekowanym systemie instalowane s trwae tylne drzwi albo wysya si do tego
systemu dodatkowe pliki binarne lub kod powoki.
Przypadek 1. Haker zainstalowa tylne drzwi w systemie w rodowisku wewntrznym.
Przypadek 2. Zainfekowany plik PDF zainstalowa wirus GH0ST RAT w systemie
BOBSYS01.
Zwikszenie uprawnie haker uzyskuje dostp do systemw i danych szerszy ni
pocztkowo. W celu zwikszenia uprawnie najczciej wykonuje si zrzut skrtw hase
lub tokenw, po czym amie si hasa lub wykonuje atak polegajcy na przesaniu skrtu,
rejestruje si naciskane klawisze w celu przechwycenia danych powiadczajcych, wykorzystuje
si uytkownikw bez uprawnie, wydobywa si z pamici haso zalogowanego uytkownika
albo wykorzystuje si uprawnienia posiadane przez aplikacj, np. mona wykonywa
polecenia przy uyciu procedury rozszerzonej xp_cmdshell dostpnej w Microsoft SQL.
Dodatkowo w fazie tej haker uzyskuje dostp do kont uytkownikw, ktrzy niekoniecznie
s administratorami, ale maj dostp do podanych plikw lub innych zasobw.
42 INCYDENTY BEZPIECZESTWA
Zakoczenie misji hakerzy osigaj swj cel, ktrym czsto jest kradzie lub modyfikacja
istniejcych danych. Gdy zrobi to, co chcieli, rzadko opuszczaj zdobyte rodowisko, tylko
pozostaj w nim na wypadek, gdyby mieli now misj do wykonania. Nierzadko si zdarza,
e haker niektre fazy cyklu ataku powtarza wielokrotnie w czasie jednego incydentu.
Przykadowo zodziej danych kart kredytowych i debetowych moe nie tylko ukra
informacje, ale i zmieni dane w krtkim czasie.
Studium przypadku 1. haker wykrad dane kart kredytowych.
Studium przypadku 2. haker wykrad dane o tajnym projekcie.
I CO Z TEGO
Cyberataki bd si zdarzay. Stay si ju norm. Jeli jest ryzyko wamania, wczeniej czy pniej
pewnie padniesz jego ofiar. Dlatego naley wiedzie, co robi i jak skutecznie zareagowa na incydent.
Czas powicony na nauk technik i procedur opisanych w tej ksice na pewno nie bdzie czasem
straconym.
Skoro ju wzbudzilimy Twoj ciekawo i jeste gotw do dalszej lektury tej ksiki,
chcielibymy, aby zacz myle jak czonek zespou reagowania na incydenty. Czy uwaasz, e
opisane organizacje optymalnie rozwizay swoje problemy? Co Twoim zdaniem powinny
zrobi przed wamaniem, aby ograniczy jego skutki? Warto zastanowi si nad tymi pytaniami,
poniewa jednym z zada specjalisty zajmujcego si reagowaniem na incydenty jest wanie
szukanie odpowiedzi na takie pytania i wiele innych. Musisz dziaa tak, aby zatrudniajca Ci
organizacja miaa pewno, e rozwiesz problem. Robilimy to ju setki razy, a i tak cigle
uczymy si czego nowego. A gdy przypominamy sobie wczeniejsze operacje, zawsze znajdujemy
co, co teraz moglibymy zrobi lepiej. Mdry Polak po szkodzie!
PYTANIA
1. Co to jest incydent bezpieczestwa?
2. Kto powinien zdefiniowa incydent bezpieczestwa?
3. Czy wszystkie wirusy s dostosowane do konkretnego systemu operacyjnego?
4. Jakie nieprawidowoci w architekturze sieciowej firmy opisanej w studium przypadku 1.
dostrzegasz?
5. Z ilu faz skada si cykl ataku?
6. Czy kady atak zawsze skada si z wszystkich typowych faz?
44 INCYDENTY BEZPIECZESTWA
ROZDZIA 2.
Podrcznik reagowania
na incydenty
bezpieczestwa
46 INCYDENTY BEZPIECZESTWA
P
rzygotowanie si na incydent bezpieczestwa komputerowego i odpowiednia reakcja to due
wyzwanie. Technologia nie stoi w miejscu, przez co czasami moe si wydawa, e trudno
za ni nady. Jednak wsplnie mamy ju ponad trzydzieci lat dowiadczenia w tej brany
i pracowalimy nad setkami przypadkw w organizacjach kadej wielkoci. W odniesieniu do tego
rozdziau do gowy przychodz dwie konkretne myli. Po pierwsze, najwiksze trudnoci przy reagowaniu
na incydenty powoduj sprawy nietechniczne. Po drugie, podstawowe zasady badania incydentw
bezpieczestwa komputerowego nie rni si od nietechnicznych ledztw. Najwiksz trudnoci
jest przedarcie si przez szum marketingowy, ktrego celem jest przekonanie nas, e jest inaczej.
W rozdziale tym pragniemy pomc Ci w przejciu przez gszcz modnych sw i marketingowy
szum, aby wiedzia, co naprawd jest wane, i mg sporzdzi solidny program reagowania na
incydenty bezpieczestwa. Zaczynamy od podstaw, czyli wyjaniamy, co oznacza bezpieczestwo
komputerowe, jakie s cele reakcji na incydent oraz kto bierze udzia w tym procesie. Nastpnie
opisujemy fazy cyklu ledztwa, metody zdobywania najwaniejszych informacji oraz techniki
raportowania. Z dowiadczenia wiemy, e organizacje, ktre powicaj duo czasu na przemylenie
tych kwestii, znacznie skuteczniej radz sobie z incydentami bezpieczestwa.
CO TO JEST INCYDENT
BEZPIECZESTWA KOMPUTEROWEGO
Definicja incydentu bezpieczestwa komputerowego okrela zakres dziaa utworzonego zespou
specjalistw i pozwala skupi dziaania na odpowiednich obszarach. Definicja jest bardzo wana,
poniewa dziki niej kady czonek druyny zna swoje obowizki. Jeli jeszcze jej nie sformuowae,
powiniene jak najszybciej okreli, co w Twojej organizacji oznacza pojcie incydent bezpieczestwa
komputerowego. Nie istnieje jedyna powszechnie przyjta definicja, ale uwaa si, e incydent
bezpieczestwa komputerowego to kade zdarzenie:
ktrego celem jest spowodowanie szkody,
ktrego sprawc jest czowiek,
w ktrym wykorzystywane s zasoby komputerowe.
Przyjrzymy si krtko tym cechom. Pierwsze dwie s zbiene z wieloma typami incydentw
nietechnicznych, np. podpaleniem, kradzie czy napaci. Jeli celem nie jest wyrzdzenie
krzywdy, trudno zdarzenie nazwa incydentem. Naley przy tym podkreli, e szkoda moe nie
by natychmiastowa. Przykadowo skanowanie systemu w poszukiwaniu luk w zabezpieczeniach,
ktre pniej zostan wykorzystane w szkodliwy sposb, samo w sobie nie powoduje szkody ale
bez wtpienia jest to dziaanie, ktrego celem jest wyrzdzenie krzywdy. Druga cecha, czyli udzia
czowieka, wyklucza takie zdarzenia jak losowe awarie systemu i czynniki niezalene od nas, np.
pogod. To, e z powodu przerwy w dopywie energii przestaa dziaa zapora sieciowa, wcale
nie oznacza, e wystpi incydent bezpieczestwa, chyba e sprawc tej przerwy jest dziaajcy
umylnie czowiek albo kto wykorzysta nadarzajc si okazj do zrobienia czego niedozwolonego.
ROZDZIA 2. PODRCZNIK REAGOWANIA NA INCYDENTY BEZPIECZESTWA 47
Na czas trwania procesu reakcji na incydent firmy zazwyczaj tworz zespoy zoone
z wyznaczonych osb, ktrych zadaniem jest przeprowadzenie dochodzenia i pozbycie si
problemu. Zespoem dowodzi dowiadczony kierownik, najlepiej jeli jest to kto potraficy
kierowa innymi jednostkami biznesowymi podczas ledztwa. Tego, jak wany jest ten ostatni
punkt, nie da si przeceni. Kierownik zespou musi szybko zdobywa informacje i zleca zadania
do wykonania wszystkim zasobom w organizacji. Dlatego jest nim czsto dyrektor ds. informatyki
i zabezpiecze albo kto mu bezporednio podlegy. Osoba ta staje si osi caego przedsiwzicia,
ROZDZIA 2. PODRCZNIK REAGOWANIA NA INCYDENTY BEZPIECZESTWA 49
nadzoruje wiele dziaa oraz dba o to, by wszystko byo wykonywane, jak naley. Zespoem naprawczym
kieruje dowiadczony pracownik dziau informatycznego. Jest to posta, na ktrej spoczywa obowizek
koordynowania wszystkich czynnoci naprawczych, wcznie z dziaaniami podjtymi na podstawie
wynikw ledztwa, ocen stopnia poufnoci skradzionych danych oraz wprowadzeniem strategicznych
zmian majcych na celu zapewnienie wikszego bezpieczestwa firmy.
Wikszo organizacji obsadza zespoy reagowania i naprawczy osobami z rnych szczebli
i dziaw. Wrd nich podczas ledztwa czsto mona znale pracownikw wyszego szczebla
z dziaw IT, zwaszcza majcych dowiadczenie w analizowaniu dziennikw, informatyce ledczej
i rozpoznawaniu wirusw. Zesp ledczy powinien te mie szybki dostp do miejsc przechowywania
dziennikw, konfiguracji systemu oraz musi posiada uprawnienia do wyszukiwania potrzebnych
materiaw, jeeli w uyciu jest obejmujca cae przedsibiorstwo platforma reagowania na incydenty.
Ponadto w grupie mog znale si konsultanci, ktrzy bd opracowywa taktyk ledztwa, jeli
maj odpowiednie dowiadczenie. Zesp naprawczy z kolei powinien mie uprawnienia do tego,
aby nakaza wprowadzenie zmian potrzebnych do pozbycia si problemu.
Uwaga Jedn z bran, ktra notorycznie narzuca procesy i standardy ledczym, jest brana kart patniczych.
Gdy przedstawiciele tej gazi zostan zaangaowani w proces ledczy, prowadzone przez Ciebie
dziaania naprawcze maj drugorzdne znaczenie w porwnaniu z ich celem ochrony marki
i zmotywowania organizacji do spenienia wymogw standardu PCI DSS.
Uwaga Kiedy zatrudniamy zewntrznych ekspertw do pomocy w ledztwie, warto napisa umow
przy pomocy radcw prawnych, aby jej postanowienia byy zabezpieczone przed ujawnieniem.
Znajdowanie kandydatw
Jednym z narzucajcych si pomysw jest rekrutowanie czonkw innych zespow RI. Dobrym
pomysem jest te umieszczenie ogosze w portalach typu LinkedIn, cho jest to metoda pasywna.
Szybsze efekty daje aktywne poszukiwanie kandydata np. w grupach technicznych, odpowiednich
mediach spoecznociowych i na tablicach ogosze. Do wielu specjalistw od informatyki ledczej
o rnym poziomie umiejtnoci mona dotrze wanie poprzez tablice ogosze, takie jak np.
Forensic Focus.
Jeli masz moliwo skontaktowania si z biurami karier orodkw uniwersyteckich,
na uczelniach z dobrym programem nauczania w dziedzinach informatyki, inynierii i informatyki
ledczej moesz znale pocztkujcych analitykw do zespou. Z naszego dowiadczenia wynika,
e najlepszych kandydatw do naszej pracy mona znale tam, gdzie program obejmuje jako
przedmiot gwny czteroletni kurs informatyki i inynierii oraz istnieje moliwo odbywania
dodatkowych kursw z informatyki ledczej albo zdobywania certyfikatw z tej dziedziny.
52 INCYDENTY BEZPIECZESTWA
Odwrotnie jest natomiast w miejscach uczcych wszystkiego w ramach gwnego programu nauczania.
Podstawowe zdolnoci, jakie powinien posiada idealny kandydat, s takie same jak w wikszoci
innych dziedzin naukowych: s to zmys obserwacji oraz umiejtno porozumiewania si,
klasyfikowania, mierzenia, wnioskowania i przewidywania. Osoby obdarzone takimi talentami
s z reguy najlepszymi czonkami zespow RI. Jeli znajdziesz w pobliu swojej firmy uczelni,
ktrej program nauczania skupia si najpierw na podstawach nauki i inynierii oraz przewiduje
seminaria lub przedmioty fakultatywne z informatyki ledczej, masz szczcie.
Czynnoci wstpne
Na tym etapie gwnym celem jest zebranie zespou RI, przejrzenie danych sieciowych i innych,
ktre s od razu dostpne, ustalenie rodzaju incydentu oraz ocena potencjalnych skutkw.
Chodzi o to, by zgromadzi informacje potrzebne zespoowi do podjcia decyzji, w jaki sposb
zareagowa.
Zazwyczaj na etapie tym nie zbiera si danych bezporednio z dotknitego systemu.
Najczciej informacje zdobyte w tej fazie dotycz sieci, dziennikw oraz innych dowodw
historycznych i kontekstowych. Na ich podstawie mona podj decyzj, jakie rodki zaradcze
przedsiwzi. Jeli np. ko trojaski zostanie znaleziony w laptopie dyrektora finansowego banku,
sposb dziaania bdzie cakiem inny ni w przypadku wykrycia tego szkodliwego programu
w komputerze recepcjonisty. Jeeli ponadto konieczne jest przeprowadzenie penego ledztwa,
informacje te bd czci pierwszych tropw. Oto lista niektrych czynnoci, ktre typowo
wykonuje si na tym etapie.
Przeprowadzenie rozmw z osobami, ktre zgosiy incydent, aby wydoby jak najwicej
przydatnych informacji.
Przeprowadzenie rozmw z pracownikami IT, ktrzy mog co wiedzie o szczegach
incydentu.
Przeprowadzenie rozmw z pracownikami z pionu biznesowego, ktrzy mog co wiedzie
na temat zdarze biznesowych mogcych mie zwizek z incydentem.
Przejrzenie dziennikw sieci i zabezpiecze w celu znalezienia informacji pozwalajcych
na potwierdzenie, e incydent mia miejsce.
Udokumentowanie informacji zebranych ze wszystkich rde.
ledztwo
Celem ledztwa jest ustalenie faktw dotyczcych tego, co si stao, jak do tego doszo oraz
w niektrych przypadkach kto jest za to odpowiedzialny. Dla komercyjnego zespou RI znalezienie
sprawcy moe by niemoliwe, ale wane jest, aby wiedzie, kiedy naley szuka pomocy na zewntrz
i u prawnikw. Bez znajomoci takich faktw jak te, w jaki sposb haker w ogle uzyska dostp
do sieci albo co zrobi, mamy mae szanse na skuteczne pozbycie si problemu. Jednym z pomysw
moe by po prostu odczenie komputerw od prdu i zbudowanie zainfekowanego systemu
od nowa, ale czy mona spa spokojnie, skoro nie wiadomo, jak haker si wama i co zrobi?
Poniewa bardzo cenimy zdrowy sen, opracowalimy i doszlifowalimy piciostopniowy proces
przedstawiony na rysunku 2.2., ktry umoliwia przeprowadzenie skutecznego ledztwa.
W nastpnych podpunktach opisujemy kady etap tego procesu.
ROZDZIA 2. PODRCZNIK REAGOWANIA NA INCYDENTY BEZPIECZESTWA 55
Tropy wstpne
ledztwo bez jakichkolwiek tropw mija si z celem i dlatego zgromadzenie wstpnego materiau
ma krytyczne znaczenie dla powodzenia caej operacji. W wielu organizacjach spostrzeglimy bdn
praktyk polegajc na koncentrowaniu si wycznie na szukaniu szkodliwego oprogramowania.
Jest mao prawdopodobne, aby jedynym celem hakera byo zainstalowanie swojego programu.
Najczciej jego zamiary s cakiem inne, np. chce wykra wiadomoci e-mail albo dokumenty,
przechwyci hasa, zakci dziaanie sieci lub zmodyfikowa dane. Gdy przestpca wejdzie do
Twojej sieci i bdzie mia poprawne dane powiadczajce, nie bdzie musia uywa szkodliwego
56 INCYDENTY BEZPIECZESTWA
wyjciowych, zdarzenia logowania, mechanizmy utrwalania danych, adresy IP, nazwy domenowe,
a nawet sygnatury protokow sieciowych wykorzystywanych przez szkodliwe oprogramowanie.
Celem czynnoci IOC jest opisanie, wyraenie i znalezienie artefaktw zwizanych z incydentem.
Jako e IOC to tylko definicja, nie obejmuje konkretnego mechanizmu wyszukiwania. Konieczne
jest stworzenie lub zakupienie technologii wykorzystujcej jzyk IOC.
Wanym czynnikiem, ktry naley wzi pod uwag przy wybieraniu sposobu reprezentacji
wskanikw zagroenia, jest to, czy danego formatu mona uywa w organizacji. Sieciowe
wskaniki zagroenia s najczciej reprezentowane za pomoc regu Snort i mona znale
zarwno darmowe, jak i komercyjne produkty dla przedsibiorstw do ich obsugi. Z perspektywy
hosta niektre z dostpnych formatw IOC to:
OpenIOC firmy Mandiant (www.openioc.org),
CybOX firmy Mitre (cybox.mitre.org),
YARA (code.google.com/p/yara-project).
Dla dwch z tych formatw, OpenIOC i YARA, istniej darmowe narzdzia do tworzenia
wskanikw zagroenia. Firma Mandiant stworzya narzdzie dla systemu Windows o nazwie
IOC Editor, za pomoc ktrego mona tworzy i modyfikowa wskaniki zagroenia w standardzie
OpenIOC. Dla formatu YARA istnieje kilka narzdzi umoliwiajcych opracowanie i edytowanie
regu, a nawet automatycznie tworzcych reguy na podstawie otrzymanego szkodliwego
programu. Cechy dobrych wskanikw zagroenia i techniki ich tworzenia opisujemy
w rozdziale 5.
W INTERNECIE
IOC Editor www.mandiant.com/resources/download/ioc-editor
Narzdzia YARA www.deependresearch.org/2013/02/yara-resources.html
Aby korzysta ze wskanikw zagroenia, nie musisz mie duych rodkw, cho jeli chcesz
ich efektywnie uywa w caym przedsibiorstwie, prawdopodobnie bdziesz musia przeznaczy
na to due sumy. Istniej zarwno darmowe, jak patne narzdzia obsugujce standardy YARA
i OpenIOC do szukania wskanikw zagroenia. Jeli chodzi o rozwizania darmowe, to projekt
YARA zapewnia narzdzia do wyszukiwania regu YARA. Ponadto jest kilka otwartych projektw
rwnie obsugujcych reguy YARA niektre z nich s wymienione na podanej wczeniej stronie.
Firma Mandiant udostpnia darmowe narzdzie Redline, za pomoc ktrego mona szuka regu
OpenIOC w systemach. Bezpatne narzdzia s do skuteczne przy niewielkiej liczbie systemw,
ale jako ich pracy znacznie pogarsza si w wikszej skali. Aby skutecznie wyszukiwa wskaniki
zagroe w przedsibiorstwie, naley zainwestowa w rozwizanie na du skal. Przykadowo
narzdzie FireEye obsuguje reguy YARA, a komercyjne programy Mandiant rozpoznaj format
OpenIOC. Pamitaj jednak, e oprogramowanie i procesy obsugujce wskaniki zagroenia to
wci niezbyt ugruntowane narzdzia. Ten aspekt brany zabezpiecze zapewne jeszcze si zmieni
w najbliszych latach, wic miej oczy i uszy otwarte.
wysokiego stopnia pewnoci, nie mona od razu stwierdzi, e doszo do incydentu. Aby potwierdzi,
e naley zainteresowa si systemem, trzeba wykona kilka czynnoci.
Podczas identyfikowania systemw naley przeprowadza wstpn segregacj nowych informacji.
Postpujc zgodnie z poniszymi punktami, bdziesz mie pewno, e wicej czasu powicisz
na robienie tego, co trzeba, i nie rozproszysz dziaa ledczych.
Weryfikacja zbadaj wstpnie informacje o znalezionych elementach i sprawd, czy s
wiarygodne. Jeeli np. wskanik zagroenia pasuje tylko do nazwy jednego pliku, to czy
moe to by faszywy alarm? Czy nowe dane s spjne ze znanymi ramami czasowymi
prowadzonego ledztwa?
Kategoryzacja przyporzdkuj zidentyfikowany system do jednej lub wikszej liczby
kategorii uatwiajcych prowadzenie ledztwa w uporzdkowany sposb. Dowiadczenie
nauczyo nas, e oznaczenie systemu jako zamanego to za mao i powinno si unika tego
okrelenia. O wiele bardziej pomocne s kategorie, ktre wskazuj na rodzaj odkrytych
dziaa hakera, np. Zainstalowane tylne drzwi, Dostp przy uyciu prawidowych danych
powiadczajcych, SQL Injection, Kradzie danych powiadczajcych do wielu kont
lub Kradzie danych.
Szeregowanie wzgldem wanoci zidentyfikowanemu systemowi przypisz wzgldny
numer w szeregu w odniesieniu do wanoci odkrycia. Czsto stosowanym rozwizaniem
jest szeregowanie na podstawie czynnikw biznesowych, takich jak gwny uytkownik albo
typ przetwarzanych informacji. Metoda ta jednak pomija wan kwesti, a mianowicie nie
uwzgldnia innych czynnikw ledczych. Jeeli np. pocztkowe szczegy zidentyfikowanego
zagroenia w systemie zgadzaj si z odkryciami z innych systemw, dalsze badanie tego
systemu moe nie dostarczy adnych nowych tropw, wic system ten mona oznaczy
jako mniej wany. Z drugiej strony, jeeli szczegy sugeruj co nowego, np. inne tylne
drzwi, dobrym pomysem moe by nadanie systemowi wyszego priorytetu do analizy,
bez wzgldu na inne czynniki.
Zachowywanie dowodw
Po zidentyfikowaniu systemw i wykryciu aktywnych wskanikw zagroenia kolejnym krokiem
jest zbieranie dodatkowych danych do analizy. Zesp musi opracowa plan gromadzenia i zachowywania
materiau dowodowego, niezalenie od tego, czy ma to by robione w firmie, czy poza ni. Gwnym
celem zachowywania dowodw jest wykorzystanie procesu minimalizujcego zmiany w systemie i czas
interakcji z systemem oraz pozwalajcego na utworzenie odpowiedniej dokumentacji. Materia
dowodowy mona zbiera w dziaajcym systemie lub wyczy system w celu zrobienia jego obrazu.
Jako e kady zesp ma ograniczone rodki, nie ma sensu gromadzi wielkich iloci danych,
ktre nigdy nie zostan przebadane (chyba e bdzie ku temu bardzo dobry powd). Zatem dla
kadego nowego systemu, ktry zostanie zidentyfikowany, naley podj decyzj, jakiego rodzaju
dowodw szuka. Zawsze bierz pod uwag kontekst dziaania kadego systemu, wcznie z tym,
czy wyrnia si on czym od pozostaych lub czy przegld danych na ywo przyczynia si
do nowych odkry. Jeli uwaasz, e system ma jak wyjtkow cech albo masz jaki inny
przekonujcy powd, zachowaj dowody, ktre s Twoim zdaniem niezbdne do rozwoju ledztwa.
60 INCYDENTY BEZPIECZESTWA
Do typowych materiaw dowodowych, ktre naley zachowa, zalicza si dane z analizy na ywo
dziaajcego systemu, pobieranie zawartoci pamici oraz obrazy dyskw na potrzeby ledztwa.
Analiza na ywo jest to najczciej stosowana metoda zdobywania dowodw w ramach
reakcji na incydent bezpieczestwa. Polega ona na zgromadzeniu za pomoc automatu
standardowego zestawu danych o dziaajcym systemie. Dane te zawieraj zarwno ulotne,
jak i nieulotne informacje, ktre dostarczaj szybkich odpowiedzi na niektre pytania
ledczych. Typowe dane gromadzone w ten sposb to listy procesw, aktywne poczenia
sieciowe, dzienniki zdarze, listy obiektw w systemie plikw oraz zawarto rejestru.
Ponadto moemy zdoby tre okrelonych plikw, np. dziennikw i podejrzanego
szkodliwego oprogramowania. Jako e proces przebiega automatycznie, a ilo danych
nie jest zbyt dua, analiza na ywo jest wykonywana w wikszoci interesujcych systemw.
W wyniku tej analizy z reguy udaje si zdoby dodatkowe dowody na potwierdzenie
zagroenia, dodatkowe informacje na temat tego, co haker zrobi w systemie, oraz tropy,
ktre pozwalaj na wyznaczenie dalszego kierunku ledztwa.
Pobieranie zawartoci pamici technika ta jest najbardziej przydatna w przypadkach,
gdy istnieje podejrzenie, e haker wykorzystuje jaki mechanizm do ukrywania swojej
dziaalnoci, np. rootkit, i nie mona zrobi obrazu dysku. Ponadto badanie pamici jest
potrzebne wtedy, gdy szkodliwa dziaalno ogranicza si wanie tylko do pamici albo
pozostawia bardzo mao ladw na dysku. Mimo to, w wikszoci systemw, w ktrych
pracujemy, zawarto pamici nie jest pobierana. Moe niektrym wyda si to zaskakujce,
ale z naszych dowiadcze wynika, e analiza pamici daje niewiele korzyci dla ledztwa,
poniewa dostarcza za mao danych, aby mona byo znale w nich odpowiedzi na oglniejsze
pytania. Moe i uda si wykry dziaanie szkodliwego programu w systemie, ale raczej nie
dowiesz si, skd si on tam wzi ani co haker robi w systemie.
Wykonanie obrazu dysku obrazy dyskw to kompletne kopie dyskw twardych z systemu.
W trakcie reakcji na incydent zazwyczaj wykonujemy obrazy na ywo, tzn. system nie jest
wyczany, podczas gdy tworzony jest jego obraz na zewntrznym noniku. Obrazy dyskw
s bardzo due i ich analiza moe zajmowa duo czasu, wic wykonujemy je wycznie wtedy,
gdy uwaamy, e bdzie to korzystne dla ledztwa. Obrazy dyskw s przydatne w sytuacjach,
gdy haker aktywnie dziaa w systemie przez dugi czas, gdy brakuje odpowiedzi na pewne
pytania i inne dowody nie przybliaj nas do nich oraz gdy liczymy na znalezienie dodatkowych
informacji, ktre naszym zdaniem mog znajdowa si tylko na dysku. W przypadku incydentw,
w ktrych nie ma podejrzenia wamania, wykonanie penego obrazu dysku jest norm.
Analiza danych
Analiza danych to proces polegajcy na pobraniu materiau dowodowego zachowanego wczeniej
i zbadaniu go pod ktem szukania odpowiedzi na pytania postawione w ledztwie. Wyniki tej
analizy s zazwyczaj przedstawiane w postaci formalnego raportu. Jest to ten etap cyklu reakcji na
incydent, ktry z reguy zajmuje najwicej czasu. Twoja organizacja musi wybra, ktre ekspertyzy
masz wykona samodzielnie, a ktre, jeli w ogle jakiekolwiek, zleci do wykonania jednostkom
zewntrznym. Wyrnia si trzy podstawowe obszary analizy.
ROZDZIA 2. PODRCZNIK REAGOWANIA NA INCYDENTY BEZPIECZESTWA 61
Uwaga W innych rodzajach dochodze stosuje si metodyczne podejcie do ekspertyz ledczych. Celem jest
zdobycie wszystkich informacji, ktre potwierdzaj lub wykluczaj oskarenia. Jeli Twj zesp
przeprowadza take inne rodzaje dochodze, musisz odpowiednio dostosowywa swoje dziaania
i wiedzie, jak utrzyma umiejtnoci potrzebne w innych typach ledztw. W tej ksice koncentrujemy
si na prowadzeniu ledztw zwizanych z wykrywaniem przypadkw naruszenia bezpieczestwa
systemu i naprawianiu szkd w sposb szybki i jednoczenie dokadny w skali przedsibiorstwa.
62 INCYDENTY BEZPIECZESTWA
Czynnoci naprawcze
Plany naprawcze mog by bardzo rne, w zalenoci od warunkw, w jakich doszo do incydentu
i jego potencjalnych skutkw. Plan powinien uwzgldnia czynniki z wszystkich aspektw sytuacji,
wcznie z kwestiami prawnymi, biznesowymi, politycznymi i technicznymi. Ponadto plan powinien
obejmowa protok komunikacyjny okrelajcy, co i kiedy mog mwi poszczeglne osoby
z organizacji. W kocu niebagatelne znaczenie ma te czas naprawy. Jeli zrobi si to zbyt szybko,
mona pomin jeszcze nieodkryte nowe informacje. Jeli zrobi si to za pno, moe doj do
powanych szkd albo haker np. zmieni taktyk. Z naszych dowiadcze wynika, e najlepszym
czasem na rozpoczcie czynnoci naprawczych jest moment po uciszeniu si stosowanych metod
detekcyjnych. Innymi sowy, jest to czas, kiedy narzdzia szukajce wskanikw zagroenia
przestan zgasza nowe zdarzenia.
Zalecamy rozpoczynanie tworzenia planu naprawczego jak najwczeniej w procesie reakcji
na incydent, tak aby unikn przecienia zespou i popenienia bdw. Likwidacja skutkw
niektrych incydentw wymaga znacznie wicej wysiku ni samo ledztwo. W organizacji jest
wiele ruchomych czci, przez co przeprowadzenie skoordynowanej akcji usuwania zagroenia
jest nieatwym zadaniem. Nasza strategia polega na zdefiniowaniu odpowiednich dziaa
do wykonania dla wymienionych obszarw, takich jak:
zajcie pozycji,
taktyka (krtkoterminowa),
strategia (dugoterminowa).
Kilka lat temu prowadzilimy ledztwo w niewielkiej firmie z brany obronnej, ktra miaa sie
okoo 2000 hostw. Niektre inne nasze ledztwa prowadzilimy w rodowiskach dochodzcych
do ponad 100 000 hostw, zatem wydawao si, e to ledztwo bdzie atwe. Zaczlimy od
zastanowienia si, czy jest w ogle sens tworzenia kompletnej dokumentacji, zwaszcza e klient
mia mocno ograniczone rodki finansowe. Jednak wkrtce odkrylimy, e w prawie 200 systemach
znajduje si szkodliwe oprogramowanie, a w jeszcze wikszej liczbie systemw kto szpera,
posugujc si poprawnymi danymi powiadczajcymi! Niektre te przypadki byy powizane
z prowadzonym przez nas ledztwem, a inne nie. Bez takiej dokumentacji, jak zazwyczaj
prowadzimy, stracilimy koncentracj i zmarnowalimy wicej czasu, ni zabraoby nam
napisanie tej dokumentacji. Wniosek z tego taki, e zawsze naley notowa wane informacje
podczas ledztwa, bez wzgldu na jego rozmiar.
W INTERNECIE
Systemy do zarzdzania sprawami
RTIR www.bestpractical.com/rtir/
Raportowanie
Jestemy konsultantami, wic nasze raporty s dla klientw podstawowym dokumentem.
Sporzdzenie dobrego raportu wymaga czasu, ktry zdaniem niektrych mona lepiej spoytkowa.
Jednak bez raportw atwo si pogubi w tym, co si ju wykonao. Nauczylimy si, i nawet
w jednym ledztwie moe by tyle odkry, e przekazanie klientowi wszystkich informacji na raz,
bez sporzdzania okresowych raportw, moe by niemoliwe. Oglne odkrycia czsto s
dokonywane na podstawie wielu technicznych faktw, ktrych przekazanie bez odpowiedniej
dokumentacji moe by bardzo trudne.
ROZDZIA 2. PODRCZNIK REAGOWANIA NA INCYDENTY BEZPIECZESTWA 65
I CO Z TEGO
Przedstawione w tym rozdziale informacje mog przyda si dyrektorom, ktrzy chc skompletowa
lub unowoczeni zesp reagowania na incydenty. Poniej znajduje si lista czynnoci, jakie
powinno si wykona w tym procesie.
Sformuowanie definicji incydentu bezpieczestwa komputerowego dla swojej organizacji.
Identyfikacja krytycznych danych oraz miejsc ich przechowywania i osb, ktre za nie
odpowiadaj.
Opracowanie procesu i systemu ledzenia incydentw w celu identyfikowania osobnych
incydentw.
Zbadanie wymogw prawnych i regulacyjnych wobec organizacji i danych, ktrymi si
posuguje.
Okrelenie tego, co bdzie robione samodzielnie w firmie, a co zostanie zlecone jednostkom
zewntrznym.
Znalezienie i przeszkolenie zdolnych czonkw zespou RI.
Stworzenie szablonw formalnej dokumentacji na potrzeby procesw reakcji na incydenty.
Opracowanie procedur przechowywania materiau dowodowego w systemach operacyjnych
obecnych w rodowisku organizacji.
Zaimplementowanie sieciowych i hostowych rozwiza do tworzenia wskanikw
zagroenia i ich wyszukiwania.
Zdefiniowanie szablonw i wytycznych do pisania raportw.
Utworzenie mechanizmu lub procesu do rejestrowania istotnych informacji ledczych.
66 INCYDENTY BEZPIECZESTWA
PYTANIA
1. Wymie grupy w organizacji, ktre mog by zaangaowane w proces reakcji na incydent.
Wyjanij, dlaczego naley porozumiewa si z tymi grupami w przypadku wystpienia incydentu.
2. Twoja organizacja otrzymuje telefon od organu ochrony porzdku publicznego z informacj,
e istnieje podejrzenie, i doszo u was do wycieku danych. Przedstawiciel organu podaje
kilka szczegw, m.in. dat i godzin przepywu poufnych informacji z waszej sieci, docelowy
adres IP oraz rodzaj treci. Czy te informacje maj cechy dobrego tropu? Wyjanij swoj
odpowied. O co jeszcze mona zapyta? Jak mona zamieni te dane w trop do czynnego
wykorzystania?
3. Jakie s zalety i wady zbierania materiau dowodowego na dziaajcym systemie w porwnaniu
z analizowaniem obrazu dysku? Dlaczego analiza na ywo jest najczciej stosowan metod
zachowywania dowodw podczas procesw RI?
4. Podczas ledztwa znajdujesz dowody na to, e w systemie dziaa szkodliwe
oprogramowanie. Jak zareagujesz i dlaczego wanie tak?
5. Wyjanij, dlaczego tworzenie i szukanie wskanikw zagroenia jest krytycznym
elementem ledztwa.
6. Kiedy zaczyna si proces naprawy? Wyjanij, dlaczego.
ROZDZIA 3.
Przygotowanie
na incydent
68 INCYDENTY BEZPIECZESTWA
S
zanse na przeprowadzenie skutecznego ledztwa s niewielkie, chyba e organizacja przeznaczy
odpowiednie rodki na przygotowanie si na incydent. Zawarte w tym rozdziale informacje
s pomocne w tworzeniu infrastruktury, za pomoc ktrej organizacja bdzie w stanie w sposb
metodyczny i zorganizowany prowadzi ledztwa oraz wdraa procesy naprawcze. Dowiesz si,
jak przygotowa swj zesp do prowadzenia ledztwa oraz zbierania, analizowania i raportowania
informacji w celu udzielenia odpowiedzi na typowe pytania padajce podczas incydentu.
Co dokadnie si stao? Jakie s szkody i jak haker dosta si do rodka?
Czy incydent wci trwa?
Jakie informacje skradziono?
Jakie zasoby zostay dotknite incydentem?
Co trzeba ujawni i kogo naley powiadomi?
Co zrobi, aby powstrzyma zagroenie?
Jak zapewni ochron przedsibiorstwa przed podobnymi wypadkami w przyszoci?
ledztwo samo w sobie jest trudne. Pobieranie potrzebnych informacji z systemw
informatycznych i komunikacja z odpowiednimi osobami bd rwnie trudne, chyba e wczeniej
odpowiednio si przygotujesz. W rozdziale tym podpowiadamy, co zrobi zawczasu, aby wspomc
ewentualne ledztwo. Opisujemy trzy oglne obszary.
Przygotowanie organizacji do tego obszaru zaliczaj si: identyfikacja ryzyka, zasady
skutecznej reakcji na incydent, wsppraca z firmami zewntrznymi, kwestie infrastruktury
globalnej oraz szkolenie uytkownikw.
Przygotowanie zespou RI do tego obszaru zaliczaj si procedury komunikacji i zasoby,
takie jak sprzt, oprogramowanie, szkolenia i dokumentacja.
Przygotowanie infrastruktury do tego obszaru zaliczaj si: zarzdzanie rodkami,
instrumentacja, dokumentacja, narzdzia ledcze, segmentacja oraz usugi sieciowe.
Identyfikacja ryzyka
Przygotowywanie organizacji na ewentualny incydent naley rozpocz od oglnego oszacowania
poziomu ryzyka. Jakie s krytyczne rodki organizacji? W jaki sposb s udostpniane? Jakie jest
zagroenie? Jakich regulacji organizacja musi przestrzega? (Z nimi zazwyczaj wie si jakie ryzyko).
Dziki zidentyfikowaniu poziomu zagroenia mona przeznaczy zasoby na przygotowanie si
do takiego rodzaju incydentw, jakie mog najprawdopodobniej wystpi. Krytyczne rodki to
obszary w organizacji, od ktrych zaley cigo jej skutecznego dziaania. Oto kilka przykadw
takich rodkw.
Reputacja czy konsumenci wybieraj produkty i usugi Twojej firmy czciowo dlatego,
bo ufaj, e ich dane bd bezpieczne?
Poufne informacje biznesowe czy masz opracowane krytyczne plany marketingowe
albo tajne receptury na produkcj czego? Gdzie przechowujesz patenty, kod rdowy
i inne pozycje wasnoci intelektualnej?
Informacje osobiste czy Twoja organizacja przechowuje lub przetwarza informacje
pozwalajce zidentyfikowa osoby?
Dane kont patniczych czy Twoja organizacja przechowuje lub przetwarza dane PCI?
rodki krytyczne to rodki stanowice najwiksze obcienie lub ktrych strata jest najbardziej
dotkliwa dla organizacji. Obcienie wyraa si przez moliwo ujawnienia. Zastanw si, jakie
mog by skutki ujawnienia procesw lub technologii albo utraty pracownikw. Do przykadw
takich obcie zaliczaj si nieaktualizowane serwery sieciowe, systemy podczone do internetu,
niezadowoleni pracownicy oraz nieprzeszkoleni pracownicy.
Kolejnym wanym czynnikiem jest to, kto moe wykorzysta te luki. Czy kady, kto ma poczenie
z internetem? Czy kady, kto ma dostp do budynkw firmowych? Czy tylko osoby znajdujce si
fizycznie w zabezpieczonym obszarze? czc te czynniki, moesz okreli stopnie ryzyka.
Przykadowo najbardziej krytyczne rodki dostpne tylko zaufanym osobom w kontrolowanym
rodowisku fizycznym mog stanowi mniejsze ryzyko ni rodki dostpne przez internet.
Identyfikacja ryzyka jest bardzo wana, poniewa dziki niej mona optymalnie wykorzysta
posiadane zasoby. Nie kady zasb w rodowisku powinien by zabezpieczony w taki sam sposb.
Najwicej zasobw przeznacza si do ochrony rodkw, ktre stwarzaj najwiksze ryzyko.
W INTERNECIE
SANS sans.org/security-resources/policies
ISO 27002:2005 www.iso.org
Dostpno danych
Podczas ledztwa gromadzi si mnstwo danych do analizy. Bardzo czsto maj one posta duych
zbiorw danych, takich jak np. obrazy dyskw twardych. Wikszo analiz wykonuje podstawowy
zesp, musisz zatem znale sposb na efektywne przesyanie danych do czonkw tego zespou
majcych dowiadczenie w analizie ledczej. Cho naley mie na uwadze dokumentacj celn
i ograniczenia w krajach rdowym i docelowym, najwiksz przeszkod bdzie opnienie
w dostarczaniu danych w odpowiednie rce. Jeli s jakiekolwiek wtpliwoci dotyczce tego,
czy dane trzeba przesa, rozpocznij ich wysyanie natychmiast. Ju niejeden dzie stracono
przez nieodpowiedni komunikacj i niezdecydowanie.
Uytkownicy powinni dokadnie wiedzie, co mog, a czego nie mog robi w swoich systemach
i to zarwno pod wzgldem bezpieczestwa komputerw, jak i reakcji na incydent. Uytkownik powinien
wiedzie, jakie s typowe cele ataku hakerw i w jaki sposb hakerzy je wykorzystuj, aby wej do sieci.
Uytkownicy powinni by przeszkoleni w zakresie reagowania w odpowiedni sposb na podejrzane
zdarzenia. Najczciej zaleca si natychmiastowe powiadamianie odpowiednich osb. Oglnie rzecz
biorc, uytkownicy powinni by poinstruowani, aby samodzielnie nie podejmowali adnych czynnoci
ledczych, poniewa w ten sposb mog zniszczy dowody i utrudni dalsze postpowanie.
Specyficznym problemem, ktry naley rozwiza, jest niebezpieczestwo zwizane z instalowaniem
przez uytkownikw oprogramowania na serwerze. Uytkownicy mog instalowa wasne serwery
sieciowe lub FTP bez autoryzacji i w ten sposb powodowa luk w oglnym systemie zabezpiecze
organizacji. Dalej w tym rozdziale piszemy o ograniczaniu uprawnie administracyjnych, ktre pozwala
zmniejszy ryzyko w tym zakresie. Jednake uytkownicy czasami znajduj sposoby na obejcie rodkw
bezpieczestwa i naley im uwiadomi, jakie zagroenie niesie nieuprawniona instalacja programw.
PRZYGOTOWYWANIE ZESPOU RI
Jak napisalimy w poprzednim rozdziale, podstawowy zesp reagowania na incydenty skada si
ze specjalistw z rnych dziedzin: informatykw, ledczych, ekspertw, a nawet konsultantw
zewntrznych. Kady moe wnie do zespou pewien zasb umiejtnoci i ma okrelone oczekiwania.
Twoim zadaniem jest sprawienie, by zesp skada si z pracowitych osb majcych oko do szczegw,
kontrolujcych si, nierobicych niczego w popiechu i dokumentujcych wszystko, co robi.
W podrozdziale tym przedstawiamy podstawowe zasady tworzenia zespou. Omawiamy
definiowanie misji, sposoby komunikacji, metody przekazywania efektw prac oraz zasoby
potrzebne do odpowiedniego wyposaenia pracownikw.
Definiowanie misji
Zdefiniowanie misji zespou RI pomaga w skoncentrowaniu jego prac na celu oraz ustaleniu
oczekiwa w odniesieniu do reszty organizacji. Wszystkie elementy misji musz by w peni
akceptowane i wspierane przez kierownictwo najwyszego szczebla. W przeciwnym razie zesp RI
nie bdzie mia wpywu na organizacj. Misja moe zawiera niektre z poniszych punktw lub
wszystkie te punkty.
Reagowanie na wszystkie incydenty bezpieczestwa i podejrzane zdarzenia w formalnie
zorganizowany sposb.
Prowadzenie kompletnych bezstronnych ledztw.
Szybkie weryfikowanie informacji o naruszeniu bezpieczestwa.
Ocenianie zakresu szkd i incydentu.
Kontrolowanie i ograniczanie zasigu incydentu.
Gromadzenie i dokumentowanie materiau dowodowego zwizanego z incydentem.
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 73
Procedury komunikacji
Podczas incydentu rwnoczenie pracuje kilka zespow podstawowy zesp ledczy, zesp
pomocniczy, prawnicy oraz administratorzy systemw, ktrzy nie tylko wykonuj polecenia
czonkw zespou podstawowego, ale dodatkowo czsto sami wykonuj istotne czynnoci. Dobra
komunikacja to podstawa, wic bardzo wane jest zaplanowanie jej, zanim dojdzie do incydentu.
W tym punkcie opisujemy komunikacj taktyczn i doran.
Uwaga Temat komunikacji i dokumentacji naley omwi z radc prawnym organizacji. W niektrych
przypadkach prawnicy mog uczestniczy w komunikacji, aby upewni si, e informacje mog
by ujawniane. Decyzja w tym zakresie zaley od natury ledztwa i tego, czy organizacja robi co,
co podlega nadzorowi. Tu przyjmujemy zaoenie, e zasignito rady w tej kwestii i wszystko
odbywa si zgodnie z prawem.
Komunikacja wewntrzna
W wielu ostatnich ledztwach mielimy do czynienia z sytuacj, w ktrej haker od razu atakowa
serwery e-mail. Na kilku serwerach znalelimy dowody, e hakerzy zdobyli zawarto skrzynek
pocztowych osb na stanowiskach dyrektorskich i starszych administratorw systemw
informatycznych. Krtko potem hakerzy wrcili i przeszukiwali cay serwer pocztowy w celu
znalezienia acuchw wiadczcych o prowadzonym ledztwie. Niestety ryzyko, e hakerzy
bd patrze, jak prbujesz ich wytropi, nie jest tylko teoretyczne. Dlatego przygotowujc si
do zareagowania na incydent, pamitaj o poniszych zasadach bezpiecznej komunikacji.
Szyfruj wiadomoci e-mail zanim dojdzie do incydentu, sprokuruj certyfikaty S/MIME
dla czonkw podstawowego i pomocniczego zespou RI. Zasignij informacji w dziale IT
organizacji, poniewa moesz z niego otrzyma certyfikaty dla pracownikw bez ponoszenia
bezporednich kosztw. Ewentualnie mona skorzysta z alternatywnych rozwiza, takich
jak PGP, chocia integracja z popularnymi klientami poczty jest raczej saba.
Prawidowo oznaczaj wszystkie dokumenty i komunikaty okrelenia w rodzaju
Poufne, dla uprawnionych, Praca penomocnika, Przygotowane pod okiem radcy
s bardzo dobre i mog by nawet wymagane. Najlepiej spyta prawnika, jakie oznaczenia,
jeli w ogle jakie, s najodpowiedniejsze.
74 INCYDENTY BEZPIECZESTWA
Uwaga Zwracaj uwag na to, jakiego typu informacje s wysyane do serwera poczty z automatycznych
procesw. Jeli system monitorowania incydentw lub po prostu system poczty gosowej telefonu
biurkowego wysya do Ciebie potencjalnie tajne informacje, powiniene ograniczy takie wiadomoci
do prostego powiadomienia. Moe jest to troch mniej wygodne, ale moe uchroni Ci przed
ujawnieniem danych ledczych.
W INTERNECIE
rda darmowych certyfikatw S/MIME
www.instantssl.com/ssl-certificate-products/free-email-certificate.html
www.startssl.com
rda patnych certyfikatw S/MIME
www.symantec.com/verisign/digital-id
www.globalsign.com/authentication-secure-email
Jeli incydent musi zosta publicznie ujawniony, kto decyduje o treci i czasie wydania
komunikatu? W jaki sposb ma si to odby?
Jakie kary i grzywny dla organizacji s przewidziane za spnione ujawnienie incydentu?
Czy czas ujawnienia ma na to wpyw?
Jakie utrudnienia w ledztwie spowoduje ujawnienie incydentu? Czy jaki podmiot
zewntrzny musi bra udzia w ledztwie?
W jaki sposb ujawnienie wpynie na czynnoci naprawcze?
Szkolenie zespou RI
Nie da si przeceni wanoci dobrego przeszkolenia pracownikw. Jest wiele praktycznych
kursw dla czonkw zespow RI. Wikszo z nich jest warta swojej ceny. Jednak najlepsze
wyksztacenie daj programy niektrych uczelni wyszych. Aktualnie najlepsze programy maj
nastpujce jednostki:
Carnegie Mellon Software Engineering Institute (www.sei.cmu.edu),
Purdue University College of Technology (tech.purdue.edu),
Johns Hopkins University Information Security Institute (isi.jhu.edu).
Aktualnie liderem w brany szkole z zakresu informatyki ledczej jest instytut SANS
(ang. SysAdmin, Audit, Networking, and Security Institute). Oferuje duo wysokiej jakoci kursw.
W INTERNECIE
Instytut SANS www.sans.org
Ochrona danych
Podczas incydentu przetwarza si i analizuje poufne dane, wic niezalenie od tego, czy pracuje si
w terenie, we wasnym biurze, czy w trasie, naley poczyni odpowiednie kroki, aby uniemoliwi
nieuprawniony dostp do tych informacji. Najlepszym sposobem jest szyfrowanie danych.
Poufne dane mona przechowywa na dwa sposoby.
Trwae wewntrzne noniki danych zaliczaj si do nich dyski twarde i noniki na stae
zamontowane w komputerze. Najczciej wykorzystywanym rozwizaniem jest programowe
szyfrowanie caego dysku (ang. full disk encryption FDE) za pomoc takich technologii
jak Truecrypt czy McAfee Endpoint Encryption. Inn moliwoci, cho troch drosz,
jest sprztowe szyfrowanie FDE, ktre czasami nazywa si SED (ang. Self-Encrypting Drive).
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 77
W INTERNECIE
www.truecrypt.org
www.apricorn.com/products/hardware-encrypted-drives.html
www.mcafee.com/us/products/endpoint-encryption.aspx
Ostrzeenie Zanim podejmiesz decyzj dotyczc szyfrowania nonika danych, dobrze oszacuj poziom ryzyka,
na jakie jeste naraony. Do grupy wysokiego ryzyka zaliczaj si laptopy wykorzystywane
w niebezpiecznych rodowiskach i przesyane noniki przenone. Natomiast komputery stacjonarne
uywane w chronionym rodowisku laboratoryjnym nale do grupy niskiego ryzyka. Ponadto
pamitaj, e nawet jeli nie skopiujesz poufnych danych na swj komputer, to i tak mog si
one znale na twardym dysku. Jeli np. skorzystasz z informacji przy uyciu udziau sieciowego
albo zewntrznego napdu USB, system operacyjny lub jaka aplikacja moe utworzy na dysku
twardym pliki tymczasowe. Jeeli szukasz powodw, dla ktrych mona by byo zrezygnowa
z szyfrowania, prawdopodobnie potrzebujesz tego rodka zabezpieczajcego. Pamitaj, e
wikszo procesorw zawiera specjalne instrukcje, ktre znacznie przyspieszaj szyfrowanie,
dziki czemu stosowanie tej techniki nie jest ju tak kopotliwe jak kiedy.
ledztwo w terenie
Wiele incydentw wymaga przeprowadzenia ledztwa w siedzibie klienta. W takich przypadkach
naszym podstawowym narzdziem jest dobrze wyposaony laptop renomowanej firmy.
Wybieramy komputery dobrze wsppracujce ze specjalistycznym sprztem ledczym, ktrego
opis zamiecilimy w nastpnym podrozdziale. Budujc system do pracy, bierzemy pod uwag
kilka wanych czynnikw.
Pami zazwyczaj montujemy maksymaln lub prawie maksymaln moliw ilo pamici.
CPU wybieramy najlepszy model dostpny na danej platformie.
Magistrale wejcia i wyjcia eSATA, Firewire 800, USB 3.0 i inne szybkie interfejsy
do czenia komputera z zewntrznymi dyskami twardymi.
Rozmiar i rozdzielczo ekranu wybieramy due ekrany o wysokiej rozdzielczoci.
Trudno pracowa z monitorem o przektnej 14 cali.
Przenono ciar i wymiary s wane podczas podry.
Serwis gwarancyjny jeli sprzt ulegnie awarii, producent powinien natychmiast
wysya zamiennik albo specjalist od napraw.
Wewntrzna pami masowa powinna by dua i szybka. Jeli dodatkowo uda si
znale napd, ktry sam si szyfruje i jest obsugiwany przez BIOS Twojej pyty gwnej,
warto troch za niego dopaci.
78 INCYDENTY BEZPIECZESTWA
W INTERNECIE
Security Onion securityonion.blogspot.com
Network Security Toolkit networksecuritytoolkit.org
Easy-IDS skynet-solutions.net
Czasami mona natkn si na stwierdzenia, e jakie narzdzie musi by solidne pod ktem
prowadzenia ledztw oraz e jego status pod tym wzgldem decyduje o dopuszczalnoci
zdobytych za jego pomoc dowodw w sdzie. Nie istnieje jednak adna definicja okrelajca,
jakie warunki taki program powinien spenia i zazwyczaj to sdzia decyduje, czy uwzgldni
dany dowd w postpowaniu sdowym, czy nie. Zalecamy wic zastanowienie si nad czynnikami
scharakteryzowanymi w opisanych poniej rozprawach sdowych.
W 1923 roku sd federalny ustanowi zestaw standardw zwanych testem Fryea. Nie tak
dawno temu, w 1993 roku, Sd Najwyszy Stanw Zjednoczonych wyda opini, w ktrej
sformuowa kryteria dopuszczalnoci dowodw naukowych w sprawach federalnych.
(Naley wiedzie, e poszczeglne stany mog przyj standardy Fryea, kryteria ze sprawy
Dow lub wasne). Sprawa Daubert v. Merrell Dow Pharmaceuticals, 509 U.S. 579 (1993)
sprawia, e zamiast oglnej akceptacji zaczto wymaga sprawdzania wiarygodnoci
i relewantnoci dowodw. Konkluzje sdziw na temat dopuszczenia zezna ekspertw
przyczyniy si do sformuowania szeregu kryteriw, ktrymi mona posugiwa si podczas
weryfikowania wiarygodnoci zezna. Oto cztery kryteria brane pod uwag przy okrelaniu
wiarygodnoci dowodw pozyskanych za pomoc metod naukowych.
Czy teoria naukowa lub technika zostay empirycznie zbadane?
Czy teoria naukowa lub technika przeszy przez proces recenzji rodowiska naukowego
i byy opisane w literaturze fachowej?
Czy znany jest margines bdu? Czy istniej standardy okrelajce sposb
przeprowadzania bada t technik?
Czy metoda cieszy si akceptacj odpowiedniego rodowiska naukowego?
W innej sprawie, Kumho Tire Co et al. v. Carmichael et al. (1993), sd doszed do wniosku,
e kryteria przyjte w standardzie Daubert s niewystarczajce w przypadkach, w ktrych
wykorzystywane s metody niesformuowane w ramach naukowych. Metody te nie byy mniej
wartociowe, ale prawo nie byo odpowiednio przygotowane, aby uwzgldnia tego typu ekspertyzy.
W zwizku z tym sd opracowa dodatkowe kryteria.
Czy technika zostaa opracowana do innych celw ni rozstrzyganie sporw sdowych?
Czy ekspert wystarczajco dobrze wyjania wane dane empiryczne?
Czy technika bazuje na wysokiej jakoci danych?
Czy da si sprawdzi spjno procesw i metod stosowanych w danej technice?
Czy da si sprawdzi spjno procesw i metod stosowanych w danej technice
w odniesieniu do biecej sprawy?
Czy technika jest opisana w literaturze fachowej?
Czy biegy posiada odpowiednie kwalifikacje?
W czym dana technika rni si od innych podobnych metod?
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 81
Lubimy te mie kilka moliwoci do wyboru, poniewa zdarza si, e w pewnym rodowisku
okrelone narzdzie nie dziaa. Dlatego zazwyczaj mamy przynajmniej dwa narzdzia o zblionej
funkcjonalnoci. Utrzymujemy list narzdzi, ktre s aktualnie dopuszczone do uytku przez
konsultanta. Kady program przed trafieniem na t list jest testowany. Przeprowadzenie wasnych
testw jest dobrym pomysem nawet wtedy, gdy kto inny ju sprawdzi dane narzdzie.
W INTERNECIE
Kali Linux www.kali.org/
CAINE www.caine-live.net
Helix www.e-fense.com
Dokumentacja
W tym podpunkcie sowo dokumentacja odnosi si do zasad, procedur, zarzdzania wiedz lub
przepywem pracy w zespole RI. Obszary, ktre tu opisujemy, s naszym zdaniem najwaniejsze,
cho istniej inne wane tematy. Jednak zesp RI musi sam zdecydowa, co najbardziej zasuguje
na uwzgldnienie w dokumentacji.
W INTERNECIE
www.justice.gov/criminal/cybercrime/docs/ssmanual2009.pdf
http://www.law.cornell.edu/rules/fre
PRZYGOTOWYWANIE INFRASTRUKTURY
DO REAKCJI NA INCYDENT
Mamy na koncie setki przeprowadzonych procesw reakcji na incydenty, od wama po oszustwa.
Cho niektre dowody w sprawach rni si midzy sob, to jednak rda przydatnych tropw
i danych pozostaj w miar niezmienne, podobnie jak metody zdobywania i analizowania tych
danych. Niezalenie od rodzaju ledztwa, zesp RI powinien mie moliwo zdobywania danych
i wyszukiwania materiaw w caym przedsibiorstwie z tak atwoci, jak si to robi na jednym
komputerze. Nie jest wic zaskoczeniem, e odpowiednie rodki bezpieczestwa informacji
i procedury obsugi zmian uatwiaj szybk reakcj i proces naprawy.
Przez lata dowiadcze dostrzeglimy kilka obszarw, z ktrymi organizacje czsto maj problemy.
Wyrniamy dwie szerokie kategorie tych problemw; s to urzdzenia komputerowe (np. serwery,
komputery biurkowe i laptopy) oraz sie. Najpierw przyjrzymy si komputerom, a potem przejdziemy
do zagadnie zwizanych z konfiguracj sieci. W kadej z tych dwch kategorii opisujemy cztery
najwaniejsze kwestie, z ktrymi boryka si wikszo organizacji. Oto one.
Konfiguracja urzdze komputerowych:
zarzdzanie rodkami,
inwentaryzacja,
oprzyrzdowanie,
dodatkowe czynnoci pozwalajce na podniesienie poziomu bezpieczestwa.
84 INCYDENTY BEZPIECZESTWA
Konfiguracja sieci:
segmentacja sieci i kontrola dostpu,
dokumentacja,
instrumentacja,
usugi sieciowe.
Uwaga Nie opisujemy szczegowo metod doskonalenia zabezpiecze hostw i innych tematw
dotyczcych zwikszania poziomu bezpieczestwa. Jest wiele wartociowych materiaw, np.
wyczerpujce informacje mona znale w wytycznych Security Technical Implementation Guides
(STIGs) agencji Defense Information Systems Agency (DISA) dostpnych na stronie iase.disa.mil/stigs.
My koncentrujemy si na obszarach o najwikszym znaczeniu dla ledztwa.
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 85
Zarzdzanie rodkami
Gdy specjalici ds. bezpieczestwa komputerw zastanawiaj si, jak przygotowa rodowisko
do incydentu, rzadko bior pod uwag zarzdzanie rodkami. Wyobra sobie tak sytuacj:
dowiadujesz si, e haker obra za cel jeden z dziaw Twojej organizacji. Dzia ten zajmuje si
badaniem technologii o fundamentalnym znaczeniu dla nowej usugi, jak firma wiadczy.
Naturalnym odruchem byoby zbadanie systemw z tego dziau, aby sprawdzi, czy nie zostay
zamane ich zabezpieczenia. Ewentualnie mona by zaimplementowa dodatkowe protokoy
bezpieczestwa dla tego dziau. Aby dziaania te byy skuteczne, naley dokadnie wiedzie,
jakie systemy nale do dziau i gdzie s zlokalizowane.
W kontekcie ledztwa mona wyrni kilka wanych kwestii zwizanych z zarzdzaniem
rodkami. Cho wygodniej przechowywa wszystkie informacje w jednym miejscu, wikszo
organizacji przechowuje rne rodzaje danych o systemie w rnych miejscach. Najwaniejsze jest,
aby byo wiadomo, w jaki sposb mona dosta si do informacji, gdy bd potrzebne. Dlatego
naley oceni, jaka jest dostpno nastpujcych informacji o systemach.
Data dostarczenia wyobra sobie, e wykrywasz podejrzan aktywno, ktra miaa
miejsce dwa miesice temu w jednym systemie. Sprawdzasz nazw tego hosta w systemie
zarzdzania rodkami i dowiadujesz si, e jest to serwer, ktry wymieniono w zeszym
tygodniu. Wiesz wic, e aktualny system nie zawiera adnych dowodw zwizanych z tamt
aktywnoci sprzed dwch miesicy. W takim przypadku najlepszym rozwizaniem jest
znalezienie starego serwera, w czym rwnie moe by pomocny system zarzdzania rodkami.
Przynaleno wiele organizacji zleca rne usugi na zewntrz. Jeeli system nie naley
do Twojej organizacji, sposb reakcji na incydent moe by inny. Powinno by jasne, kto
jest wacicielem danego sprztu.
Jednostka biznesowa wiedza, do ktrej jednostki biznesowej w organizacji naley
okrelony system, moe dostarczy ledczym informacji kontekstowych i pomc w podjciu
odpowiednich decyzji. Przykadowo to, e dotknity system jest serwerem baz danych,
moe mie znaczenie, ale nie musi. Jeli jednak dodatkowo wiadomo, e serwer ten naley
do jednostki biznesowej posugujcej si informacjami podlegajcymi regulacjom prawnym,
to sprawa wyglda cakiem inaczej.
Fizyczna lokalizacja jeli trzeba wykona obraz dysku twardego albo inne czynnoci
wymagajce fizycznego dostpu do systemu, oczywicie musimy wiedzie, gdzie go szuka.
Nie twierdzimy, e informacje te musz by bez przerwy aktualizowane, np. w przypadku
laptopw, ale e podstawowa lokalizacja kadego urzdzenia powinna by gdzie zapisana.
Informacje kontaktowe aby mona byo koordynowa proby o dostp do rnych
zasobw, fizycznie korzysta z pewnych urzdze oraz powiadamia akcjonariuszy o wanych
zdarzeniach, naley posiada list kontaktw powizanych z kadym systemem. Najlepiej
aby na licie tej znajdoway si podstawowe i dodatkowe dane do kontaktu. W przypadku
serwerw przydatne s dane administratorw systemowych i aplikacji oraz firmowy punkt
kontaktowy. Jeli chodzi o uytkownikw kocowych, powinno si mie kontakt do
uytkownika gwnego i jego szefa.
86 INCYDENTY BEZPIECZESTWA
Rola usug ledczy musi wiedzie, jak rol dany system peni. Zalecamy dostarczanie
rozsdnej iloci szczegw, np. napis serwer to za mao. Jaki to serwer? Od jego roli
zaley to, jakie dziaania podejmiemy, z kim bdziemy si kontaktowa oraz jak bardzo
bdziemy si spieszy w dochodzeniu. Przykadowo o wiele atwiej wykona obraz dysku
twardego z laptopa ni z napdu SAN o pojemnoci 16 TB podczonego do produkcyjnego
serwera baz danych. Im szybciej si o tym dowiemy, tym lepiej zareagujemy na incydent.
Konfiguracja sieci w konfiguracji sieci naley zarejestrowa nazw hosta, konfiguracj
IP oraz adresy MAC kadego interfejsu. Jeeli adres IP jest przydzielany przez DHCP, nie
powinien by podawany. Jeli jednak jest przypisany statycznie, jego podanie w systemie
zarzdzania rodkami moe by korzystne.
Inwentaryzacja
Standardowa dokumentacja budowy systemu organizacji oraz magazynw oprogramowania i inne
dokumenty rzadko przedstawiaj kompletny obraz infrastruktury informatycznej. W trakcie
ledztwa czsto znajdujemy programy, sprzt i systemy operacyjne, o ktrych nikt w organizacji
wczeniej nie wiedzia. Jako e nie lubimy niespodzianek w rodku dochodzenia, zachcamy do ich
wykrywania zawczasu. Zalecamy przeprowadzenie inwentaryzacji (automatycznie lub w inny sposb)
w celu zdobycia i zweryfikowania poniszych informacji. Naley zapisa nazw producenta, nazw
produktu oraz numer wersji kadego produktu uywanego w organizacji. Oto szczegy tego spisu.
Systemy operacyjne (Windows, Mac OS X, Linux, HP-UX).
Sprzt (laptopy, komputery biurkowe, serwery, urzdzenia przenone).
Technologie sieciowe (przeczniki, bezprzewodowe punkty dostpu, zapory sieciowe, IDS,
serwery proxy).
Schemat sieci.
Oprogramowanie zabezpieczajce (antywirus, HIPS, biaa lista).
Zarzdzanie (atki, konfiguracje, zarzdzanie rodkami, monitorowanie wydajnoci).
Aplikacje uytkowe (edytory tekstu, programy graficzne, programy dla inynierw,
przegldarki internetowe).
Aplikacje biznesowe (do zarzdzania czasem i dokumentami oraz do przetwarzania
patnoci).
Uwaga Ze wzgldu na atw dostpno tczowych tabel, w systemie Windows kady skrt lanman hasa
krtszego ni 15 znakw i kady skrt NTLM hasa krtszego ni 9 znakw naley uwaa za zamany.
Czsto spotykamy si z opiniami, e haker nie bdzie w stanie zama hasa do systemu Windows
w sensownym czasie, ale szybko udowadniamy, e to iluzja, pobierajc zrzut skrtw hase i w cigu
kilku minut pokazujc ich rozszyfrowane wersje (w przypadku NTLM proces zajmuje kilka godzin).
Sam moesz to sprawdzi, korzystajc z narzdzi wymienionych poniej.
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 87
Hasa
Masowe zmienianie danych powiadczajcych (np. reset hase) to dla wielu organizacji
wyjtkowo trudne zadanie. W trakcie ledztwa moesz odkry, e haker zama haso do
jednego konta lub wikszej liczby kont. Rozwizaniem takiego problemu jest oczywicie
zmiana odpowiednich danych powiadczajcych. Czsto jednak hakerzy zdobywaj setki,
a nawet tysice hase w postaci zrzutw skrtw z kontrolerw domen Windows. Wrd nich
zwykle znajduj si hasa do kont usugowych ktre zazwyczaj s wpisane na stae do rnych
systemw zaplecza biurowego i aplikacji. Ponadto istniej hasa do aplikacji, np. specjalistycznych
systemw finansowych. I w kocu niektre organizacje wykorzystuj to samo konto administratora
lokalnego we wszystkich systemach. To wszystko w sumie jest dla dziau informatycznego
jednym wielkim koszmarem, chyba e ma gotowy plan wprowadzania zmian u wszystkich
uytkownikw i we wszystkich usugach na raz. Proces ten z reguy planuje si w porozumieniu
z pracownikami pomocy technicznej, ktrzy najprawdopodobniej bd musieli tumaczy,
co si stao, zdezorientowanym klientom. Nie da si przeceni wagi tego kroku. Wystarczy
pomin jeden system lub jedno konto administratora, aby caa praca posza na marne.
W INTERNECIE
Narzdzie do wykonywania zrzutw skrtw hase o nazwie fgdump www.foofus.net/~fizzgig/fgdump
Darmowe tczowe tabele www.freerainbowtables.com
Narzdzie do amania hase przy uyciu tczowych tabel o nazwie rcracki_mt sourceforge.net/projects/rcracki.
Oprzyrzdowanie
Szukajc sposobw na udoskonalenie systemu w taki sposb, aby jak najatwiej prowadzio si
w nim ledztwo, naley uwzgldni dwie pocztkowe fazy, czyli zdobywanie tropw i podanie
tropami. Co mona zarejestrowa, przechwyci lub zapisa w inny sposb, aby jak najbardziej
uatwi ustalenie, co si stao? Pomyl o narzdziach, ktre ju masz mierniki programowe,
monitory wydajnoci oraz program antywirusowy i zapory sieciowe na hostach i zastanw si,
jak ulepszy ich konfiguracj. Nastpnie poszukaj nowych rozwiza, np. narzdzi ledczych.
Czy da si skontaktowa z systemem i otrzyma od niego odpowied na pytania typu:
Czy taki plik istnieje?, Czy figuruje w rejestrze taki a taki kucz?.
Jak gromadzi dane z dziennikw i gdzie je przechowywa? Jak dugo przetrzymywa dane?
Czy wszystkie systemy znajduj si w tej samej strefie czasowej, co uatwia korelacj zdarze?
Opisujemy tu kilka rozwiza kwestii rejestrowania danych w dziennikach i sposobw konfiguracji
systemu, dziki ktrym moliwe bdzie zachowanie informacji przydatnych w ledztwie.
W organizacji moe ju by wdroone centralne rozwizanie rejestracji danych w dziennikach.
Jeli tak, to wietnie! A jeli nie, zastanw si, jakie nakady byyby potrzebne do jego wdroenia.
Moliwoci jest wiele, od darmowych i otwartych programw, takich jak Splunk, ELSA, Snare
firmy InterSect Alliance oraz NTSyslog, po wysokiej klasy komercyjne pakiety do zabezpieczania
informacji i zarzdzania zdarzeniami (ang. Security Information and Event Management SIEM),
takie jak ArcSight i enVision firmy RSA. Zarzd organizacji musi sam zdecydowa, ktre rozwizanie
w ich przypadku bdzie najlepsze.
Kolejn kwesti wymagajc podjcia decyzji jest sposb przechowywania danych. Oglnie
rzecz biorc, zalecamy przechowywanie dziennikw przez przynajmniej rok. W niektrych
rodowiskach zdarze jest tak duo, e trudno przechowywa informacje o nich duej ni kilka
tygodni. W takich przypadkach naley przejrze dane i wybra z nich te elementy, ktre warto
zachowa duej. Wikszo wama wykrywa si po kilku tygodniach od zdarzenia, cho bywa
tak, e haker pozostaje w systemie niezauwaony miesicami, a nawet latami. Ponadto pamitaj,
e kwestie dotyczce rejestrowania danych mog podlega regulacjom branowym. I tak wytyczne
Data Security Standards v2.0 (DSS) PCI nakazuj przechowywanie przez rok danych wszystkich
rodkw nalecych do rodowiska przetwarzania danych PCI. W innych przypadkach radca
prawny moe nalega na jak najkrtsze przechowywanie danych. Upewnij si, e zalecenie to nie
jest w konflikcie z potencjalnym ryzykiem dla przyszych dochodze.
Na koniec naley jeszcze zdecydowa, jakie informacje maj by rejestrowane w dziennikach.
Powinno si wzi pod uwag dwa gwne rda danych, czyli systemy operacyjne i aplikacje.
Wikszo organizacji, dla ktrych prowadzimy ledztwa, ma le skonfigurowane narzdzia
do obsugi dziennikw danych w systemach operacyjnych i w ogle nie zapisuje informacji
o aplikacjach. Najpierw zajmiemy si systemami operacyjnymi.
Dwa najczciej spotykane systemy operacyjne to Microsoft Windows i Unix lub podobne, np.
Linux. Wiele domylnych instalacji systemu Windows nie ma wczonych odpowiednich narzdzi
inspekcji, ktre mogyby przyda si w ledztwie. Dlatego zalecamy skonfigurowanie przynajmniej
ustawie w podstawowych obrazach systemw wykorzystywanych w organizacji. Polecamy:
wczy rejestrowanie zdarze logowania i wylogowywania oraz zdarze dotyczcych
zarzdzania uytkownikami i grupami;
rejestrowa, jeli to moliwe, zdarzenia tworzenia i zamykania procesw;
zwikszy ilo miejsca dla kadego dziennika zdarze do przynajmniej 100 MB
(najlepiej 500 MB);
przekazywa informacje o wszystkich zdarzeniach do centralnego systemu dziennikw.
W INTERNECIE
Snare dla Windows www.intersectalliance.com/projects/BackLogNT
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 89
Systemy uniksowe z reguy rejestruj wicej informacji, ktre mog by przydatne w ledztwie,
ale niektre przechowuj je zbyt krtko. Dlatego w systemie Unix zalecamy sprawdzi nastpujce
ustawienia:
wczy, jeli jest taka moliwo, ewidencjonowanie aktywnoci procesw;
zwikszy ilo miejsca do przechowywania danych;
przekazywa informacje o wszystkich zdarzeniach do centralnego systemu dziennikw.
Jeli chodzi o aplikacje, to najbardziej przydatne w ledztwie s dzienniki z serwera sieciowego,
serwera proxy i zapory sieciowej. Oczywicie to nie wszystkie wane informacje. Dodatkowo warto
mie dzienniki baz danych, poczty e-mail, systemu DNS (zapyta i odpowiedzi), przydziaw
dzierawy DHCP (aby mona byo znale system na podstawie tylko jego adresu IP), zapory
sieciowej, programu antywirusowego, IPS/IDS oraz wasne dzienniki aplikacji. Powinno si
przeanalizowa kady proces biznesowy i kad usug w organizacji, aby wiedzie, gdzie s
przechowywane dzienniki i czy da si utworzy dla nich centralny magazyn. Czasami rejestracja
danych w dziennikach jest cakiem wyczona, np. czsto zapomina si o zapisywaniu zapyta DNS.
Narzdzia ledcze
Moliwo sigania do systemw w rodowisku i zadawania im pyta zwizanych z tropami
podjtymi w ledztwie jest niezwykle wana. Gdy odkryjesz co niezwykego, np. szkodliwy
program, narzdzia hakerskie itp., to nastpnym pytaniem powinno by: W jakich jeszcze
systemach w moim rodowisku znajduje si to co?. Precyzyjna odpowied na to pytanie pomoe
Ci okreli zasig incydentu.
Najlepiej, gdy organizacja dodaje narzdzia ledcze do standardowej budowy wszystkich
systemw: serwerw, laptopw i komputerw biurkowych. Na rynku dostpnych jest kilka
rozwiza, np. AccessData Enterprise, Guidance Software EnCase Enterprise oraz Mandiant
Intelligent Response. Ponadto mona tworzy wasne rozwizania przy uyciu standardowych
narzdzi do administracji systemami i programistycznych, takich jak skrypty powoki i WMI
(ang. Windows Management Instrumentation). Aby znale odpowiednie dla siebie rozwizanie,
naley rozejrze si na rynku.
Konfiguracja sieci
Wiesz ju, jak postpowa z pierwszym z wyrnionych przez nas obszarw urzdzeniami
komputerowymi wic moemy przej do drugiego, ktrym jest konfiguracja sieci. Istnieje
wiele poradnikw i innych publikacji na temat projektowania bezpiecznych sieci. Nie opisujemy
wszystkich zwizanych z tym kwestii, a jedynie najczciej stosowane techniki, ktre mog
znacznie pomc zespoowi RI w ledztwie. Dla przypomnienia poniej jeszcze raz przedstawiamy
list tematw, ktre omawiamy w tym podrozdziale; s to:
segmentacja sieci i kontrola dostpu,
dokumentacja,
instrumentacja,
usugi sieciowe.
Jako materiau pomocniczego do objanie prezentowanych w tym punkcie uywamy poniszego
schematu fikcyjnej organizacji. Zawiera on rozwizania, ktrych wdroenie w istniejcej sieci
mogoby by trudne, ale niektrzy nasi klienci opieraj swoje zabezpieczenia i akcje przeciw
incydentom na takich projektach.
Na rysunku 3.1 pokazalimy przykad dobrze skonstruowanej sieci segmentowej. Nasza prosta
fikcyjna firma ma cztery jednostki podrzdne: Finanse, Inynieri, Sprzeda oraz Pomoc IT. Kada
z tych jednostek ma dostp do wasnego zbioru zasobw (serwerw) i zasobw korporacyjnych
w strefie usug wewntrznych. Pozorny brak poczenia midzy jednostkami i zapr sieciowych
moe wydawa si dziwny, ale wszystko wyjaniamy dalej.
W INTERNECIE
Centrum informacji o bezpieczestwie komputerowym NIST csrc.nist.gov
ISO 27001 Security iso27001security.com
Tylko nieliczne organizacje ciesz si luksusem, jakim jest moliwo dokonania cakowitego
resetu i zaprojektowanie caej sieci od nowa. Nawet wtedy, gdy maa firma startuje z dobrze
zaprojektowanym planem, w procesie wzrostu, pocze i przej powstaj komplikacje, ktre
rwnie wymagaj dokadnego planowania. Wikszo naszych klientw dochodzi do wniosku,
e po incydencie wszystko jest moliwe i kierownictwo czsto wspiera pomysy wprowadzenia
powanych zmian w infrastrukturze sieci. Jako e nie ma tego zego, co by na dobre nie wyszo,
wikszo organizacji po incydencie znajduje si w lepszej kondycji ni przed nim. A te, ktre
nic nie poprawi, z reguy po kilku tygodniach borykaj si z kolejn infekcj.
92 INCYDENTY BEZPIECZESTWA
te serwery s cile tajne, poniewa ich wyciek moe negatywnie wpyn na kondycj finansow
firmy oraz narazi klientw i dostawcw na straty. cisa kontrola wymaga ograniczenia ruchu
zarwno lokalnego (wewntrz strefy), jak i zdalnego (z innych jednostek organizacyjnych)
do niezbdnego minimum oraz uwierzytelniania (wczeniej podkrelilimy, jak wane jest
uwierzytelnianie dwuskadnikowe na kontach z podwyszonymi uprawnieniami i w przypadku
dostpu do poufnych danych). Analogicznie wyglda sytuacja dziau Inynierii, ktry rwnie
ma wasne zasoby serwerowe; musz by one odseparowane od reszty jednostek organizacyjnych,
a szczeglnie od dziau Sprzeda.
Trudno przedstawi na jednym schemacie sieci du liczb mechanizmw kontroli dostpu.
Na tym poziomie brakuje trzech, ktre uchodz za nieodzowne.
Filtrowanie ruchu na poziomie jednostki organizacyjnej filtry danych przychodzcych
i czsto ignorowane filtry danych wychodzcych s absolutnie niezbdne, jeli chcemy
utrudni hakerowi poruszanie si po caym przedsibiorstwie. Zastanw si, jakie zasoby s
rzeczywicie potrzebne, za blokad oraz wcz kontrol zmian i przeprowadzaj okresowe
inspekcje, aby zapewni spjno danych przez cay czas.
Internet, chaty i serwery proxy do przesyania plikw ruch wychodzcy do zasobw
zewntrznych powinien przechodzi przez serwery proxy monitorujce i filtrujce
przechodzce przez nie dane. Jest to wana cz linii ochrony, dziki ktrej na zewntrz
mog wychodzi tylko dozwolone informacje. Dodatkow korzyci jest to, e wikszo
serwerw proxy przy okazji peni rol serwerw buforowych, zmniejszajc wymagania
dotyczce przepustowoci. Jeli serwer proxy rejestruje komunikacj, inspektorzy nadzoru
i prawnicy rwnie na tym skorzystaj.
Dwuskadnikowe uwierzytelnianie dla pocze przekraczajcych wane granice
w wikszoci organizacji wiadomo, e cay ruch VPN pochodzcy z internetu naley
kontrolowa za pomoc uwierzytelniania dwuskadnikowego. Niestety tylko nieliczne
jednostki stosuj takie ograniczenia w odniesieniu do zasobw wewntrznych. Serwery,
stacje administracyjne i stacje wstpne (ang. jump box) rwnie powinny by zabezpieczone
w ten sposb. Stacje wstpne szerzej omawiamy dalej.
Uwaga Uwaaj na zbyt lune zestawy regu protokow Microsoft RPC. Wiele organizacji tworzy w swoich
wewntrznych zaporach sieciowych alias zawierajcy standardowe porty Windows. Aby wszystko
dziaao, otwiera si porty 135, 137, 138, 139, 445 i kilka innych oraz definiuje to jako generaln
zasad, przez co poziom zabezpiecze spada do minimum. Pamitaj, e jeli zezwolisz na zwyke
udostpnianie plikw, przy okazji otrzymasz uprawnienia do zdalnej administracji (psexec) tymi
portami. le skonstruowana architektura RPC sprawia, e udzielenie dostpu do udziau plikowego
nie ogranicza si tylko do punktu instalacji, przez co hakerzy mog bez przeszkd penetrowa
segmentow sie.
ktry jest niezbdny do wiadczenia usug przez jednostk. Podobnie jest z ruchem wychodzcym
i grup finansow, ktre rwnie podlegaj cisej kontroli. Niektre szczegy pominlimy dla
uproszczenia (np. uwierzytelnianie ruchu z enklawy do korporacyjnego serwera z uwierzytelnianiem
dwuskadnikowym). Pionowa linia biegnca w d od przecznika wielowarstwowego reprezentuje
wyrany rozdzia dwch sieci. Rozdzia taki mona osign przy uyciu sieci VLAN i przez
zastosowanie filtrowania w jednym urzdzeniu lub przez wykorzystanie kilku przecznikw.
Rysunek 3.2 przedstawia trzy elementy sterowania sieci ograniczajce dostp do danych
i umoliwiajce gromadzenie informacji w przypadku wamania; s to segregacja sieci,
ograniczenie dostpu do funkcji administracyjnych oraz centralne monitoringi.
Kontrola dostpu
W opisie poprzedniego schematu stwierdzilimy, e ruch midzy strefami jest cile kontrolowany.
Pracownicy finansowi maj ograniczony dostp do sieci zewntrznych. Za ruch dozwolony
uwaany jest ruch uwierzytelniajcy do serwerw LDAP i Active Directory, IMAP i inne rodzaje
ruchu do korporacyjnych serwerw poczty oraz ruch sieciowy do korporacyjnych serwerw proxy
i innych wewntrznych miejsc. Ponadto pracownicy z tego dziau maj ograniczony dostp do
serwerw znajdujcych si w ich dziale. W tym przykadzie caa komunikacja z systemem ERP
jest obsugiwana przez protok HTTPS i filtry zezwalaj tylko na taki ruch. Ruch przychodzcy
(nieukazany) jest ograniczony do serwerw zarzdzania systemem obsugiwanych przez dzia IT.
W strefie serwerowej dziau finansw ruch podlega podobnym ograniczeniom. Reguy
dotyczce ruchu wychodzcego przypominaj reguy zdefiniowane dla uytkownikw ze strefy
finansowej, tylko maj konkretnie okrelone cele. Zauwa jednak, e z serwerw niedopuszczalny
jest ruch wyjciowy, chyba e wymagaj tego okrelone aplikacje. Reguy dotyczce ruchu
wejciowego pozwalaj na oglny dostp pracownikw do serwerw sieciowych wykorzystywanych
do wprowadzania informacji czasowych i ksigowych. Natomiast dostp przez administratorw
systemu jest ograniczony w inny sposb. W tym przykadzie administracyjna stacja robocza
(wymagajca uwierzytelniania dwuskadnikowego) jest jedynym wzem, przez ktry mona wej
do rodowiska w celu wykonywania czynnoci administracyjnych. Jeli administrator systemu
chce przeprowadzi jakie dziaania na serwerze baz danych, najpierw musi zalogowa si do
interaktywnej sesji na administracyjnej stacji roboczej (jest to tzw. serwer wstpny, ang. jump box),
a nastpnie poczy si z serwerem baz danych dziau finansowego. To znacznie uatwia tworzenie
filtrw i prowadzenie inspekcji, poniewa rdem ruchu przychodzcego i wychodzcego moe
by minimalna liczba systemw i portw. Cho nigdy nie ufamy zbytnio punktom kocowym,
take na hostach zastosowano zapory sieciowe jako skadnik dogbnego systemu zabezpiecze.
W kocu zesp RI moe atwo monitorowa cay ruch kontrolowany przez pojedyncz
jednostk filtrujc przypisan do grupy finansowej. Najczciej najpierw czujniki umieszcza si
na krawdzi sieci korporacyjnej w celu gromadzenia ruchu do analizy i podnoszenia alarmu,
gdy zostan znalezione znane sygnatury. Gdy zesp w wystarczajcym stopniu zaznajomi si
z monitoringiem, moe rozszerzy jego zakres na ruch wewntrz dziau, aby wykry ruch poziomy
w strukturze przedsibiorstwa.
Uwaga Podczas projektowania i analizy segmentw sieci oraz filtrw zawsze naley uwzgldnia skutki
potencjalnego zamania systemu lub danych powiadczajcych. Niestety zawsze tam, gdzie
zaangaowani s ludzie, mona zakada, e jakie funkcje kontrolne zawiod. Doskonaym
wiczeniem przy planowaniu jest wykonanie analizy drzewa bdw dla kilku powanych niepodanych
zdarze. Zminimalizuj liczb warunkw LUB na grnych poziomach i skoncentruj swoje wysiki na
pozostaych zagroeniach. Ten rodzaj analizy ma zastosowanie take w nastpnym podpunkcie
dotyczcym oprzyrzdowania, poniewa zagroenia czsto mona monitorowa.
W fazie naprawczej akcji RI jeden z naszych klientw ograniczy cay ruch stacji roboczej tylko
do okrelonych serwerw i bram. Stacje robocze uytkownikw straciy prawo do bezporedniej
komunikacji ze stacjami roboczymi innych uytkownikw. W cigu kilku miesicy paru uytkownikw
pado ofiar phishingu. Jednak mimo zamania zabezpiecze i wykradzenia danych powiadczajcych
do kilku systemw infekcja nie rozprzestrzenia si. Dziki odizolowaniu stacji roboczych i ochronie
domenowych danych powiadczajcych incydenty stay si tylko lokalnymi problemami.
Ponadto elementy RPC modelu sieciowego firmy Microsoft uniemoliwiaj ograniczanie dostpu
na poziomie usug dla urzdze brzegowych i przecznikw. Jeli istnieje taka moliwo, wycz
ruch midzy portami w kontrolowanych przez siebie przecznikach, chyba e porty te maj
poczenie ze wsplnymi zasobami lub innym przecznikiem. To, czy ten rodzaj filtrowania
jest atwy do wdroenia, zaley od technologii wykorzystywanych w przedsibiorstwie.
Kilku naszych klientw stosowao ciekaw metod kontrolowania i monitorowania ruchu w swoich
sieciach. Pokazalimy to na naszym oglnymi schemacie sieci. Z wyjtkiem serwerw proxy, zapr
sieciowych i routerw granicznych adne urzdzenie przeczajce nie ma skonfigurowanej domylnej
trasy wejciowej. Wszystkie stacje robocze wymagajce dostpu do zasobw zewntrznych s kierowane
do serwerw proxy wymagajcych uwierzytelnienia. Ruch skierowany do zewntrznych adresw IP
moe by przesyany do czarnej dziury lub systemu analitycznego. Niektre organizacje wykorzystuj
to jako system wczesnego ostrzegania przed prostym szkodliwym oprogramowaniem.
Naley podkreli, e mimo i wiele nowych szkodliwych programw ma wiadomo istnienia
serwerw proxy i niektre poprawnie wykonuj uwierzytelnienie, przekazywanie ruchu przez
takie serwery umoliwia organizacji analizowanie ruchu opuszczajcego sie. Dzienniki z serwerw
proxy mog zawiera dane, na podstawie ktrych zesp RI dowie si, czy wystpoway zapytania
speniajce pewne kryteria oraz jaki ruch one wygeneroway. Monitorujc dozwolone i nieoczekiwane
prby pocze, gromadzi si porednie i bezporednie dowody incydentu.
Uwaga Czsto syszymy pytanie: Czy powinnimy skonfigurowa honeypot, aby utrudni prac hakerom?.
Puapki honeypot su do dwch celw. Po pierwsze, zabieraj hakerowi czas i zasoby, prezentujc
mu mao znaczce dla organizacji systemy i dane. Z reguy jest to mao efektywne. Jeli hakerowi
zostan podsunite informacje, do ktrych dostp jest atwiejszy ni do wanych danych, zostanie
on odcignity od sedna na czas wypicia filianki kawy. Jeli zbudujesz zaawansowan puapk,
ktrej sforsowanie przysporzy hakerowi problemw, stracisz duo czasu, ktry lepiej byoby powici
na chronienie prawdziwych rodkw. Po drugie, puapki honeypot s wykorzystywane jako narzdzia
do wykrywania metod stosowanych przez aktywnych i potencjalnych intruzw. Z punktu widzenia
ledztwa i podczas trwania incydentu caa sie peni tak rol.
Jeli nie jeste w trakcie prowadzenia ledztwa, standardowe testy penetracyjne nie daj
adnych znaczcych wynikw, masz zainstalowane wszystkie poprawki, zesp RI zrobi wszystkie
wiczenia, wszystkie dzienniki zostay przejrzane, a czonkowie zespou RI nudz si jak mopsy,
wtedy jak najbardziej pobaw si jeszcze we wdraanie puapek honeypot.
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 97
Dokumentacja
Wzrost firmy, fuzje i przejcia to czynniki, ktre bardzo utrudniaj utrzymanie dokadnych
i aktualnych schematw sieci. Zadanie to naley do pracownikw z dziaw IT i sieciowego.
Zespoy RI intensywnie korzystaj z tych dokumentw podczas ledztw w celu oceny ryzyka
i zakresu incydentu oraz ustalenia rodkw zaradczych.
Zesp RI powinien mie do dyspozycji szereg schematw reprezentujcych rodowisko
na rnych poziomach. Najwyszy poziom struktury sieci, obejmujcy bramy, poczenia MLPS,
tunele VPN i urzdzenia kontroli granic, rzadko ulega zmianom. Dlatego schematy tego poziomu
s najbardziej przydatne w pocztkowych fazach ledztwa. Z informacji tych korzysta si te przy
dokadnym rozmieszczaniu urzdze monitorowania sieci. Kolejne coraz bardziej szczegowe
schematy umoliwiaj zespoowi RI znalezienie potencjalnie zamanych systemw oraz ocenienie
ryzyka, jakie stanowi dla caego przedsibiorstwa. W pewnym momencie szczegowe schematy
ustpuj miejsca dobrze zorientowanemu administratorowi systemu.
Ponadto skadnikiem dobrego planu dokumentacji jest sposb przechowywania konfiguracji
rnych urzdze. Zesp RI musi mie dostp do konfiguracji sieci, np. routerw, zapr sieciowych
i przecznikw. Informacje te mog by przydatne, gdy padnie podejrzenie, e kto w nich szpera.
Dziki dostpowi do archiwum plikw konfiguracyjnych i dokumentacji z systemu kontroli zmian
mona atwo wykry wszelkie podejrzane modyfikacje.
Najwaniejsze jest to, i prowadzenie dokumentacji sprawia, e dua organizacja ma wiadomo
posiadanych rodkw i wykorzystywanych konfiguracji. Jeli poczy si to z kontrol zmian,
dokumentacja pozwoli zmniejszy ryzyko wystpienia niespodzianek podczas ewentualnego ledztwa.
Oprzyrzdowanie
Wczeniej opisalimy narzdzia dotyczce pojedynczych systemw i ich grup. Tutaj poszukamy
odpowiedzi na podobne pytanie, co wczeniej: Jakie informacje naley rejestrowa, co powinno
si przechwytywa lub zapisywa w inny sposb, aby jak najbardziej uatwi okrelenie, co si stao
w sieci?. Odpowied na to pytanie zaley od wielu cech organizacji i wykorzystywanych technologii.
Przypominamy, e bierzemy pod uwag nie tylko to, co powinno si przechwytywa dla typowych
celw zapewniania bezpieczestwa informatycznego, ale rwnie to, co powinno si rejestrowa
taktycznie podczas prowadzenia ledztwa. Oto najczciej wykorzystywane rda informacji
do rejestrowania.
Zapory sieciowe informacje o zdarzeniach powinny by zapisywane w miejscu, w ktrym
atwo bdzie je przeszukiwa i przechowywa. Podczas ledztwa zapory sieciowe mona
wykorzysta do powiadamiania o wykryciu okrelonych wskanikw zagroenia w ruchu
sieciowym.
Systemy wykrywania intruzw zesp RI jest przygotowany do analizowania ruchu
pod ktem obecnoci wskanikw zagroenia, wic powinien mie moliwo przegldania
alarmw i dodawania kolejnych wskanikw. Zewntrzne systemy wykrywania wama
i usugi monitorowania ruchu te s przydatne, jeli potrafi szybko reagowa i dostarczaj
przydatnych informacji.
98 INCYDENTY BEZPIECZESTWA
Usugi sieciowe
Projektujc lub modyfikujc sie pod ktem uatwienia ewentualnego ledztwa RI, naley uwzgldni
i rozway kilka usug. Oprcz opisanych wczeniej serwerw proxy, skonfiguruj systemy DNS
i serwery DHCP tak, aby umoliwiay rejestrowanie duych iloci informacji. W podsieciach,
w ktrych stacje robocze otrzymuj w dzieraw adresy, serwery DHCP powinny przechowywa
(albo przesya) dzienniki przydziaw przez dugi czas (przynajmniej jeden rok). Pamitaj: kiedy
przechowujesz take inne dzienniki przez duszy okres, przechwycone rdowe adresy IP mog
by bezwartociowe, jeli nie bdzie si dao zlokalizowa systemu, ktry mia przydzielony dany
adres w czasie trwania podejrzanej aktywnoci.
ROZDZIA 3. PRZYGOTOWANIE NA INCYDENT 99
W INTERNECIE
Czarne dziury DNS w BIND i FreeBSD www.pintumbler.org/Code/dnsbl
Czarne dziury DNS w Microsoft DNS
http://cyber-defense.sans.org/blog/2010/08/31/windows-dns-server-blackhole-blacklist
100 INCYDENTY BEZPIECZESTWA
I CO Z TEGO
Jak mwi stare przysowie, Lepiej dmucha na zimne ni si sparzy. W rozdziale tym
przedstawilimy sposoby przygotowania organizacji, zespou RI oraz infrastruktury organizacji
na jak najskuteczniejsze radzenie sobie z potencjalnymi incydentami. Jeli organizacja zna swoje
rodki i rozumie zagroenia oraz posiada dobrze wyposaony zesp RI i prawidowo zaprojektowan
architektur sieci, reakcja na incydent powinna by o wiele mniej bolesna. Nie naley jednak osiada
na laurach po zakoczeniu przygotowa warto przetestowa wdroone procedury i procesy
na sucho. Lepiej to zrobi, ni czeka, a wszystko wyjdzie w praniu podczas prawdziwego
incydentu. W nastpnym rozdziale przyjrzymy si krytycznym chwilom midzy wykryciem zdarzenia
a podjciem dziaa oraz zobaczymy, co mona zrobi, aby unikn kosztownych bdw.
PYTANIA
1. Wyjanij, w jaki sposb prosta usuga sieciowa typu DHCP moe sta si najwaniejszym
czynnikiem w ledztwie.
2. Omw niektre kopoty zwizane ze zlecaniem usug IT na zewntrz w odniesieniu
do prowadzenia ledztwa. Jak mona je rozwiza?
3. Dlaczego sprawne zarzdzanie rodkami ma fundamentalne znaczenie dla przygotowa
do incydentu?
4. Jakie narzdzia ledcze s uwzgldniane w sdzie? Wyjanij swoj odpowied.
5. Dlaczego scentralizowany system rejestracji dziennikw jest wany?
6. Co to jest czarna dziura DNS? Kiedy warto jej uy? Napisz plik strefy BIND przyjmujcy
wszystkie zapytania do szkodliwej domeny i odpowiadajcy adresem z puli RFC1918.
CZ II
Wykrywanie
incydentw
i ich charakterystyka
ROZDZIA 4.
Prawidowe
rozpoczynanie ledztwa
104 INCYDENTY BEZPIECZESTWA
W
iele organizacji stara si rozpocz ledztwo natychmiast po wykryciu incydentu.
Czasami rzeczywicie charakter zdarzenia usprawiedliwia szybkie dziaanie, ale
w wikszoci przypadkw naszym zdaniem lepiej wykona jeszcze jedn czynno,
aby skierowa dochodzenie na waciwe tory. Nieraz widzielimy, jak rozpoczynano ledztwo
przed znalezieniem potwierdzenia podstawowych faktw. Akcje takie s z reguy rozproszone
i kocz si zmarnowaniem czasu oraz zasobw.
Czasami ludzie ekscytuj si nowymi informacjami i dziaaj pod wpywem chwili, a przecie
nowe informacje zawsze powinno si logicznie oceni na podstawie zdrowego rozsdku i wasnego
dowiadczenia. Zastanwmy si np., co si stao podczas huraganu Sandy w padzierniku 2012 roku.
Pewna liczba osb opublikowaa w internecie faszywe informacje z ostatniej chwili, e doszo
do powodzi na parkiecie giedy w Nowym Jorku. Cho taka powd rzeczywicie bya moliwa,
nikt nie zastanowi si, czy rdo informacji i cay raport s wiarygodne. Media i opinia publiczna
podchwyciy temat i przez pewien czas panowao przekonanie, e do tego zdarzenia naprawd doszo.
Analogiczne sytuacje dostrzegamy w wiecie reakcji na incydenty bezpieczestwa ledczy
czasami reaguj na napywajce informacje bez uprzedniego zastanowienia si. Gdy np. system
wykrywania zgosi zdarzenie, to czy od razu rozpoczynasz akcj, czy prbujesz zweryfikowa te
informacje? Systemy wykrywania mog le reprezentowa lub pomija zdarzenia albo pewne
zwizane z nimi szczegy. aden system nie jest idealny. Dlatego musisz sta na stray midzy
zdarzeniami i ledztwami. Aby dobrze wykona swoje zadanie, zrb oglny przegld tego, co si
stao, a nastpnie zbierz i zweryfikuj wstpne fakty. W ten sposb poznasz kontekst wydarze.
Nastpnie naley zdecydowa, co jest odpowiednie i moliwe do przeprowadzenia skutecznego
ledztwa. I oczywicie proces ten musi zosta przeprowadzony szybko, poniewa na szali le
bezpieczestwo organizacji, dane elektroniczne i reputacja.
Do rozpoczcia ledztwa konieczne jest ustalenie pocztkowych faktw, wic trzeba postara
si, aby byy jak najprecyzyjniejsze. Ponadto naley zgromadzi dodatkowe informacje pozwalajce
okreli kontekst zdarzenia. Przykadowo adres IP jest o wiele bardziej przydatny, jeli wiadomo,
do jakiego systemu naley i jak rol w organizacji ten system peni. Ponadto czas zdarzenia nie jest
zbyt przydatny, jeli nie znamy strefy czasowej. Bez takich danych kontekstowych atwo wycign
bdne wnioski o tym, co si stao.
Z czasem weryfikacja faktw i ustalanie kontekstu wchodzi czowiekowi w krew. Niektrzy
czytelnicy pewnie maj ju na tym polu spore dowiadczenie, a inni mog potrzebowa paru
wskazwek. Dlatego poniej przedstawiamy kilka porad i technik, takich jak prowadzenie
kontrolnych list czynnoci do wykonania, metody sporzdzania notatek oraz sposoby
chronologicznego zapisywania informacji o atakach.
Listy kontrolne
W tym punkcie opisujemy pi list kontrolnych dotyczcych takich obszarw jak zestawienie
informacji o incydencie, sposb wykrycia incydentu, szczegowe dane pojedynczego systemu,
szczegowe dane sieci oraz szczegowe informacje o szkodliwym oprogramowaniu. Oczywicie
s te inne obszary, ktre mona by byo w ten sposb opisa, ale naszym zdaniem te s najwaniejsze
i najbardziej przydatne w ledztwie. Ponadto listy kontrolne nie musz by wyczerpujce.
106 INCYDENTY BEZPIECZESTWA
Jeli trzeba, mona co doda, usun lub zmieni, gdy ma to uzasadnienie w przypadku
Twojej organizacji. Te i inne listy kontrolne zamiecilimy w dodatku B pod adresem
ftp://ftp.helion.pl/przyklady/incbez.zip.
Zalecamy zapisywanie wszystkich informacji we wasnym systemie dokumentacji incydentw,
nawet jeli dane znajduj si w innych aplikacjach w organizacji. Istnieje ryzyko, e w innych
systemach wystpi bdy i nie ma gwarancji, e dane zostan zachowane. Zwr szczegln uwag
na sowo wasny w pierwszym zdaniu tego akapitu. System zarzdzania incydentami musi by
absolutnie niezaleny od jakichkolwiek zasobw IT organizacji oraz odpowiednio zabezpieczony.
Zasada ta dotyczy wikszoci zasobw informatycznych przydzielonych zespoowi RI. Wyobra
sobie, e ju na samym pocztku zostay zamane zabezpieczenia Twojej domeny. Niestety czsto
tak wanie si dzieje.
System dokumentacji moe by prosty, jak np. udziay plikowe o ograniczonym i kontrolowanym
dostpie z moliwoci dodawania notatek przez wszystkich czonkw zespou, lub bardziej
skomplikowany, jak system biletowy typu Request Tracker for Incident Response (RTIR). Niestety
wiele aktualnie dostpnych systemw do zarzdzania danymi nie nadaje si dla zespow RI lub s
tak elastyczne, e niewiele firm ma czas na ich waciwe skonfigurowanie.
W terenie
Wezwano nas do pomocy przy kilku incydentach, w ktrych hakerzy mieli swobodny dostp
do kadego systemu w firmowym lesie Microsoft Active Directory. Zazwyczaj atwo zdoby
dane do kont uytkownikw na poziomie domeny i usug. Oznaczao to, e zagroone byy
take serwery poczty, zapory sieciowe, serwery baz danych itd. Komunikacja midzy czonkami
zespou RI oraz z kierownictwem i dziaem prawnym bya cile monitorowana. Na tym etapie
kada ofiara otrzymuje nastpujc lekcj: zesp ledczy musi chodzi wasnymi ciekami,
aby zagwarantowa bezpieczestwo, a posiadanie jednolitej infrastruktury od jednego producenta
jest niebezpieczne.
ROZDZIA 4. PRAWIDOWE ROZPOCZYNANIE LEDZTWA 107
Czy zdarzenie zostao wykryte przez proces automatyczny, czy rczny? Czy incydent zosta
wykryty przez automat, czy czowieka? Informacja o wykryciu zdarzenia moe te pochodzi
ze rda zewntrznego, wic wiedza o tym, czy alarm wszcz automatyczny system,
czy analityk na podstawie zebranych danych, jest bardzo wana.
Jakie informacje wchodziy w skad wstpnego wykrycia? Zapisz szczegy przekazane
w pierwszym powiadomieniu o wykryciu zdarzenia. Jeli byo to powiadomienie alarmowe,
czy masz jego kopi? Jeli zdarzenie wykrya osoba, czy porozmawiae si z ni w celu
spisania zezna? Bd sceptyczny i nie zapomnij rzuci okiem na surowe dane, aby zdoby
potwierdzenie, e to, co syszysz lub widzisz, jest prawd. Zadbaj o prawidowe przechowywanie
otrzymywanych informacji (temat ten opisujemy w rozdziaach od 7. do 10.). Jak ju pisalimy,
jeeli dane nie s zbyt obszerne, zesp RI powinien zaj si ich przechowywaniem.
Z jakich rde pochodz dane, dziki ktrym udao si wykry zagroenie? Jeli rdem
bya osoba lub grupa osb, zapisz ich informacje kontaktowe. Jeeli rdem by automat
lub grupa automatw, zapisz szczegowe informacje o kadym z nich. Zanotuj te stref
czasow zapisan przez automatyczny system.
Czy kto sprawdzi prawidowo danych rdowych? Jeli tak, to kto? Jeeli w wykryciu
zdarzenia miaa udzia osoba, czy kto zweryfikowa zastosowane metody i analizowane
dane? Jeeli wykrycie zawdziczasz automatycznemu systemowi, czy kto zweryfikowa
kryteria i dane, na podstawie ktrych zostao wygenerowane zgoszenie zagroenia?
Czy dane rdowe s zapisywane? W zalenoci od systemu i zastosowanej metody,
dane dotyczce wykrycia mog nie by zapisywane automatycznie lub mog by usuwane
z systemw po okrelonej liczbie godzin lub dni. Dlatego naley zadba o to, by potrzebne
informacje nie zostay skasowane.
Ile czasu dziaaj rda wykrycia i kto je uruchomi? Czasami okazuje si, e system
detekcji zagroe zosta wdroony niedawno i generuje faszywe alarmy lub jego wyniki s
le interpretowane z powodu braku dowiadczenia. Sprawd, ile czasu dziaa kady system
i kto go obsuguje.
Jak czsto pojawiaj si alarmy i bdy? Porozmawiaj z opiekunami systemu i przejrzyj
raporty. Dowiedz si, jak czsto maj miejsce wykrycia tego typu. Dowiedz si, jaka jest
czstotliwo wystpowania bdw.
Czy zmienio si cokolwiek zwizanego ze rdami danych? Czasami okazuje si, e
administrator zmieni konfiguracj systemu albo zainstalowa jakie uaktualnienia. Naley
porozmawia z osob odpowiedzialn za systemy rde danych i dowiedzie si, czy ostatnio
byy prowadzone jakie czynnoci serwisowe. Czasami maj one niepodane skutki.
Czy istniej kopie zapasowe systemu okresowe zrzuty systemu mog zawiera wiele
cennych dla ledztwa informacji. Dlatego naley dowiedzie si, czy istniej kopie zapasowe
systemu, w jakim czasie zostay zrobione, kiedy zostan usunite oraz jak zdoby do nich dostp.
Czy system nadal jest podczony do sieci jeeli system zosta odczony, to gdzie jest teraz?
Jak mona uzyska do niego dostp?
Lista wykrytych szkodliwych programw, od rozpoczcia ledztwa do pocztku danych
w dziennikach zapisz szczegowe informacje o wykrytym szkodliwym oprogramowaniu,
dat, godzin, nazw pliku, katalog oraz typ i rodzin zarejestrowane przez program
antywirusowy. Dowiedz si, czy szkodliwe oprogramowanie zostao wysane do producenta
programu antywirusowego lub innych zewntrznych systemw skanowania. Jeeli ludzie
spoza zespou RI maj kopie tego programu, naley ich ostrzec i poprosi o kopi.
Lista krokw naprawczych, ktre zostay ju podjte czy uytkownik usun lub
skopiowa pliki? Administrator te mg wprowadzi zmiany w konfiguracji lub zresetowa
hasa. Wszelkie zmiany w systemie, to kto ich dokona oraz kiedy to zrobi, naley
udokumentowa. Kilka razy zdarzyo nam si, e nie moglimy odrni aktywnoci hakera
od aktywnoci pracownika, poniewa przeplatay si i nie byo adnych dodatkowych
informacji, ktre pozwoliyby je rozrni.
Jeeli zachowywane s jakie dane, jaki proces jest wykorzystywany i gdzie informacje te
s skadowane wielokrotnie wsppracowalimy z pracownikami, ktrzy byli bardzo
pomocni i prbowali zachowywa informacje, ale nie znali zasad utrwalania dowodw
na potrzeby ledztwa. Dlatego naley dowiedzie si, jakie informacje i w jaki sposb s
zapisywane. Niech wszyscy zaangaowani w spraw pracownicy zostan przeszkoleni
pod ktem sporzdzania dokumentacji na potrzeby dochodzenia.
PRIORYTETY LEDZTWA
Aby przeprowadzi skuteczne ledztwo, naley dobrze przemyle cele i planowane wyniki.
Kady rodzaj sprawy ma pewne cechy charakterystyczne celem moe by doprowadzenie
sprawcy do sdu lub tylko wzmocnienie zabezpiecze. Zesp powinien mie jasno okrelone,
czego szuka lub co trzeba udowodni i w jaki sposb przedstawi wyniki.
Co to s elementy dowodu
W sensie prawnym elementy dowodu to fakty potwierdzajce zasadno oskarenia. Jeli np.
miaby prowadzi dochodzenie w sprawie kradziey, Twoim gwnym elementem dowodu byoby
dowiedzenie, e dana rzecz, bdca wasnoci innej osoby, zostaa jej zabrana. Jednak ledztw
prowadzonych przez korporacyjne zespoy reagowania na incydenty nie da si atwo zaklasyfikowa
do dziedziny kradziey lub naruszenia praw autorskich. Podczas dochodze w sprawach wtargnicia
do systemu posugujemy si szersz definicj elementw dowodu, w ktrej pocztkowo jest tylko
kilka szerokich tez, jakie nastpnie si zawaj i uszczegowiaj w trakcie trwania procesu. Przede
wszystkim naley pamita, kto jest gwnym odbiorc raportu. Przykadowo cele ledztwa w sprawie
wamania do systemu s oczywiste. Naley dowiedzie si, kto dokona wamania, kiedy do tego
doszo, co zostao skradzione oraz czy intruz wci szpera w sieci. Z drugiej strony, jeli ledztwo
dotyczy brany kart patniczych (PCI) i istnieje podejrzenie wycieku danych kont, jednym z celw
jest wygenerowanie listy potencjalnie naraonych na niebezpieczestwo numerw kont oraz dat,
kiedy doszo do kradziey. Cele innych rodzajw ledztw mog nie by takie oczywiste i ich
okrelenie moe wymaga konsultacji z radc prawnym, jeli jeszcze nie prowadzi on dochodzenia.
Wemy np. ledztwo w sprawie naruszenia praw autorskich. Zasadniczo w takich sprawach
korzysta si z pomocy wasnych adwokatw lub zewntrznych radcw prawnych, aby okreli cele
dochodzenia. Skrupulatny analityk powinien postara si jak najlepiej zrozumie, czego mona
114 INCYDENTY BEZPIECZESTWA
oczekiwa od zespou prawnikw, i zastanowi si, jakie s dostpne rda danych, ktre pozwol
zaspokoi ich wymagania. wiadomo, e sprawy dotyczce naruszenia praw wasnoci skadaj
si z dwch elementw udowodnienia posiadania praw autorskich i wykazania, e skopiowanie
materiau daje podstaw do wszczcia postpowania pomoe analitykowi w wykonywaniu swoich
czynnoci oraz uatwi mu informowanie prawnikw o dodatkowych metodach lub rdach.
Podczas ledztwa, podobnie jak w przypadku spraw dotyczcych wasnoci intelektualnej,
wikszoci dziaa kieruj prawnicy. Bior na siebie odpowiedzialno za udowodnienie
zasadnoci lub bezzasadnoci roszczenia, ale mog potrzebowa od Twojego zespou identyfikacji,
zachowania i analizy danych. W niektrych ledztwach praca Twojego zespou, Twoje procesy
i sposoby sporzdzania dokumentacji mog podlega cisemu nadzorowi.
I CO Z TEGO
Jedn z najwikszych trudnoci, jakie naley pokona przy rozpoczynaniu kadego ledztwa, jest
oddzielenie faktw od fikcji i ustalenie pocztkowych priorytetw. W rozdziale tym opisalimy
zasady skutecznej komunikacji, tworzenia dokumentacji oraz rozumowania. Stosujc si do naszych
rad, zapewnisz sprawny obieg informacji midzy ledczymi, kierownictwem, prawnikami i innymi
decydentami. Opisane w pocztkowej czci rozdziau listy kontrolne pomog Ci nie zapomnie
o wanych sprawach podczas gorczkowych pierwszych faz dochodzenia w sprawie potencjalnego
incydentu.
ROZDZIA 4. PRAWIDOWE ROZPOCZYNANIE LEDZTWA 115
Kilka razy spotkalimy si z sytuacj, w ktrej cele ledztwa zostay okrelone nierealistycznie.
Przykadowo doszo do wamania na serwer aplikacji pewnej firmy i haker utworzy witryn
z nielegalnym oprogramowaniem. Wstpna analiza przeprowadzona przez firm sugerowaa,
e wamanie zostao przeprowadzone przez interfejs administracyjny serwera sieciowego.
Dane zapisane w dziennikach sieciowych wskazyway, e w mniej wicej tym samym czasie,
w ktrym doszo do wamania, na serwerze by uruchomiony skaner luk w zabezpieczeniach.
Kierownictwo zlecio wewntrznemu zespoowi RI ustalenie, kto zaoy serwis z nielegalnym
oprogramowaniem, aby mona byo podj przeciwko niemu kroki prawne. Gdy wysiki tego
zespou spezy na niczym, poproszono nas o pomoc. Przeprowadzilimy z przedstawicielami
organizacji szczegowe wywiady na temat incydentu i spytalimy, jakie s ich oczekiwania
dotyczce ledztwa. Wyjanilimy, e tego typu ataki zdarzaj si bardzo czsto i zazwyczaj
w duym stopniu s przeprowadzane przez automaty. Szansa na wykrycie winnego jest bardzo
maa. Nawet gdyby udao si zlokalizowa intruza, rodki prawne, jakie mona przeciw niemu
wytoczy, nie dayby firmie wielkich korzyci. Dlatego zalecilimy skoncentrowanie si na
znalezieniu luki w zabezpieczeniach i zlikwidowaniu jej, aby zapobiec podobnym incydentom
w przyszoci. Gdyby wewntrzny zesp RI skonsultowa si z dziaem prawnym i zastanowi
nad prawdopodobiestwem uzyskania satysfakcjonujcego rozwizania, kierownictwo najpewniej
zrozumiaoby, jakie s ograniczenia tego wewntrznego ledztwa.
PYTANIA
1. Wymie pi najwaniejszych list kontrolnych, na podstawie ktrych powinno si zbiera
pocztkowe informacje o incydencie. Wymie po dwa najwaniejsze punkty z kadej z nich
i wyjanij, dlaczego s wane.
2. Podczas incydentu odkrywasz, e haker przeprowadzi atak typu brute force na serwer
baz danych. Zapisujesz to zdarzenie w swoim systemie. Jakiej strefy czasowej uyjesz?
Wyjanij, dlaczego.
3. Jakie cztery informacje powinno si zapisywa dla kadego rekordu w chronologicznym
zapisie aktywnoci hakera? Wybierz plik, np. win.ini w systemie Microsoft Windows lub
/etc/hosts w systemie uniksowym, i wprowad do harmonogramu jak najwicej wpisw
dotyczcych tego pliku z okreleniem czasu wystpienia zdarze.
4. Dlaczego naley prowadzi notatki w sprawie? Jak czsto powinno si je aktualizowa?
5. Twoja farma serwerw jest wykorzystywana jako punkt przerzutowy przez hakerw, ktrzy
byli aktywni w innych firmach. Jakie powinny by priorytety ledztwa w Twojej organizacji?
Jak wykaesz, e zaje si incydentem w profesjonalny sposb?
116 INCYDENTY BEZPIECZESTWA
ROZDZIA 5.
Zdobywanie tropw
118 INCYDENTY BEZPIECZESTWA
W
rozdziale 2. wyjanilimy, e tropy (ang. leads) to wymagajce podjcia dziaa informacje
o skradzionych danych, wskanikach sieciowych, tosamoci potencjalnych podmiotw
lub problemach, ktre doprowadziy do zagroenia albo incydentu bezpieczestwa.
W tym rozdziale opisujemy sposoby posugiwania si tropami oraz metody generowania wskanikw
i przegldania rodowiska w poszukiwaniu miejsc wystpienia szkodliwej dziaalnoci. Tropy
wymagajce dziaania, zadania, s podstaw do zrobienia czegokolwiek w ledztwie. Mog by one
wskanikami, ktre mona wykorzysta do przeczesania caego przedsibiorstwa, sygnaturami
ruchu sieciowego, ale mog te suy jedynie jako zasb, gdy trzeba bdzie przesucha pracownika.
Uwaga Pamitaj, e trop lub wskanik to jedynie sposb opisu pewnego konkretnego elementu
zwizanego ze ledztwem. Moe to by wyszukiwanie czego, o czym wiadomo, e istnieje
(artefakt szkodliwego programu albo zawarto historii przegldarki uytkownika),
lub tego czego, o czym wiadomo, e jest podejrzane, gdy wystpuje w wikszych ilociach
(np. szereg zdarze dotyczcych uytkownika lub jdra systemu).
POSTPOWANIE Z TROPAMI
Twj zesp otrzyma spor ilo dobrych tropw arkusz kalkulacyjny z podejrzanymi adresami IP,
list skrtw MD5 szkodliwych plikw oraz troch danych wykrytych podczas komunikacji serwera
firmowego z serwerem dowodzcym botnetem na porcie TCP/443. Co teraz?
Naley zamieni te tropy w przydatne wskaniki, takie, ktre pozwol wykry trwajce
zdarzenia i przysze ataki. Ponadto powinno da si wykrywa podejrzane warunki, ktre nie s
bezporednio zwizane z aktualnie posiadanymi informacjami. W kocu wiadomo, e musi dzia
si co jeszcze, co umoliwia pojawianie si tych podejrzanych pocze. W podrozdziale tym
opisujemy iteracyjny proces obejmujcy cay czas trwania ledztwa.
Ponadto przedstawiamy bardziej tradycyjne tropy, tzn. takie, ktrych weryfikacja wymaga
przeprowadzenia rozmw z ludmi. Jest to temat, ktrego pewnie nie spodziewae si po ksice
o prowadzeniu dochodze w sprawie przestpstw komputerowych.
Uwaga Jako specjalista od incydentw bezpieczestwa masz do wyboru kilka narzdzi do dziaania w skali caego
przedsibiorstwa. Jak piszemy w rozdziale 7., zarwno produkty Guidance Software, jak i AccessData
maj wtyczki Live Response lub wersje umoliwiajce zdobywanie danych. Nasza firma, Mandiant,
rwnie oferuje produkt i platform RI dla przedsibiorstw oraz darmowe narzdzia do uytku
w mniejszych rodowiskach. Ponadto administratorzy systemw mog wykonywa niektre z opisywanych
czynnoci za pomoc programu Microsoft System Center Configuration Manager (wczeniej SMS).
Jednak bdziemy szczerzy. W Mandiant wolimy nasze wasne narzdzia od konkurencji z kilku istotnych
technicznie powodw. W opisie wskanikw wykorzystujemy standard OpenIOC, ale elementy
mona atwo dostosowa do innych rozwiza RI.
120 INCYDENTY BEZPIECZESTWA
W INTERNECIE
practicalmalwareanalysis.com/labs
Majc ten plik, przyjrzymy si bardzo prostemu wskanikowi, ktry bdzie pozwala go
zidentyfikowa lub opisa. Wskanik ten zawiera jeden wysoce skuteczny test skrtu MD5.
Na kilku nastpnych stronach przedstawiamy wskaniki napisane w pseudokodzie, a nie
prawdziwym jzyku do definiowania wskanikw zagroenia. Oto pierwszy przykad:
if
{
(skrt MD5 pliku == "84882c9d43e23d63b82004fae74ebb61")
}
then
podnie alarm
Ten wskanik zagroenia ma kilka bardzo dobrych atrybutw. Szuka jednej konkretnej
wasnoci skrtu MD5. Zapewnia to wysoki poziom pewnoci, e jeli zostanie znalezione
dopasowanie, tzn. e znalelimy to, czego szukamy. Czstotliwo wystpowania faszywych
alarmw dla skrtw MD5 jest bardzo maa chyba nigdy nam si nie zdarzyo otrzyma
faszywego alarmu w takim przypadku. Jednak wskanik ten jest te bardzo ograniczony. Jeli
zostanie zmieniony choby jeden bit w szukanym pliku, przestaniemy cokolwiek wykrywa,
poniewa zmieni si skrt MD5. Jako e haker bardzo atwo moe zmieni tre pliku i zachowa
jego funkcjonalno wystarczy np. zmieni wpisany adres IP wskanik ten bdzie przydatny
tylko przez krtki czas. Oczywicie nie twierdzimy, e wykorzystywanie skrtw MD5 to zy pomys,
mwimy jedynie, e opieranie si tylko na tej jednej metodzie to nie najlepsze rozwizanie.
Naley sprawdza take inne atrybuty.
Wykonywalne pliki systemu Windows (PE) zawieraj kilka struktur danych, ktre rwnie
mona sprawdza i wykorzysta we wskanikach zagroenia. Przykadowo nagwek PE zawiera
znacznik czasu kompilacji. S to data i godzina wstawiane przez kompilator podczas kompilowania
pliku. Czasami hakerzy kompiluj plik i pniej rcznie go zmieniaj. W niektrych przypadkach
znacznik czasu kompilacji powtarza si na tyle rzadko, e mona go wykorzysta. Najczciej
jednak znacznika czasu uywamy z czym jeszcze, np. rozmiarem pliku, aby zminimalizowa
ryzyko pojawiania si faszywych alarmw. Dodamy wic teraz do naszego poprzedniego
wskanika te dwa nowe warunki:
if
{
(skrt MD5 pliku == "84882c9d43e23d63b82004fae74ebb61")
OR
(
(nagwek PE lub data/godzina == "2010/09/28 01:00:25 UTC")
AND
(rozmiar pliku == "24065")
) }
then
podnie alarm
ROZDZIA 5. ZDOBYWANIE TROPW 123
Wskanik nadal szuka skrtu MD5, ale dodatkowo sprawdza znacznik czasu kompilacji
i rozmiar pliku. Jeeli haker zmieni kilka bitw w pliku, ta wersja wskanika ma wiksz szans
na wykrycie tego faktu. Jeli jednak haker doda lub usunie dane, rozmiar pliku przestanie pasowa
i nie bdziemy w stanie go znale. Zobaczmy wic, co jeszcze mona poprawi w naszym wskaniku.
Gdy przeanalizujesz nasz plik binarny, zauwaysz, e moe on wykonywa kilka dziaa
w systemie. Moe np. instalowa usug Windows i czy si ze stron internetow. Obie te
informacje s cenne, poniewa moemy szuka zwizanych z nimi artefaktw. Musisz tylko mie
wiadomo, e nie s to bezporednie atrybuty pliku. S to artefakty powstajce na hocie w wyniku
uruchamiania tego pliku. Innymi sowy, szukamy efektw wykonania pliku, a nie samego tego
pliku. Dodanie takich testw do wskanika zagroenia jest korzystne, poniewa w systemie moe
ju nie by szukanego pliku albo mogy si zmieni jego atrybuty, ktrych szuka nasz wskanik.
Jak piszemy dalej w tym rozdziale, wane jest te zrozumienie cyklu ataku, aby doda wszelkie
istotne artefakty do wskanika. W tym przykadzie bdziemy szuka tylko dwch dodatkowych
elementw konkretnej nazwy usugi tworzonej przez plik binarny i artefaktu bufora DNS
zwizanego z nazw hosta, z ktrym czy si szkodliwy program. Zmodyfikowany wskanik
zagroenia teraz wyglda tak:
if
{
(skrt MD5 pliku == "84882c9d43e23d63b82004fae74ebb61")
OR
(nazwa hosta bufora DNS zawiera "practicalmalwareanalysis.com")
OR
(Opisowa nazwa usugi == "wiadomo sieci wewntrznej")
OR
(
(Nazwa pliku == "lab03-02.dll")
AND
(
(Data/godzina w nagwku PE == "2010/09/28 01:00:25 UTC")
OR
(rozmiar pliku == "24065")
) ) }
then
podnie alarm
Ten wskanik zagroenia zawiera warunki, ktre sprawiaj, e jest o wiele bardziej skuteczny
od pierwszego przedstawionego wskanika. Powinien dziaa nawet wtedy, kiedy zostan
wprowadzone pewne zmiany w pliku binarnym oraz znajdzie artefakty tworzone przez ten plik
na hocie. Oczywicie moemy go jeszcze ulepszy. Musielibymy tylko dokadnie przyjrze si
wszystkim cechom dystynktywnym interesujcego nas pliku binarnego i tworzonym przez niego
artefaktom. Poniewa ich lista moe by bardzo duga, zazwyczaj staramy si znale zoty rodek
midzy zbyt ma i zbyt du liczb warunkw. Wszystko zaley od konkretnego pliku i rodzaju
caego incydentu.
Innym sposobem na ulepszenie naszego wskanika zagroenia jest opisanie tego, co wykonuje
plik binarny. Zazwyczaj robi si to, analizujc tabel importu. W niektrych przypadkach tabela ta
jest nieprzydatna np. z powodu dziaania archiwizatora albo ze wzgldu na to, e autor zastosowa
124 INCYDENTY BEZPIECZESTWA
Wskanik ten znajdzie plik binarny na podstawie listy importowanych przez niego funkcji.
Dopki lista ta nie zmieni si w duym stopniu, haker moe zmienia due porcje kodu w pliku
i jego opcje konfiguracyjne, a i tak plik ten bdzie wykrywany. To by przykad tworzenia
wskanika zagroenia opisujcego atrybuty wybranego pliku. Teraz przyjrzymy si innej sytuacji.
Czsto trzeba tworzy wskaniki zagroenia opisujce dziaania hakera, poniewa nie mamy
do dyspozycji adnego szkodliwego programu. Teraz zbudujemy wskanik sucy do wykrywania
typowych sekwencji czynnoci, jakie mgby wykona intruz w systemie. Wskaniki tego rodzaju
nazywaj si wskanikami metodycznymi i mog zawiera te wskaniki dotyczce waciwoci
z informacjami o artefaktach pozostawianych przez aktywnego hakera. Doskonaym przykadem
ataku, ktrego cechy mona modelowa za pomoc wskanika metodycznego, jest atak polegajcy
na podmianie pliku sethc.exe. W tym przypadku nie jest uywany aden szkodliwy program, poniewa
czynno sprowadza si do prostych zmian w rejestrze lub podmiany jednego pliku. Aplikacja sethc.exe
na platformie Windows to program dostarczajcy rnych narzdzi uatwiajcych korzystanie
z komputera osobom niepenosprawnym. Uruchamia si go przez szybkie piciokrotne nacinicie
klawisza Shift i mona go wczy przed zalogowaniem. Hakerzy wykorzystuj t funkcj do
uruchamiania sesji cmd.exe z uprawnieniami administratora.
Atak taki mona przeprowadzi przede wszystkim na dwa sposoby. Po pierwsze, piciokrotne
nacinicie klawisza Shift powoduje uruchomienie pliku c:\windows\system32\sethc.exe. Wystarczy
tylko go podmieni na wasny. Po drugie, mona doda cmd.exe do procedury debugowania pliku
sethc.exe w rejestrze, poniewa system Windows nie sprawdza, czy procedura ta istotnie wskazuje
debugger.
ROZDZIA 5. ZDOBYWANIE TROPW 125
Za pomoc jakich wskanikw moemy sprawdzi, czy system jest zagroony przez plik sethc.exe?
Na pocztek mona sprawdzi, czy plik ten jest rzeczywicie tym, ktrym powinien by. Skrt MD5
pliku c:\windows\system32\sethc.exe w systemie Windows 7 SP0 to
40abe0e4b66ea08b1ffa07ceac312402. Za pomoc programu PEView, opisanego w rozdziale 15.,
dowiemy si te, e znacznik czasu zapisany w nagwku PE tego pliku to 2009/07/14 00:13:57 UTC.
Gdybymy mogli w kadym systemie Windows 7 SP0 sprawdza, czy plik c:\windows\system32\sethc.exe
ma te dwie cechy, to mielibymy doskonae narzdzie do wykrywania zagroe w tych systemach.
Poniej znajduje si przykadowy wskanik napisany przy uyciu pseudokodu. Pamitaj, e
mechanizm szukajcy bdzie wykonywa ten kod na kadym odwiedzonym wle. Pierwsza
instrukcja if sprawdza, czy proces dotar do pliku c:\windows\system32\sethc.exe.
if
{
(cieka do pliku == "c:\windows\system32\sethc.exe")
}
then
if
{
(skrt MD5 pliku != 40abe0e4b66ea08b1ffa07ceac312402)
AND
(Znacznik czasu w nagwku PE != 2009/07/14 00:13:57 UTC)
}
then
podnie alarm
Taki wskanik szybko staje si trudny do opanowania. Lepszym sposobem jego implementacji
jest uycie operatora NOR lub wykonywanie porwna z zawartoci tabel wyszukiwania. Niestety
tylko nieliczne jzyki do definiowania wskanikw zagroenia obsuguj operator NOR i tabele
wyszukiwania. Dlatego podczas implementowania tego wskanika musielimy si zastanowi nad
tym, jakie inne metadane s dostpne. Z naszego dowiadczenia wynika, e hakerzy zawsze
zamieniaj plik sethc.exe na cmd.exe. Porwnujc rozmiary plikw w reprezentatywnej grupie
rodowisk, odkrylimy, e rozmiar pliku cmd.exe zawsze jest wikszy od najwikszego pliku
sethc.exe o przynajmniej 10%. Na podstawie tych ustale napisalimy poniszy pseudokod,
ktry nazywamy te Wskanikiem podmiany sethc na CMD:
if
{
(cieka do pliku == "c:\windows\system32\sethc.exe")
}
then
if
{
(rozmiar pliku >= 300000)
}
then
podnie alarm
Ten wskanik jest prostszy i szybciej dziaa, poniewa nie wymaga obliczania skrtu.
Oczywicie zdajemy sobie spraw, e plik sethc.exe moe te zosta podmieniony na plik
o rozmiarze wikszym o warto nieprzekraczajc okrelonej przez nas rnicy. Ryzyko
pomyki z tego powodu minimalizujemy przez dodanie testw dotyczcych innych czciowo
unikalnych atrybutw.
Aby dowiedzie si, czy zosta uyty debugger dotyczcy konkretnego obrazu, mona poszuka
odpowiednich kluczy w rejestrze. Poniej pokazujemy sposb wykorzystania klucza rejestru
czcego polecenie z debuggerem wykonywania obrazu sethc.exe. Jeli klucz ten ma jakkolwiek
warto, system powinien zosta sprawdzony. Pamitaj, e wyszukiwarka wykona kod na kadym
wle odwiedzonym w procesie wyszukiwania. Pierwsza instrukcja if sprawdza, czy proces dotar
do odpowiedniego klucza rejestru. Poniszy pseudokod nazywa si Wskanikiem, czy sethc jest
debuggerem:
if
{
(Klucz rejestru ==
"HKLM\Software\Microsoft\Windows NT\CurrentVersion\
Image File Execution Options\"
)
}
then
if
(warto klucza zawiera "sethc.exe")
then
podnie alarm
ROZDZIA 5. ZDOBYWANIE TROPW 127
Wersja OpenIOC wskanika rejestru, opisana pod nazw Wskanik, czy sethc jest debuggerem,
zostaa przedstawiona na rysunku 5.3. ciek rejestru podzielono na dwie czci, aby zmiecia si
na stronie.
wykorzysta podczas przeczesywania hosta. Kontynuujemy analiz tego pliku w celu znalezienia
sygnatur sieciowych, ktre umoliwi zidentyfikowanie obecnoci tego szkodliwego programu.
Ju dowiedzielimy si, e analizowany przez nas plik binarny szuka nazwy hosta
practicalmalwareanalysis.com. Monitor sieci moe to atwo wychwyci. Jeli jednak zostan uyte
inne wersje wirusa, poleganie wycznie na sprawdzaniu szukanej nazwy hosta moe by nieskuteczne.
Ponadto moemy zaoy, e nasz plik binarny prbuje poczy si z tym zdalnym systemem, ale
aby utworzy lepszy wskanik, musimy dokadniej zbada ten plik. Szczegowo monitorowanie
sieci omawiamy w jednym z dalszych rozdziaw, ale przyjmijmy, e przechwycilimy ruch sieciowy
z dziaajcej sieci lub wystarczajco dobrze przeanalizowalimy szkodliwy program, aby zaobserwowa
zachowanie opisane poniej.
Za pomoc monitoringu portu UDP 53 pod ktem standardowych zapyta DNS, ktrych
gwne pola s pokazane poniej, mona przechwyci danie wyszukiwania:
DNS Query flags: 0x0100
Query Type: A
Query Class: IN
Query String: "practicalmalwareanalysis.com"
W INTERNECIE
Repozytorium dokumentw Request for Comments (RFC) na stronach Internet Engineering Task Force
http://www.ietf.org.
W tej sytuacji mamy bardzo saby wskanik. Biblioteka da URI, ktry moe generowa
faszywe alarmy. Jednak warto wdroy t sygnatur, aby zobaczy, ile ruchu uda si zidentyfikowa.
Ponisza regua Snort szuka acucha serve.html w znormalizowanym URI HTTP. Wyszukiwanie
jest przeprowadzane w ustalonych przepywach w komunikacji midzy klientem i serwerem:
alert tcp $HOME_NET any -> $EXTERNAL_NET $HTTP_PORTS (
msg:"Lab03-02.dll Malware: practicalmalwareanalysis.com";
flow:established,to_server; content:"serve.html";
http_uri;classtype:bad-unknown; sid:1000002; rev:1;
)
W INTERNECIE
Podrcznik Snort manual.snort.org
Snort IDS and IPS Toolkit, Beale, Caswell, Baker (Syngress Press 2007)
Weryfikacja
Wikszo prowadzonych przez nas ledztw obejmuje tysice systemw, a w wielu przypadkw ich
liczba przekraczaa sto tysicy. Take Twoja organizacja atwo moe osign tak liczb punktw
kocowych. Gdy do przeskanowania jest tyle jednostek, naley zna specyficzne cechy wskanikw
i wiedzie, ile jest generowanych danych. Bez wzgldu na to, czy uywasz systemu RI dla przedsibiorstw,
wdraasz program System Center Configuration Manager, czy skrypty powoki, musisz wyprbowa
swoje wskaniki na reprezentatywnej prbce przykadowych systemw w swoim rodowisku,
zanim uyjesz ich w duej iloci systemw.
W cyklu tworzenia wskanika przedstawionym na rysunku 5.1 pokazalimy, e podczas
weryfikacji wykonywane s dwa przegldy. Pierwszy nazywa si Dane dotyczce wskanika.
Wydaje si to oczywiste, ale po wygenerowaniu wskanika naley sprawdzi, czy dziaa tak, jak
powinien. Skuteczno wskanika moe znacznie si rni w zalenoci od tego, jakie waciwoci
testuje. Wczeniej opisalimy rnic midzy wskanikami zoonymi z bardzo konkretnych
waciwoci i wskanikami zoonymi z wielu rnych mao konkretnych i lunych atrybutw.
Dodatkowo waciwoci w nowym wskaniku nie powinny identyfikowa szkodliwego programu
lub szkodliwej aktywnoci tylko w okrelonym momencie cyklu istnienia. Zastanwmy si np.
nad nastpujcym typowym scenariuszem ataku.
132 INCYDENTY BEZPIECZESTWA
Inn metod weryfikacji, ktr zawsze uwzgldniamy, jest zachowanie wskanika w rodowisku
i jego wpyw na to rodowisko. Jeli zesp wdroy wskanik hostowy w caym przedsibiorstwie,
analityk powinien upewni si, e wpyw tego na system jest dobrze znany. Bez wzgldu na to,
co spowoduje przestj, Ty bdziesz pierwszym, ktremu si za to oberwie. Majc wskanik gotowy
do testowania, znajd zbir systemw reprezentujcych rodowisko. Konkretnie mwic, w grupie
tej powinny znale si systemy serwerowe i rwnie komputery biurkowe. Wikszo narzdzi RI
inaczej wpywa na serwery ni na stacje robocze, poniewa systemy te rni si iloci pamici
RAM, iloci miejsca na dysku oraz zestawem uruchomionych aplikacji. Za pomoc menedera
zasobw mona sprawdzi, jakie obcienie jest generowane w przykadowych systemach i na
podstawie tej informacji stwierdzi, czy jest dopuszczalne. Wanym czynnikiem, ktry naley bra
pod uwag, jest te czas przeszukiwania wirtualnego rodowiska komputerowego. Jeeli operacja
jest zaplanowana dla wielu maszyn wirtualnych dziaajcych na tym samym sprzcie, istnieje
ryzyko wystpienia awarii lub tego, e zabraknie zasobw.
Zbierz fakty, zanim pozwolisz sobie na wydanie opinii. Jeli administrator systemu podj
pewne czynnoci po tym, jak zauway problem, poznaj szczegy tych dziaa i sporzd o
czasu, zanim spytasz go, dlaczego podj tak, a nie inn decyzj. Szczeglnie wane jest,
aby pozwoli mwi przepytywanej osobie bez konfrontacji. Negatywne reakcje ze strony
prowadzcego rozmow mog spowodowa, e rozmwca zacznie zataja pewne szczegy.
Wczaj inne osoby w odpowiednim czasie. Przeprowadzenie wywiadu z administratorami
sieci, ktrzy podjli dziaania po zauwaeniu ataku na sie, to jedno. A prowadzenie rozmw
z pracownikami podejrzanymi w sprawie to co cakiem innego. Dzia prawny powinien
suy rad i jego udzia w procesie jest niezbdny.
Musisz zanotowa, jakie podjto czynnoci i daty ich wykonania. Jeli masz dostp do dziennikw
lub notatek sporzdzanych przez administratorw albo innych pracownikw, rwnie je zabezpiecz.
W miar upywu czasu szczegy ulatuj z ludzkiej pamici, wic staraj si przeprowadzi
rozmowy jak najszybciej.
W INTERNECIE
Infraguard www.infraguard.org
FS-ISAC www.fsisac.com
DIB-CS/IA dibnet.dod.mil
I CO Z TEGO
W rozdziale tym opisalimy techniki klasyfikacji tropw i sposoby postpowania z nimi w taki sposb,
aby jak najlepiej wykorzysta posiadane przez zesp zasoby. Niezalenie od metody zastosowanej
do poszukiwania w systemie wskanikw, musisz pamita o wymienionych niej kwestiach.
Wskaniki s tylko tak solidne jak narzdzie wyszukujce. Jedno narzdzie moe dostarcza
informacji o uytkowniku, a inne moe by lepsze do badania aktywnoci jdra. Musisz zna
ograniczenia wszystkich uywanych przez siebie narzdzi. Nie polegamy wycznie na wasnych
produktach i kady, kto tak robi, powinien by traktowany podejrzliwie.
Wskaniki przed wdroeniem zawsze naley dokadnie przetestowa i sprawdzi. Weryfikuj
i monitoruj ich skuteczno take podczas wykorzystywania w produkcji. Testy wykonuj
w swoich podstawowych systemach operacyjnych i systemach, o ktrych wiadomo, e ich
zabezpieczenia zostay zamane.
Podczas ledztwa wsppracuj z radc prawnym szczeglnie wtedy, gdy tropy prowadz
do podmiotw zewntrznych.
ROZDZIA 5. ZDOBYWANIE TROPW 137
PYTANIA
1. Wygeneruj wskaniki hostowe dla pliku Lab03-03.exe z ksiki Practical Malware Analysis
(practicalmalwareanalysis.com/labs).
2. W lutym 2013 roku firma Mandiant opublikowaa raport zawierajcy szczegow analiz
grupy o nazwie APT 1. W raporcie tym opisano typowy przebieg ataku zaobserwowany
w wielu organizacjach. W podrozdziale zatytuowanym APT 1: Attack Lifecycle
(Cykl ataku grupy APT 1) zawarto opis typowego procesu przeprowadzania rozpoznania
wewntrznego. Korzystajc z opisanej metody, wygeneruj zestaw wskanikw, ktre
pomog Twojej organizacji zidentyfikowa aktywno tego rodzaju. Pamitaj, e wskanik
metodyczny nie musi identyfikowa szkodliwego programu. Uwzgldnij zarwno wskaniki
hostowe, jak i sieciowe.
3. Wygeneruj hostowe i sieciowe wskaniki dla pliku Lab06-02.exe z ksiki Practical Malware
Analysis (practicalmalwareanalysis.com/labs). Moesz wygenerowa bardzo skuteczne
sygnatury sieciowe, jeli wykonasz dynamiczn analiz tego pliku i dowiesz si, czego
program ten szuka.
138 INCYDENTY BEZPIECZESTWA
ROZDZIA 6.
Okrelanie
zasigu incydentu
140 INCYDENTY BEZPIECZESTWA
W
tym rozdziale przedstawiamy techniki pozwalajce poczy metody wykrywania i opisu
incydentw ze sposobami zbierania i analizy danych. Innymi sowy, czymy dwie
najwaniejsze czci tej ksiki. Na podstawie prawdziwych zdarze pokazujemy krok
po kroku, jak naley przeglda dane pocztkowe, rozwija tropy, gromadzi wstpny materia dowodowy,
wykonywa wysokopoziomowe przegldy oraz dobiera odpowiednie metody zbierania i przechowywania
informacji. Aby okreli zasig incydentu, zasadniczo naley przeprowadzi ograniczone ledztwo.
Aby byo jasne, co jest gwnym tematem tego rozdziau, pomyl o dochodzeniu policyjnym.
Jeeli dojdzie do kradziey w sklepie spoywczym, policja nie przesuchuje wszystkich osb znajdujcych
si w okrelonym promieniu od miejsca, w ktrym popeniono przestpstwo. Policjanci nie zajm te
wszystkich produktw pozostaych w sklepie w celu zdjcia odciskw palcw. Zamiast tego zgromadz
i przeanalizuj dowody pocztkowe. Wysuchaj zezna wiadkw albo przejrz nagrania z kamer
monitoringu. Na podstawie tych danych zdecyduj, co robi dalej mog np. przesucha wicej osb,
przejrze nagrania z jeszcze innych kamer albo zdoby nakaz rewizji. Czasami funkcjonariusze mog
stwierdzi, e nie da si dalej prowadzi dochodzenia, bo np. brak jakichkolwiek dowodw wstpnych.
Teraz zastanw si, jak okreliby zasig incydentu bezpieczestwa komputerowego. Mimo e
sprawa dotyczy komputerw, zastosowanie ma wiele zasad typowych dla zwykych dochodze. Dobry
specjalista postpuje zgodnie z tymi zasadami, poniewa s oglnie skuteczne w rozwizywaniu zagadek
kryminalnych. Jeli przykadowo dowiesz si, e pewien uytkownik otrzyma wiadomo e-mail
z wirusem, powiniene ustali dodatkowe fakty, np. kto jeszcze dosta tak wiadomo, w jakich dziaach
pracuj te osoby oraz kiedy zostay rozesane te e-maile. W rozdziale tym dzielimy si nasz wiedz
na temat stosowania tradycyjnych metod dochodzeniowych w kontekcie prowadzenia ledztw
w sprawach zwizanych z incydentami bezpieczestwa komputerowego. Najpierw opisujemy
podstawowe pojcia, a potem przedstawiamy sposoby ich wykorzystania na podstawie kilku scenariuszy.
Zanim rozpoczniemy
CO MAM ZROBI
W podrozdziale tym opisujemy podstawowe pojcia zwizane z pocztkowymi etapami prowadzenia
ledztwa, ktrych celem jest okrelenie zasigu incydentu i umoliwienie podjcia decyzji, co robi
dalej. Piszc sowo zasig, mamy na myli dowiadywanie si, co dokadnie zrobi haker, poniewa
wstpna analiza rzadko daje odpowiedzi na wszystkie pytania. Opisujemy trzy obszary dziaalnoci,
w wyniku ktrej powinno da si okreli zasig incydentu; s to:
analiza danych pocztkowych,
gromadzenie i przegld dowodw wstpnych,
okrelenie sposobu postpowania.
Dalej w rozdziale przedstawiamy kilka scenariuszy, na podstawie ktrych pokazujemy sposoby
zastosowania tych technik w praktyce. Czytajc dalej ten podrozdzia, pamitaj, e to jeszcze
nie wszystko. Zaczniemy od pierwszego obszaru dziaa analizy danych pocztkowych.
Ponadto mona sprawdzi dokadno metody przy uyciu adresu, o ktrym wiadomo,
e powinien zosta znaleziony. Bardziej szczegowy opis metod analitycznych zamiecilimy
w rozdziaach od 11. do 16.
Ostrzeenie Jak ju wczeniej pisalimy, nieobecno dowodu nie jest dowodem na nieobecno. System,
w ktrym wykryto pierwsze lady szkodliwej aktywnoci, moe by jedynym dotknitym
systemem lub jednym z setek dotknitych systemw. Moliwe, e udao si wykry hakera,
ktry dopiero prbuje wama si do rodowiska, albo proceder, w ramach ktrego z systemu
ukradziono ju wiele gigabajtw danych. Nie jestemy paranoikami, ale uwaamy, e nie
naley z gry zakada, i nic zego si nie stao tylko dlatego, e na razie nie ma na to
dowodw. Dowiadczenie podpowiada nam, e tego rodzaju zaoenia s jedn z gwnych
przyczyn niewykrycia wama przez dugi czas.
Przez kilka pierwszych dni po wczeniu monitoringu zapyta przegldasz dzienniki, aby
dowiedzie si, co wyglda na normaln dziaalno. Ponadto od administratorw baz danych
i aplikacji dowiadujesz si, gdzie dokadnie s przechowywane okrelone dane klientw. Mwic
dokadnie, sprawdzasz, czy istniej jakie zapytania lub procedury skadowane dokonujce
masowego eksportu profili klientw z adresami e-mail. Nie zauwaasz, aby co takiego miao
miejsce codziennie, wic liczysz, e gdy haker wykona podobne zapytanie do bazy danych, bez
trudu to wykryjesz. Po dwch kolejnych tygodniach oczekiwania zaczynasz otrzymywa spam
na nowo utworzone konta. Pobierasz wic dzienniki zapyta z okresu od ostatniego przegldu do
momentu, kiedy zacze otrzymywa niechcian poczt. Szukasz w tych plikach interesujcego
Ci pola custemail. Znajdujesz tylko jedno zapytanie zawierajce taki acuch, ktre zostao
wykonane trzy dni temu. Pena tre tego zapytania SQL to: " select custemail from custprofile
where signupdate >= 2014-02-16". Pobiera ono adresy e-mail klientw, ktrzy zaoyli konta
16 lutego 2014 roku lub pniej. Jest to data sprzed okoo dwch tygodni i z grubsza zgadza si
z ostatni fal nowego spamu.
Analiza dziennikw wykazaa, e zapytanie zostao wykonane 17 lutego 2014 roku o godzinie
11:42 GMT z adresu IP komputera biurkowego nalecego do firmowego dziau graficznego,
cho wykorzystano w nim nazw uytkownika nalec do administratora baz danych z dziau IT.
Spotykasz si z dyrektorem dziau graficznego i pytasz, czy wykorzystuj do czegokolwiek adresy
e-mail klientw w ramach normalnej dziaalnoci. Dowiadujesz si, e dzia ten w aden sposb
nie kontaktuje si z klientami, ale czsto porozumiewa si drog e-mailow z kilkoma dostawcami
zewntrznymi.
W tym momencie masz ju wystarczajco duo wstpnych dowodw, aby nabra pewnoci,
e rzeczywicie istnieje problem, posiadasz dobre tropy i moesz zdecydowa, co robi dalej.
Najpierw jednak przypomnijmy sobie najwaniejsze informacje.
S dowody na to, e skargi uytkownikw otrzymujcych spam po rejestracji w sklepie
s uzasadnione.
Wstpnie zgromadzone dane sugeruj, e do kradziey dochodzi raz na dwa tygodnie
i wykradane s tylko adresy e-mail. Dane s pobierane bezporednio z produkcyjnej
bazy danych.
Zapytania do bazy danych s wysyane przez sie z komputera biurkowego nalecego
do dziau graficznego firmy. Dzia ten nie wykorzystuje w aden sposb adresw e-mail
klientw w ramach swojej normalnej dziaalnoci. Ponadto w zapytaniu wykorzystywana
jest nazwa uytkownika bazy danych naleca do administratora baz danych z dziau IT.
Teraz naley podj decyzj, co robi dalej. Na podstawie posiadanych informacji mona
wytypowa dwa rda dowodw, ktrych zdobycie mogoby umoliwi posunicie ledztwa do
przodu; s to produkcyjna baza danych i komputer z dziau graficznego. Na razie masz niewiele
tropw i mao danych, wic postanawiasz, e najlepszym rozwizaniem bdzie zdobycie wikszej
iloci szczegw. W odniesieniu do komputera grafikw postanawiasz:
wykona analiz na ywo;
utworzy obrazy pamici i dysku twardego na potrzeby ledztwa;
ROZDZIA 6. OKRELANIE ZASIGU INCYDENTU 147
Uwaga W scenariuszu tym pado podejrzenie na osob z wewntrz. Moe zauwaye, e zagroenie z tej strony
postawilimy na tym samym, a moe troch niszym poziomie, ni inne teorie mimo e cz wstpnych
dowodw prowadzia do systemu wewntrznego. Niektrzy twierdz, e zagroenie ze strony
pracownikw jest wiksze, poniewa atwiej zaatakowa sie od rodka albo w mediach mwi, e to
powany problem. Jednak z naszego dowiadczenia wynika, e hakerzy czsto nie maj problemw
z dotarciem do wewntrznych systemw, cho ofiary rzadko si do tego przyznaj ze wstydu lub
z obawy przed konsekwencjami prawnymi. Ponadto odkrylimy, e ledztwa nadmiernie skupione
na dochodzeniu, kto to robi, przed zdobyciem odpowiedzi na pytanie, co dokadnie si dzieje,
czciej kocz si fiaskiem. Dlatego jeli nie ma przekonujcych dowodw wskazujcych na dziaalno
kogo z wewntrz, lepiej postpowa zgodnie z faktami i mie oczy szeroko otwarte.
148 INCYDENTY BEZPIECZESTWA
Teraz przeanalizujemy kilka sposobw okrelania zasigu tego wydarzenia, ktre nie dayby
spodziewanego efektu.
Zesp skupia si na pamici, poniewa o wiele atwiej wykona jej obraz ni obraz dyskw
twardych. Ponadto jego czonkowie uwaaj, e wszystko, co dzieje si w systemie, musi
w pewnym momencie znale odzwierciedlenie w pamici dlatego nie ma koniecznoci
zapisywania zawartoci dyskw twardych. Wykonuj obrazy pamici codziennie i analizuj
je w poszukiwaniu ladw szkodliwych dziaa.
Problem. wiadome skierowanie wszystkich zasobw do badania jednego rodzaju dowodw
jest zym pomysem, niezalenie od tego, jak due zaufanie ma si do rda informacji.
OSZUSTWO W AUTOMATYCZNYM
SYSTEMIE ROZRACHUNKOWYM (ACH)
Tym razem przenosimy si do lokalnej sieci sklepw ze sprztem komputerowym. Jeste dyrektorem
dziau IT i kierownikiem ds. bezpieczestwa informatycznego. Dyrektor generalny wanie Ci
poinformowa, e otrzyma telefon z banku z informacj o zablokowaniu przelewu ACH na kwot
183 642,73 $. Przelew mia trafi na nigdy wczeniej nieuywane konto, ktre zostao oznaczone
przez bankowy system zapobiegania oszustwom. Z informacji udzielonych przez bank wynika, e
do wykonania przelewu wykorzystano internetowe konto bankowe dyrektora finansowego firmy.
Dyrektor ten twierdzi, e nie wykonywa adnego takiego przelewu. Dyrektor generalny potwierdza
wic, e transakcja jest nielegalna, i chce, aby dowiedzia si, jak doszo do tego incydentu.
Prac zaczynasz od przeanalizowania informacji dostarczonych przez bank.
danie wykonania przelewu zostao wysane przez internet z internetowego konta
dyrektora finansowego.
Kwota przelewu to 183 642,73 $.
danie wykonania przelewu wysano dzie wczeniej o godzinie 16:37 GMT5 (EST).
rdowy adres IP to publiczny internetowy adres IP Twojej firmy (adres zapory sieciowej).
Na podstawie tych wstpnych informacji zastanawiasz si, w jakich rdach poszuka
dowodw wstpnych. Bierzesz pod uwag dwie szerokie kategorie sie i host i na myl
nasuwaj Ci si dwa podstawowe rda informacji, czyli zapora sieciowa i laptop dyrektora
finansowego. Wiesz, e zapora przechowuje dzienniki przez okoo dwa tygodnie. Ponadto moesz
zdoby dane do analizy ledczej z laptopa dyrektora finansowego, np. wykona analiz na ywo
oraz zrzut pamici i dysku twardego. Jednak w gr wchodzi te moliwo zaangaowania innych
komputerw. Jako e ruch internetowy nie jest duy i mona szybko wyeksportowa dzienniki
zapory sieciowej, postanawiasz najpierw przejrze te dzienniki w poszukiwaniu pocze
z bankiem. To powinno pozwoli na ustalenie, ktre rda dowodw s najwaniejsze.
Eksportujesz wczorajsze dzienniki zapory sieciowej na swj komputer i rozpoczynasz wstpn
analiz. Wydaje Ci si, e najlepiej zacz od czasu w pobliu godziny wystpienia nieautoryzowanego
dania wykonania przelewu, poniewa aby je wysa, kto musia zalogowa si na konto.
Szukasz wic wszystkich pocze z adresem IP banku w obrbie godziny 16:00. Odkrywasz kilka
pocze na standardowym porcie HTTPS 443, ktre zostay wykonane midzy 16:10 a 16:48.
150 INCYDENTY BEZPIECZESTWA
W rekordach dotyczcych tych pocze znajdujesz dwa wewntrzne adresy IP jeden naley
do komputera dyrektora finansowego, a drugiego nie rozpoznajesz od razu.
Na podstawie wstpnej analizy dziennikw zapory sieciowej planujesz dwie wane czynnoci.
Po pierwsze, jako e masz dowd na zwizek midzy nieautoryzowan transakcj a komputerem
dyrektora finansowego, chcesz zabezpieczy wszelkie dane z tego komputera, ktre mog by
istotne w ledztwie, a wic wyniki analizy na ywo, zawarto pamici oraz zawarto dysku
twardego. Musisz dziaa szybko, poniewa zdarzenie miao miejsce bardzo niedawno i jest dua
szansa, e w systemie zostao jeszcze duo ladw. Po drugie, odkrye jeszcze jeden adres IP,
z ktrego czono si ze stron internetow banku w mniej wicej tym samym czasie, w ktrym
doszo do prby wykonania przelewu, wic musisz dowiedzie si, co to za adres, a po ustaleniu
jego uytkownika podj odpowiednie kroki.
Oczekujc na zakoczenie procesu pobierania danych z komputera dyrektora finansowego,
zaczynasz bada nieznany adres IP. Poniewa adresy w sieci s przydzielane przez DHCP,
postanawiasz przejrze dzienniki serwera DHCP, aby dowiedzie si czego wicej. Szukasz wic
interesujcego Ci adresu IP w rekordach dotyczcych odpowiedniego dnia i dowiadujesz si,
e by przypisany do adresu MAC karty bezprzewodowej w laptopie dyrektora finansowego.
Okazuje si wic, e nie musisz bada adnego innego komputera, poniewa wszystkie wstpne
dowody wskazuj, i incydent dotyczy tylko jednego laptopa. Jako e gromadzenie danych jeszcze
si nie zakoczyo, zabezpieczasz kopi wszystkich dziennikw zapory sieciowej.
Nastpnie postanawiasz ponownie porozmawia z dyrektorem finansowym, aby zdoby wicej
informacji kontekstowych dotyczcych jego komputera. Podczas rozmowy dowiadujesz si
nastpujcych rzeczy.
Dyrektor by wczoraj w pracy, ale wyszed o 16:30.
Dyrektor mia spotkanie przed wyjciem z pracy. Spotkanie to odbyo si w sali konferencyjnej
i w tym czasie dyrektor korzysta z firmowej sieci bezprzewodowej. Tematem spotkania
byo porwnanie usug banku, z ktrego aktualnie korzysta firma, z usugami konkurencji.
Podczas narady dyrektor wchodzi na stron banku, ale nie korzysta z usug bankowoci
internetowej.
Dyrektor utrzymuje, e nie wykona nieautoryzowanego przelewu oraz nic nie wie
o numerze docelowego konta tej operacji.
Gromadzenie danych pocztkowych dobiega koca, wic zaczynasz planowa dalsze postpowanie
w ledztwie. Najpierw przypomnijmy sobie, co ju wiemy i jakie zgromadzilimy dowody.
Przegld dziennikw zapory sieciowej pozwoli wykry poczenia z komputera dyrektora
finansowego z bankiem w badanym czasie. Nie byo pocze z innych komputerw.
Dyrektor finansowy twierdzi, e nie wykonywa adnego przelewu i nie byo go w biurze
w czasie, gdy operacj t zlecono. Twoja firma nie pozwala na zdalny dostp do komputerw
pozostawionych w biurze.
Masz dzienniki zapory sieciowej z ostatnich dwch tygodni.
Masz dane z analizy na ywo, zrzut pamici i obraz dysku twardego z komputera dyrektora
finansowego.
ROZDZIA 6. OKRELANIE ZASIGU INCYDENTU 151
I CO Z TEGO
Okrelenie zasigu incydentu ma krytyczne znaczenie dla szybkiego przeprowadzenia skutecznego
ledztwa. Wiedzc, jaki jest zasig incydentu, moesz lepiej wykorzysta posiadane zasoby ludzi
i technologie. Proces, ktry opisalimy w tym rozdziale, pozwala prawidowo oceni, jak bardzo
rozprzestrzeniona jest szkodliwa aktywno w rodowisku, efektywnie alokowa zasoby, skupi si
na waciwych czynnociach oraz w kocu znale dowody pozwalajce rozwiza spraw.
PYTANIA
1. Jeli rda dowodw nie obejmuj wielu niezalenych kategorii, co zrobisz, aby zwikszy
pewno dotyczc poprawnoci swoich wnioskw?
2. Wymyl wasn sensown teori na temat tego, w jaki sposb haker mg zdoby dostp
do komputera dyrektora finansowego w przypadku oszustwa ACH. Jak poprowadziby
ledztwo na podstawie tej teorii?
3. W przypadku wycieku danych wykonano szereg czynnoci, aby zweryfikowa skargi
uytkownikw. Wymie przynajmniej dwie inne czynnoci, ktre mogyby pomc
w weryfikacji tych skarg lub wykryciu rda przecieku.
CZ III
Gromadzenie danych
ROZDZIA 7.
Zbieranie danych
na ywo
156 INCYDENTY BEZPIECZESTWA
D
ane na ywo gromadzi si w prawie kadym ledztwie w sprawie incydentu bezpieczestwa
komputerowego. Robi si to przede wszystkim w celu zabezpieczenia ulotnych dowodw,
ktre mog by bardzo pomocne w dochodzeniu. Ponadto czsto gromadzimy take
wszelkie dodatkowe informacje, ktre da si szybko zapisa, np. dzienniki i listy plikw. Dziki
temu atwiej nam znale odpowiedzi na niektre pytania bez wykonywania czasochonnej operacji
kopiowania zawartoci caego dysku. W wielu przypadkach zbieranie i analiza danych na ywo
pozwala na uzyskanie szybkich odpowiedzi, co redukuje ryzyko utraty informacji i wystpienia
negatywnych skutkw incydentu. Ponadto wyniki te powinny pomc w podjciu decyzji, czy
konieczne jest wykonanie obrazu caego dysku twardego.
Ze zbieraniem danych na ywo wie si jednak pewne ryzyko. Przede wszystkim naley
stara si, aby proces ten spowodowa jak najmniej zmian w systemie. Jeli kto nie uyje narzdzia
automatycznego, moe spowodowa wiele niepotrzebnych modyfikacji co z kolei moe negatywnie
wpyn na dziaanie firmy, zniszczy dowody albo zaalarmowa hakera. W niektrych przypadkach
gromadzenie danych na ywo moe doprowadzi do awarii systemu. Dlatego naley si do tej
operacji bardzo dobrze przygotowa i wykona j z naleyt pieczoowitoci.
W rozdziale tym opisujemy kilka zagadnie dotyczcych efektywnego gromadzenia danych
na ywo i minimalizowania zwizanego z tym ryzyka. Wyjaniamy, po co w ogle si to robi,
kiedy najlepiej to robi oraz jakiego rodzaju dane najczciej mona w ten sposb zdoby.
Ponadto przedstawiamy metody gromadzenia danych na ywo w najpopularniejszych systemach
operacyjnych. Wicej wartociowych informacji na ten temat mona znale w dokumencie
RFC 3227 pt. Guidelines for Evidence Collection and Archiving.
W INTERNECIE
www.ietf.org/rfc/rfc3227.txt
Ostrzeenie Podejmowane przez Ciebie decyzje dotyczce tego, kiedy i jak zareagowa w systemie,
maj bezporedni wpyw na jako gromadzonych dowodw, wysnuwanych na ich podstawie
wnioskw oraz ewentualnego uznania w sdzie. Skutki podjtych decyzji mog mie te duy
wpyw na ca organizacj. Dlatego podczas planowania i wykonywania reakcji na ywo naley
mie na uwadze te kwestie.
Ukryte intencje
Wiele organizacji korzysta z usug gromadzenia danych bez adnego logicznego powodu
np. wykonuj kompletne kopie pamici systemowej albo klony kadego dotknitego
zagroeniem systemu. Czasami organizacje padaj po prostu ofiar propagandy marketingowej
lub zych porad osb przedstawiajcych si jako eksperci. Nie powinno si zbiera danych,
ktrych nie da si wykorzysta efektywnie lub zrozumie. Naszym zdaniem najlepiej wypracowa
metody postpowania na podstawie wasnych moliwoci analitycznych, aby mona byo jak
najszybciej okreli wpyw incydentu na rodowisko. Pamitaj, e instalacja szkodliwego programu
to nie cel hakera, tylko rodek do osignicia innego celu. Dlatego naley poda za tropem
i stara si ustali, co naprawd haker chce zrobi.
Cho kady system operacyjny ma swoje charakterystyczne rda dowodw, istniej te pewne
obszary wsplne prawie wszystkim systemom. Niektre dane s nieodczn czci systemu, a inne
pochodz z rnych miejsc, takich jak dzienniki. Naley podkreli, e ustawienia systemowe mog
mie bardzo duy wpyw na dostpno materiau dowodowego, a wic i na to, jak wiele uda nam
si wyjani w toku ledztwa. Kada organizacja powinna dy do rejestrowania jak najwikszej
iloci danych przy zachowaniu rozsdku. Narzdzie do analizy na ywo powinno umoliwia
gromadzenie przynajmniej takich informacji jak:
systemowe data i godzina wcznie ze stref czasow;
wersja systemu operacyjnego;
oglne informacje o systemie komputerowym, np. pojemno pamici, wielko dyskw
twardych i uywane systemy plikw;
lista usug i programw uruchamianych automatycznie wraz z systemem, np. serwerw
sieciowych, baz danych, aplikacji multimedialnych oraz klientw poczty e-mail;
lista zada automatycznie wykonywanych co okrelony czas;
lista lokalnych kont uytkownikw i przynaleno do grup;
dane o interfejsie sieciowym, wcznie z adresami IP i MAC;
tabela routingu, tabela protokou ARP oraz bufor DNS;
poczenia sieciowe wraz z powizanymi z nimi procesami;
aktualnie zaadowane sterowniki lub moduy;
pliki i inne otwarte uchwyty;
dziaajce procesy i informacje szczegowe, np. identyfikatory procesw nadrzdnych
(PID) oraz system wykonawczy;
dane konfiguracyjne systemu;
historia logowania uytkownikw z nazwami uytkownika, rdem i czasem trwania
poczenia;
ROZDZIA 7. ZBIERANIE DANYCH NA YWO 161
Pierwszy folder by tylko do odczytu i zawiera zestaw narzdzi do analizy na ywo. Drugi folder
by z prawem do zapisu i suy do przechowywania wynikw analizy. Procedura postpowania
analityka bya nastpujca.
1. Przejcie do udziau (lub zmapowanie litery dysku) z podejrzanego systemu.
2. Uruchomienie programu do analizy na ywo bezporednio z udziau i skierowanie wynikw
do folderu znajdujcego si na udziale. Najlepiej, aby by to podfolder o nazwie zawierajcej
niepowtarzalny identyfikator, np. numer metki dowodu.
3. Po zakoczeniu procesu zbierania informacji analityk wraca do swojego komputera
i przenosi dane uzyskane podczas analizy z tymczasowej lokalizacji na udziale do osobnego
serwera przechowujcego dane analityczne w sposb trway i majcego odpowiednie
ustawienia kontroli dostpu.
Uwaga Oczywicie proces ten mona jeszcze bardziej zabezpieczy, np. przez fizyczne oddzielenie serwera
do przechowywania dowodw od niebezpiecznej sieci i rejestrowanie oraz nadzorowanie zdarze
dostpu. Take sam procedur mona zoptymalizowa, aby zminimalizowa moliwo wystpienia
bdu ludzkiego i zapewni jak najwiksz spjno informacji, np. przez utworzenie odpowiedniego
folderu wyjciowego.
Kolejn trudnoci, z jak by moe trzeba bdzie si zmierzy, jest istnienie systemw,
dla ktrych nie ma automatycznych narzdzi do wykonywania analizy na ywo. Wielokrotnie
zdarzao nam si myle, e pracujemy w okrelonym systemie operacyjnym, aby pniej odkry,
e to jednak inny system. W takich przypadkach zastanawiamy si, czy mona zaktualizowa
lub zmodyfikowa istniejcy zestaw narzdzi. Jeli nie, z reguy wdraamy rozwizania rczne.
Tworzymy list kontroln na podstawie czynnoci automatycznie wykonywanych przez narzdzia
analityczne w podobnym systemie. Sprawdzamy opcje wiersza polece, aby sporzdzi odpowiedni
list kontroln, a potem testujemy j w miar moliwoci na znanych czystych systemach.
Wykonywanie rcznej analizy w mao znanym systemie jest ryzykowne. Trzeba to ryzyko
rozway i zastanowi si, czy warto je podejmowa.
Dalej opisujemy techniki wykonywania analizy na ywo w dwch najpopularniejszych
rodzajach systemw operacyjnych Microsoft Windows i uniksowych, takich jak np.
Apple OS X.
Automatyzacja
W INTERNECIE
www.mandiant.com/resources/download/redline
Ostrzeenie Nie instaluj pakietu MSI Redline w systemie, ktry chcesz zbada! Program ten naley zainstalowa
w swoim komputerze uywanym do pracy lub innym systemie niedotknitym incydentem.
Nastpnie w komputerze tym tworzy si kolektor Redline. W podejrzanym systemie wykonuje
si tylko samodzielny skrypt wsadowy kolektora, ktry automatycznie zapisuje dane w tym
samym miejscu, w ktrym si znajduje.
Nastpna tabela zawiera list kilku darmowych narzdzi dostarczajcych informacji, ktrych
nie da si atwo wydoby z systemu Windows za pomoc polece standardowych, takich jak np.
magazyny danych, zaadowane sterowniki czy kompletna lista zawartoci systemu plikw.
Poniej opisujemy dwa narzdzia, ktrych sami najczciej uywamy do tworzenia obrazw
pamici w systemach Windows Memoryze firmy Mandiant i FTK Imager Lite firmy AccessData.
Mandiant Memoryze
Do tworzenia kompletnych zrzutw pamici najczciej uywamy programu Memoryze firmy
Mandiant, ktry jest dostpny w postaci pakietu MSI. Program ten mona stosowa na dwa
sposoby i w obu przypadkach naley uywa bezpiecznego komputera, tzn. wolnego od wirusw,
zamanych zabezpiecze i wykorzystywanego do rutynowych dziaa ledczych.
Ostrzeenie Nie wykonuj tych czynnoci na komputerze bdcym dowodem w ledztwie! Inaczej mwic,
nie pobieraj i nie instaluj programu Memoryze, ani adnego innego, w systemie, ktry jest
poddawany ledztwu. Moe si zdarzy, e nie bdzie innego wyjcia, ale generalnie to bardzo
zy pomys, poniewa w ten sposb powoduje si wiele niepotrzebnych zmian i mona
doprowadzi do zniszczenia dowodw lub zanieczyszczenia badanego systemu.
<snip>
Beginning local audit.
Audit started 05-08-2012 20:21:23
Checking if 'D:\Downloads\LR\Memoryze\Audits\JASON-PC\2012050900
2123' exists...
Saving batch result to 'D:\Downloads\LR\Memoryze\Audits\JASON-PC\20120509002123\'.
Batch results written to
'D:\Downloads\LR\Memoryze\Audits\JASON-PC\20120509002123\'.
Auditing (w32memory-acquisition) started 05-08-2012 20:21:23
Executing command for internal module w32memory-acquisition, 1.3.22.2
<Issue number="0" level="Info" summary="System range 0x0000000000000000 -
0x000000000009d000" context="EnumerateDevices"/>
Uwaga Niektre komunikaty z powyszego listingu mog Ci niepokoi. Jednak ostrzeenia (ang. warning)
s normalne. Martwi si naley, gdy zaczn by zgaszane bdy (ang. error).
Zakoczenie zbierania danych sygnalizuje zamknicie okna wiersza polece. Zanim uznasz,
e operacja si powioda, porwnaj rozmiar pliku wyjciowego z oczekiwan wielkoci pamici.
Program Memoryze i inne tego typu narzdzia miewaj problemy z niektrymi systemami. Jeeli
wic nie moesz zmusi tego narzdzia do utworzenia pliku o spodziewanym rozmiarze, sprbuj
uy innego programu. Pamitaj, e Memoryze dodaje te przestrze adresow procesw podlegajc
wymianie (w pamici wirtualnej), wic otrzymany obraz pamici moe by wikszy ni rozmiar
pamici fizycznej.
W menu File (plik) znajduje si opcja Capture Memory (wykonaj zrzut pamici). Kliknicie jej
powoduje pojawienie si okna, w ktrym mona wybra miejsce zapisu i poda nazw obrazu. Jak
zwykle przy pracy w dziaajcym systemie, zalecamy zapisanie obrazu na noniku zewntrznym lub
dysku sieciowym. Jeli do uruchomienia programu FTK Imager uyto nonika USB, zrzut rwnie
mona zapisa na tym noniku. Plikowi trzeba nada odpowiedni nazw, np. zawierajc numer
sprawy i metki dowodu albo nazw sprawy i komputera. Nazwa nie moe si dublowa czasami
trzeba pracowa w jednym systemie kilka razy. Po rozpoczciu procesu wykonywania zrzutu
pojawi si okno dialogowe podobne do pokazanego na nastpnej stronie.
174 INCYDENTY BEZPIECZESTWA
W INTERNECIE
Strona twrcy programu LINReS www.niiconsulting.com/innovation/linres.html
Strona, z ktrej mona pobra program LINReS sourceforge.net/projects/linres
Zestaw ten jest przeznaczony gwnie do uytku w systemie Red Hat Linux, ale mona go
wykorzysta jako wzr do budowy zestaww narzdzi dla innych wersji systemu Red Hat, a nawet
innych rodzajw systemw uniksowych, np. FreeBDS, Solaris czy OS X. Szkielet LINReS nie jest
bardzo skomplikowany, cho moesz by zmuszony do podszlifowania swoich umiejtnoci
z zakresu pisania skryptw BASH, aby wykorzysta w peni jego moliwoci.
Ze wzgldu na ma dostpno aktualnych narzdzi do zbierania danych na ywo z systemw
uniksowych praca w tych systemach wci w gwnej mierze polega na opracowywaniu wasnych
rozwiza. Procedura tworzenia zestawu narzdzi do analizy na ywo dla takich systemw jest
podobna do procedury dla systemw Windows naley wybra systemy operacyjne, ktre chce
si obsugiwa, znale zewntrzne narzdzia, jakie mog by potrzebne, wybra jzyk skryptowy
do poczenia wszystkiego i przeprowadzi dokadne testy. W nastpnym punkcie podajemy
podstawowe wiadomoci na ten temat.
Uwaga Jako konsultanci ds. bezpieczestwa komputerowego pracowalimy przy wielu incydentach w rnych
wersjach systemw uniksowych. Utworzenie nowego zestawu narzdzi dla jednego z tych systemw
wymaga tak duo czasu i wysiku, e postanowilimy opracowa narzdzia do budowania nowych
zestaww do analizy na ywo. Narzdzia te zawieraj skrypty powoki Bournea, ktre przechodz
przez proces reakcji na ywo oraz identyfikuj odpowiednie pliki binarne i wszystkie powizane
z nimi biblioteki. Nie przedstawiamy tutaj tych skryptw, poniewa wymagaj cigego modyfikowania.
Stanowi jednak doskona ilustracj tego, ile pracy trzeba woy w zbudowanie i utrzymanie zestawu
narzdzi do analizy na ywo dla systemw uniksowych.
Nastpn decyzj, jak naley podj, jest wybr jzyka do napisania skryptw. Zasady wyboru
s takie same jak w systemie Windows. W uniksowych systemach operacyjnych do wyboru jest
wiele jzykw Perl, Python, powoka Bournea, BASH itd. W naszej firmie postanowilimy
wykorzysta nowsze i te niezawodne rozwizanie powok Bourne-again Shell (BASH).
176 INCYDENTY BEZPIECZESTWA
Cenne wskazwki mona te znale na kilku stronach internetowych. Jedn z nich jest The Apple
Examiner, zawierajca wiele przydatnych informacji dotyczcych systemu OS X. Jako e jest to system
uniksowy, w portalu tym mona te znale opisy technik analiz na ywo oglnie w systemach uniksowych.
Skadajc swj wasny zestaw, pamitaj, e polecenie system_profiler w systemie Apple OS X zwraca
bardzo duo przydatnych informacji o systemie i podczonych do niego urzdzeniach.
W INTERNECIE
Portal The Apple Examiner www.appleexaminer.com
Podpowiedzi, jakie informacje mona zbiera w systemie Apple OS X
www.appleexaminer.com/MacsAndOS/Analysis/InitialDataGathering/InitialDataGathering.html
Ponisza tabela zawiera list podstawowych kategorii danych, jakie warto zbiera w systemach
uniksowych, oraz sugerowane narzdzia i polecenia do ich zbierania. S to tylko oglne wskazwki
i oczywicie nie dotycz wszystkich istniejcych odmian systemu, ale mog posuy jako podstawowy
poradnik przy tworzeniu wasnego uniksowego zestawu narzdzi do analizy na ywo.
Dla kadej obsugiwanej wersji systemu uniksowego naley przeprowadzi dokadne testy, aby
sprawdzi, czy wszystko dziaa tak, jak powinno. Zalecamy wykonywanie testw po ukazaniu si
kadej, nawet drobnej aktualizacji dystrybucji danego systemu operacyjnego.
W INTERNECIE
Strona internetowa narzdzia Linux Memory Extractor code.google.com/p/lime-forensics
Najwicej trudnoci z narzdziem LiME sprawia to, e jest ono adowalnym moduem jdra,
wic musi zosta skompilowane dla dokadnie tej wersji jdra, ktra jest uywana w systemie
docelowym. Ponadto w wersji 1.1 (r14.) pliku lime.c nie byo moliwoci dodania mechanizmu
generowania kryptograficznych sum kontrolnych z wynikw. Dlatego naleao je oblicza
i zapisywa samodzielnie. Przetestowalimy program LiME na kilku popularnych dystrybucjach
Linuksa, Ubuntu, CentOS, Debian i OpenSuSE. W testach tych uylimy wersji jdra 2.6.18, 2.6.32
oraz 3.1.10 (zarwno 32- jak i 64-bitowych). We wszystkich przypadkach narzdzie skompilowao
si i dziaao bez adnych problemw. Ponadto na stronie internetowej programu mona znale
dokumentacj do niego w formacie PDF.
Jako e nie kady umie kompilowa adowalne moduy jdra, pokazujemy, jak wykona zrzut
pamici z desktopowej wersji systemu Ubuntu 12.04. Pierwsz czynnoci jest pobranie programu
LiME ze strony podanej poniej.
ROZDZIA 7. ZBIERANIE DANYCH NA YWO 179
W INTERNECIE
Strona do pobierania programu Linux Memory Extractor code.google.com/p/lime-forensics/downloads/list
Wersja 1.1 pakietu to zwyke uniksowe archiwum tar. Wypakuj pliki za pomoc polecenia
tar xvf <nazwapliku>, a nastpnie skompiluj LiME, wykonujc polecenie make w folderze src.
Oczywicie nie wykonuj tych czynnoci w docelowym systemie.
Po zakoczeniu kompilacji w katalogu powinien pojawi si plik z rozszerzeniem .ko.
Numer wersji w nazwie tego pliku jest numerem wersji jdra systemu. Oto jak powinien
wyglda ten plik:
[root@ubuntu src]# ls *.ko
lime-3.0.0-12-generic.ko
Miej wiadomo, e niektre dystrybucje Linuksa nie maj wymaganych nagwkw jdra
lub plikw rdowych, a s one potrzebne do kompilacji programu LiME. W takim przypadku
nagwki jdra i rda naley zainstalowa samodzielnie. W wikszoci nowoczesnych dystrybucji
systemu Linux jest to bardzo atwe i sprowadza si do uycia menedera pakietw. Potrzebne
informacje dotyczce wybranej platformy mona znale w internecie.
Wracamy teraz do skompilowanego pliku .ko: skopiuj go na wymienny nonik danych lub
w inne miejsce, w ktrym zamierzasz zapisa obraz pamici docelowego systemu. Nastpnie
przejd do tego systemu oraz zamontuj i podcz nonik z moduem LiME. Pniej zaaduj ten
modu w taki sam sposb, jak si aduje wiele innych moduw jdra, tzn. za pomoc polecenia
insmod. Przy uyciu obowizkowego parametru path okrel, co program LiME ma zrobi
z wykonanym obrazem pamici. S dwie moliwoci do wyboru: pierwsza to podanie nazwy pliku,
w ktrym ma zosta zapisany obraz, a druga to wczenie nasuchiwania przez LiME na okrelonym
porcie sieciowym i przesanie danych poczeniem, ktre si na nim pojawi. Ponadto jest jeszcze
jeden obowizkowy parametr, o nazwie format. Domylnie uywamy formatu lime, ale s dostpne
take inne. Szczegowe informacje o nich mona znale w dokumentacji programu.
Przyjrzymy si poleceniom, ktre powinny si przyda w obu wymienionych sytuacjach.
W pierwszym przypadku zamontowalimy zewntrzny napd USB do /media/usb. Chcemy
zapisa obraz pamici w katalogu /media/usb/system1_memory. W tym celu wykonujemy
nastpujce polecenie:
insmod /media/usb/lime-3.0.0-12-generic.ko
path=/media/usb/system1_memory.lime format=lime
Program LiME v1.1 nie wywietla niczego w konsoli, chyba e wystpi bd krytyczny.
Jego normalne dziaanie polega na wykonaniu zadania i powrocie do konsoli w cigu kilku minut.
Drugi przypadek to nasuchiwanie pocze na porcie sieciowym TCP i przesanie danych
przez to poczenie. Ponisze polecenie nakazuje programowi LiME nasuchiwanie pocze
na porcie TCP 4444:
insmod /media/usb/lime-3.0.0-12-generic.ko path=tcp:4444 format=lime
180 INCYDENTY BEZPIECZESTWA
W systemie, w ktrym ma zosta zapisany obraz, mona poczy si z portem 4444 systemu
docelowego (w tym przypadku 192.168.100.10) za pomoc narzdzia netcat i skierowa obraz
pamici do pliku:
nc 192.168.100.10 4444 > /evidence/system1_memory.dump
Narzdzie netcat take wywietla w konsoli tylko informacje o bdach krytycznych. Jego normalne
dziaanie polega na wykonaniu zadania i powrocie do konsoli w cigu kilku minut. Jeli wykonasz
polecenie ls w katalogu wyjciowym, powiniene w nim znale plik system1_memory.dump
o spodziewanym rozmiarze. A skoro mowa o oczekiwanych rozmiarach, to jeli nie wiesz, czego si
spodziewa, moesz wywietli cakowit ilo dostpnej pamici za pomoc polecenia free:
root@ubuntu:/media/usb/system1_memory# free
total used free shared buffers cached
Mem: 1019124 929216 89908 0 21428 473820
-/+ buffers/cache: 433968 585156
Swap: 1046524 38332 1008192
W tym przypadku polecenie free informuje, e w systemie znajduje si 1 019 124 Kb (okoo 1 GB)
pamici fizycznej, wic rozmiar pliku zawierajcego jej zrzut powinien by bardzo podobny.
Pamitaj, aby zainstalowa docelowy system operacyjny w maszynie wirtualnej lub fizycznej,
a nastpnie skompilowa i przetestowa program w tym rodowisku, a dopiero potem przystp
do pracy w systemie docelowym. Majc program DCFLdd na noniku wymiennym lub
w odpowiednim miejscu, moesz wykona zrzut pamici za pomoc polecenia, ktrego
oglna posta przedstawia si nastpujco:
dcfldd if=/dev/mem of=/media/usb/memory.dd
hash=md5 hashlog=/media/usb/memory.log
Naley jednak mie na uwadze jedn rzecz. W najnowszych wersjach systemw z rodziny BSD
urzdzenie /dev/mem nie ma znaku koca pliku (EOF), przez co polecenie dd bdzie dziaa
w nieskoczono lub raczej spowoduje awari systemu. Rozwizaniem tego problemu jest
ustalenie limitu transferu danych dla polecenia dd za pomoc opcji count. Rozmiar pamici
fizycznej w bajtach mona sprawdzi za pomoc poniszego polecenia:
sysctl hw.physmem
ROZDZIA 7. ZBIERANIE DANYCH NA YWO 181
Oczywicie dane naley zapisa w odpowiednim miejscu poza systemem, z ktrego pobierany
jest obraz pamici. Dobrym pomysem jest uycie udziau NFS, udziau sieciowego zaszyfrowanego
przy uyciu cryptcat lub stunnel albo nonika podczonego do portu USB.
W INTERNECIE
Memoryze for the Mac www.mandiant.com/resources/download/mac-memoryze
Jak w kadej procedurze zbierania danych z dziaajcego systemu, pierwszym krokiem jest
umieszczenie narzdzia na zewntrznym noniku danych lub w innym miejscu dostpnym dla
systemu docelowego. Nastpnie naley przej do systemu docelowego, zamontowa nonik
lub udzia i uruchomi narzdzie, zapisujc otrzymany plik w tej samej zewntrznej lokalizacji:
182 INCYDENTY BEZPIECZESTWA
Najwiksz wad programu Memoryze for the Mac 1.1 firmy Mandiant jest brak opcji
obliczenia skrtu kryptograficznego dla danych wynikowych.
W INTERNECIE
Mac Memory Reader cybermarshal.com/index.php/cyber-marshal-utilities/mac-memory-reader
Narzdzie gcore wchodzi w skad debuggera GNU (gdb). Jest to skrypt powoki uruchamiajcy
gdb, wicy si z procesem o okrelonym identyfikatorze, tworzcy zrzut i odczajcy si od procesu.
Wicej informacji, wcznie z kodem rdowym, na temat debuggera GNU mona znale na stronie,
ktrej adres podano poniej.
W INTERNECIE
Strona internetowa debuggera GNU www.gnu.org/software/gdb
Polecenie to powoduje zrzucenie pamici dla procesu o identyfikatorze 4327 do pliku o nazwie
case12-tag001-pid4327-sysauthd.img. Nazwa ta zawiera numer sprawy, numer metki oraz identyfikator
i nazw procesu. To tylko jeden z wielu moliwych sposobw nadawania nazw. Najwaniejsze jest,
aby podczas dokumentowania procesw i procedur stosowa jednolite nazewnictwo. Pomaga to
w organizacji pracy zwaszcza wtedy, kiedy przechwytuje si pami dla wielu procesw.
Czasami nie wszystko idzie tak gadko. Jeli narzdzie gcore nie jest zainstalowane lub
s podejrzenia, e haker grzeba w tym skrypcie albo majstrowa w pliku binarnym gdb lub
zwizanych z nim bibliotekach, uycie gcore bdzie utrudnione. Najprostszym rozwizaniem jest
skompilowanie statycznego pliku binarnego gdb i skopiowanie skryptu gcore z zaufanego rda.
Do tego potrzebny jest czysty system operacyjny w dokadnie takiej samej wersji jak badany system.
Naszym zdaniem w takim przypadku najlepiej zasign rady eksperta.
I CO Z TEGO
W dziaajcym systemie pracuje si po to, by wydoby z niego ulotne dane, ktre mog pozwoli
szybko znale odpowiedzi na niektre pytania. Stare podejcie polegajce na robieniu obrazw
wszystkiego czasami te jest dobre, ale rzadko efektywne. Jeli czasu jest bardzo mao lub sytuacja
jest krytyczna, prawidowe zastosowanie technik zbierania danych na ywo pozwala uniemoliwi
hakerowi wykradzenie milionw i ograniczy jego aktywno do drobnych niedogodnoci.
Dobre przygotowanie umoliwia sprawne przeprowadzenie akcji gromadzenia danych na ywo
i niedopuszczenie do tego, by ewentualny incydent przerodzi si w katastrof.
184 INCYDENTY BEZPIECZESTWA
PYTANIA
1. Na jakie pytania powstae w toku ledztwa mona znale odpowiedzi po zebraniu
materiau dowodowego z dziaajcego systemu?
2. Czy naley przeprowadzi analiz na ywo we wszystkich podejrzanych systemach?
Wyjanij swoj odpowied.
3. W jakiej sytuacji pobranie obrazu pamici jest najbardziej korzystne dla ledztwa?
4. Podczas ledztwa odkrywasz podejrzany komputer z systemem operacyjnym, z ktrym
nigdy wczeniej nie miae do czynienia. Polecono Ci pobra z niego dane na ywo.
Opisz, co po kolei bdziesz robi.
ROZDZIA 8.
Duplikacja
danych ledczych
186 INCYDENTY BEZPIECZESTWA
P
odczas incydentu gromadzone s due iloci danych, ktre pniej przechowuje si,
kataloguje i analizuje. Jednym z najwaniejszych rde informacji s obrazy zainfekowanych
lub podejrzanych systemw komputerowych. Cho szkodliwa aktywno moe pozosta
niewykrywalna w dziennikach zdarze i dla czujnikw sieciowych lub moe by zbyt powszechna
w innych rdach danych do analizy, czsto dowody jej obecnoci s w zasigu rki na dyskach
twardych komputerw w organizacji. W rozdziale tym opisujemy procesy, formaty i narzdzia
wykorzystywane przez specjalistw ledczych do duplikowania danych. Czasami prawo precedensowe
wymaga niszych standardw ni opisywane przez nas w tym rozdziale. W sdzie akceptowalne
mog by okrelone metody duplikacji. Jednak zadaniem zespou RI zawsze jest denie do
wygenerowania duplikatw jak najwyszej jakoci takich, dziki ktrym czonkowie zespou
i wszyscy pozostali bd mogli znale odpowiedzi na wszelkie moliwe pytania. Wyrnia si
dwa rodzaje duplikatw proste i ledcze. Prosty duplikat to zwyka kopia okrelonych
danych. Dane te mog by jednym plikiem, grup plikw, partycj na dysku twardym, caym
dyskiem twardym albo innym elementem urzdzenia magazynujcego. Natomiast duplikat
wykonany na potrzeby ledztwa to dokadna kopia danych utworzona z myl o moliwoci
wykorzystania jej jako dowodu w postpowaniu sdowym. cilej rzecz biorc, duplikat na
potrzeby ledztwa definiujemy jako obraz kadego bitu dostpnego na noniku rdowym.
Naszym zdaniem najlepiej wszystkie dane zbierane w toku dochodzenia traktowa jak potencjalne
dowody, ktre mog zosta wykorzystane w sdzie. W zwizku z tym duplikaty zawsze naley
tworzy przy uyciu oglnie przyjtych w rodowisku ledczych metod. W rozdziale tym opisujemy
niektre okolicznoci zwizane z tworzeniem duplikatw prostych i ledczych oraz przedstawiamy
najczciej stosowane metody.
Jakich narzdzi uywa do tworzenia duplikatw na potrzeby ledztwa? Na podstawie przyjtych
standardw dotyczcych dopuszczalnoci ekspertyz w procesach sdowych stwierdzamy, e narzdzie
musi sprawdzi si w obszarach wymienionych na poniszej licie. Pragniemy podkreli, e w rozdziale
tym sowo narzdzie oznacza kade rozwizanie suce do utworzenia obrazu danych. Moe to by
zarwno rozwizanie programowe, jak i sprztowe.
Narzdzie musi umoliwia wykonanie obrazu lub pobranie kadego bitu danych
dostpnych na noniku rdowym.
Narzdzie musi tworzy na potrzeby ledztwa duplikat oryginalnego nonika.
Narzdzie musi niezawodnie i elegancko obsugiwa bdy odczytu. Jeeli nie powiedzie si
kilka prb wykonania obrazu po kolei, bd powinien zosta zanotowany i proces kontynuowany.
W miejscu brakujcej informacji moe zosta wstawiony zastpnik o takim samym rozmiarze
jak luka. Zawarto zastpnika musi by szczegowo opisana w dokumentacji.
Narzdzie lub proces nie mog niczego zmienia w oryginalnym noniku danych.
Wyniki generowane przez narzdzie musz da si powtrzy i zweryfikowa przez
kogo innego.
Narzdzie musi generowa dzienniki ze szczegowym wykazem wykonywanych czynnoci
i wszelkich napotkanych bdw.
ROZDZIA 8. DUPLIKACJA DANYCH LEDCZYCH 187
Kady bit
Zwr uwag na brak wrd powyszych punktw wymogu uycia produktu komercyjnego.
Wielokrotnie mielimy do czynienia z niezbyt uczciwymi sprzedawcami, ktrzy zachwalali wyszo
swoich produktw nad produktami konkurencji, uywajc mao znaczcych argumentw, takich
jak ile razy dane rozwizanie zostao dopuszczone do postpowania sdowego. Dopki stosowane
przez Ciebie metody s akceptowane przez rodowisko branowe i wykonujesz je prawidowo,
jedyn zalet dajc przewag mog by walory uytkowe.
Wykorzystanie niezawodnych narzdzi do wykonywania obrazw ma kluczowe znaczenie.
Laboratorium NIST Information Technology Laboratory prowadzi program o nazwie Computer
Forensics Tools Verification, w ramach ktrego opracowuje specyfikacje procedur testowych
i wynikw m.in. narzdzi duplikujcych dane, programowych blokad zapisu, sprztowych blokad
zapisu oraz narzdzi do odzyskiwania usunitych plikw. Jeeli proces wykorzystywany przez
organizacj nie widnieje na stronie tego programu, mona wykona wasne testy, posugujc si
opublikowanym na niej planem i danymi pomocniczymi.
W INTERNECIE
NIST Computer Forensic Tool Testing (CFTT) www.nist.gov/itl/ssd/cs/cftt/cftt-projectoverview.cfm
Uwaga Obszary HPA i DCO wykorzystuje si do zmieniania widocznej pojemnoci dysku. Ich pierwotnym
przeznaczeniem byo umoliwienie producentom napdw i integratorom ustawiania liczby
dostpnych sektorw w dysku twardym. Jednak znajcy si na rzeczy specjalista moe to
wykorzysta do ukrycia danych na dysku poprzez zmian jego widocznej pojemnoci. Kr rne
opowieci o wykorzystywaniu tych metod do niecnych celw, ale s to bardzo rzadkie przypadki.
Niemniej jednak naley wiedzie, e istnieje taka moliwo.
Wicej informacji o HPA, DCO i nowszych technologiach mona znale w dokumentach
publikowanych przez komisj T13 Technical Committee.
Potrzebny jest duplikat danych z urzdzenia NAS lub SAN o podstawowym znaczeniu dla
dziaalnoci. Organizacja moe nie zezwoli zespoowi RI na odczenie jednostki dyskowej
od sieci, aby wykona duplikat oraz moe nie by moliwoci wykonania obrazu na ywo.
Obraz logiczny najczciej tworzy si w sytuacjach nietypowych. Gdy taka si zdarzy, naley
zapisa powody wykonania takiego obrazu do wgldu w przyszoci.
Jakich narzdzi i procesw naley uy do utworzenia obrazu logicznego? Podobnie jak
w przypadku tworzenia kompletnych duplikatw, konieczne jest udokumentowanie metadanych
plikw oraz zapisanie skrtw pozwalajcych zweryfikowa integralno informacji. Zarwno
program FTK Imager, jak i EnCase umoliwiaj tworzenie kontenerw dowodowych na pliki
logiczne. Dokumentuj metadane plikw i udostpniaj funkcje pozwalajce zapewni
integralno danych.
Co zrobi, gdy otrzyma si dane niespeniajce wymogw stawianych przez zesp RI? W naszej
pracy zdarzenia takie czsto maj miejsce administratorzy systemw przynosz dzienniki
w pamiciach USB, administratorzy maszyn wirtualnych dostarczaj pliki zwizane z maszynami
wirtualnymi (np. VMX, VMDK i VMSS), a administratorzy sieci podrzucaj nam na biurko po
12 GB przechwyconego ruchu sieciowego. W takich sytuacjach naley wszystko jak najdokadniej
udokumentowa i uywa danych tak, jakby zostay wykonane przez nasz zesp.
Integralno obrazu
Podczas tworzenia obrazu na potrzeby ledztwa kryptograficzne sumy kontrolne oblicza si z dwch
powodw. Po pierwsze, kiedy wykonywany i zapisywany jest obraz dysku odczonego od sieci
(statycznego), skrt pozwala wykaza, e obraz ten jest dokadn i prawdziw reprezentacj
oryginau. Po drugie, skrt umoliwia wykrycie ewentualnych modyfikacji wprowadzonych
w obrazie po jego wykonaniu. Podczas pracy z obrazami statycznymi sumy kontrolne su do tych
dwch celw. Jeli jednak obraz zosta wykonany w dziaajcym systemie, zawiera logiczn kopi
pliku albo orygina nie zosta zachowany z wanego powodu, skrt pozwala po prostu upewni si,
e integralno obrazu nie zostaa naruszona.
Uwaga Gdy dysk zawiera uszkodzone sektory, suma kontrolna za kadym razem moe by inna i zaley
od tego, w jaki sposb oprogramowanie ukadowe tego dysku zinterpretuje dane znajdujce si
na noniku magnetycznym. W takich sytuacjach bardzo wana jest dokadna dokumentacja
wystpujcych bdw. W przypadku uszkodzonych dyskw sumy kontrolne speniaj drug
z wymienionych wczeniej funkcji tzn. pozwalaj upewni si, e nic nie zostao zmienione
w samym obrazie.
Format ten zapisuje sum kontroln MD5 lub SHA1 dla kadego segmentu oraz dla caego obrazu.
Format AFF mona rozszerza, tzn. umoliwia zapisywanie dowolnych metadanych, np. dodatkowych
sum kontrolnych w pliku obrazu. Program EnCase firmy Guidane Software tworzy pliki E01
(na podstawie formatu plikw Expert Witness Andrew Rosena) zawierajce sumy kontrolne dla
kadych 64 sektorw i skrt MD5 dla caego surowego obrazu dysku. W obu przypadkach skrty
suce do weryfikacji s dostpne dla analityka z poziomu aplikacji uytej do utworzenia obrazu.
Skrty te powinny zosta opisane w dokumentacji.
Jeli format pliku nie umoliwia zapisania skrtw pozwalajcych zweryfikowa integralno
obrazu, analityk (lub osoba odpowiedzialna za tworzenie obrazw) musi zapisa je samodzielnie.
W przypadku surowych formatw obrazw zrobienie tego za pomoc pewnych narzdzi jest
bardzo atwe. Program FTK Imager firmy Access Data tworzy oprcz obrazu plik tekstowy
zawierajcy informacje o sprawie, noniku rdowym, dacie i godzinie oraz skrty. Program
DCFLdd generuje skrt z nonika rdowego podczas zapisywania obrazu i opcjonalnie
zapamituje te informacje w pliku tekstowym.
W obu przypadkach naley zadba, aby skrty zostay doczone do procesu obsugi materiau
dowodowego, raportw i innych dokumentw.
Uwaga W poprzednim wydaniu tej ksiki opisalimy dwa typy obrazw na potrzeby ledztwa.
Pierwszy to obraz ledczy bdcy duplikatem caego dysku lub partycji i stanowicy reprezentacj
jeden do jednego bajtw z oryginalnego nonika. Gdyby kto wygenerowa skrt z obrazu
ledczego i oryginalnego nonika, otrzymaby identyczne wyniki. Drugi typ to kwalifikowany obraz
ledczy bdcy obrazem caego dysku lub partycji z osadzonymi dodatkowymi danymi. Formaty
plikw generowane przez programy FTK i EnCase to kwalifikowane obrazy ledcze, poniewa zawieraj
dane nagwkowe i sumy kontrolne.
W INTERNECIE
Strona internetowa firmy www.tableau.com
Firma WiebeTech produkuje narzdzia umoliwiajce tworzenie obrazw dyskw SATA i PATA
poprzez zcza USB, Firewire i eSATA. Niektrzy nasi konsultanci zabieraj te urzdzenia ze sob,
poniewa s dobrze skonstruowane, atwo mieszcz si w nieduych walizkach i umoliwiaj szybkie
duplikowanie napdw przez zcze eSATA. Na rysunku 8.3 mona zobaczy urzdzenie Forensic
UltraDock v4 firmy WiebeTech podczone do dysku twardego.
W INTERNECIE
Strona internetowa firmy WiebeTech wiebetech.com
ROZDZIA 8. DUPLIKACJA DANYCH LEDCZYCH 195
Przedstawione przez nas dwa typy blokad to aktualnie najlepsze urzdzenia na rynku. Obie
firmy s bardzo aktywne w brany i przeprowadzaj wyczerpujce testy pozwalajce zapewni
niezawodno dziaania ich urzdze. Jak pisalimy wczeniej, najwiesze informacje o blokadach
zapisu mona znale na stronach NIST CFTT.
Ostrzeenie Tworzc obraz dysku statycznego lub korzystajc z jakichkolwiek dowodw, zawsze naley uywa
blokady zapisu, aby zabezpieczy si przed przypadkow modyfikacj danych. Nie myl, e Twj
system operacyjny jest dobrze wychowany i nie dokona adnych zmian w materiale dowodowym,
jeli mu nie kaesz. W rzeczywistoci zamontowanie dysku tylko w celu odczytu z niego danych
moe spowodowa aktualizacj struktur partycjonowania, odtworzenie dziennikw albo
napraw drobnych niespjnoci. Zawsze lepiej si zabezpieczy na wszelki wypadek.
W INTERNECIE
Strona narzdzia DCFLdd w portalu Sourceforge sourceforge.net/projects/dcfldd
Strona narzdzia DC3dd w portalu Sourceforge sourceforge.net/projects/dc3dd
W tym przykadzie obraz zapisalimy w pojedynczym pliku /mnt/sdb.dd, ale jeli trzeba,
mona podzieli ten obraz na kilka plikw za pomoc opcji ofs= i ofsz= . I tak opcja
ofs=/mnt/sdb.0000 ofsz=500M spowoduje utworzenie plikw o maksymalnym rozmiarze 500 MB,
o numerowanych nazwach zaczynajcych si od sdb.0000. Dziennik sesji zgodnie z ustawieniem
opcji hlog= zostaby zapisany w pliku /mnt/sdb.log. Natomiast opcja hash= oznacza, e ma zosta
obliczona suma kontrolna MD5.
Standardowo narzdzie DC3dd sprawdza rozmiar urzdzenia i wywietla na bieco procent
postpu wykonywania operacji. Dodatkowo program ten pokazuje, ile danych wczyta oraz
ile czasu mino od rozpoczcia procesu. Na rysunku 8.5 pokazano przykad dziaania
programu DC3dd.
Wiele dystrybucji systemu Linux i wersji systemu Apple OS X dla komputerw stacjonarnych
prbuje automatycznie montowa podczone do komputera noniki. Jeli wic nie korzystasz
z mostka uniemoliwiajcego zapis, musisz wyczy demona odpowiedzialnego za t
automatyczn funkcj. W internecie mona znale wiele poradnikw, jak to zrobi w rnych
dystrybucjach i wersjach systemu OS X. Oglnie rzecz biorc, polega to na zakoczeniu lub
wyczeniu demona monitorujcego zmiany sprztowe. W najnowszych wersjach systemu
OS X demon ten nazywa si diskarbitrationd.
198 INCYDENTY BEZPIECZESTWA
Oddanie kontroli nad wierszem polece przez program DC3dd oznacza, e obraz jest gotowy.
Nastpnie moesz skompletowa dokumentacj, posugujc si obliczon przez narzdzie sum
kontroln, i zabezpieczy dowody.
W INTERNECIE
AccessData www.accessdata.com/
ROZDZIA 8. DUPLIKACJA DANYCH LEDCZYCH 199
W INTERNECIE
Informacje o produktach EnCase firmy Guidance Software www.guidancesoftware.com/forensic.
Ostrzeenie Wykonywanie duplikatu dziaajcego systemu jest znacznie bardziej ryzykowne ni wykonywanie
obrazu statycznego. Podczas pracy dysk nie jest chroniony przed zapisem przez adne urzdzenie.
Ponadto dziaania s prowadzone na systemie uywanym w produkcji. Pamitaj, e zawsze
istnieje ryzyko znacznego obcienia systemu, a nawet wywoania jego awarii.
Inn potencjaln wad wykonywania obrazu dziaajcego systemu jest to, e nonik rdowy si
zmienia. Podczas tworzenia duplikatu zawarto nonika cay czas si zmienia. Ponadto w buforze
systemu operacyjnego mog znajdowa si pewne nieprzeniesione jeszcze na dysk dane. Brak
spjnoci odczytu informacji z dysku moe doprowadzi do tego, e duplikat bdzie czciowo
lub cakowicie bezuyteczny.
Podczas tworzenia obrazu dziaajcego systemu naley przedsiwzi specjalne rodki
ostronoci. Brak ochrony przed zapisem sprawia, e mona przez pomyk zapisa obraz na dysku
rdowym i zniszczy w ten sposb dowody. Ponadto naley starannie dobra oprogramowanie
i prawidowo si nim posuy. Nie powinno si niczego kopiowa ani instalowa na dysku rdowym
200 INCYDENTY BEZPIECZESTWA
Sprzt firmy Apple jest z reguy bardziej zintegrowany ni inne rodzaje komputerw. Komputery
z serii MacBook Air byy pierwszymi laptopami, w ktrych w 2010 roku uyto dyskw flash
ze zczem mSATA. W starszych wersjach wykorzystywano zcze tamowe ZIF. Jedne
i drugie mog sprawia trudnoci zespoom RI i grupom dochodzeniowym. W pierwszych
komputerach PowerBook z 1999 roku firma Apple wprowadzia obsug trybu dziaania
o nazwie Target Disk Mode. Po zresetowaniu systemu tryb ten wcza stan konfiguracyjny
sprawiajcy, e komputer zamienia si w drogi dysk zewntrzny. W trybie tym system mona
podczy do zcza FireWire (lub ThunderBold) innego komputera, aby korzysta z jego
dyskw. W tym momencie podejrzany komputer mona traktowa jak kady inny mostek
(z prawami odczytu i zapisu) do duplikacji. Aktualnie tylko jedna firma, Tableau LLC, oferuje
mostki FireWire z blokad zapisu.
ROZDZIA 8. DUPLIKACJA DANYCH LEDCZYCH 201
Jeli mamy peny dostp do macierzy RAID, powstaje pytanie, czy wykona obraz kadego
dysku osobno, czy sprbowa wykona obraz woluminu prezentowanego przez kontroler
RAID. Najczciej uruchamiamy system na zaufanym noniku (np. wasnym obrazie Linuksa)
i wykonujemy obrazy woluminw prezentowanych przez kontroler RAID. Oczywicie naley
wej do ustawie BIOS RAID i sprawdzi w konfiguracji, czy uwzgldniane s wszystkie dane
przechowywane na woluminach fizycznych. To troch uatwia wykonywanie analiz, poniewa
rekonstrukcja macierzy RAID nie zawsze jest atwa.
202 INCYDENTY BEZPIECZESTWA
I CO Z TEGO
W rozdziale tym opisalimy najczciej stosowane metody duplikowania danych na potrzeby
ledztwa. Dostpnych jest kilka komercyjnych i otwartych narzdzi o udowodnionej niezawodnoci
w wykrywaniu i duplikowaniu zawartoci dyskw twardych, nonikw pamici i innych przenonych
urzdze. Technologia cay czas si zmienia i pojawiaj si coraz to nowe metody czenia, ochrony
i duplikowania danych. Zanim uyje si nowego narzdzia lub metody, naley sprawdzi, czy zostay
dobrze przetestowane i czy kto inny ju ich uywa.
W fazie przygotowa przed wystpieniem incydentu naley wytypowa, jakie rodzaje magazynw
mona bdzie napotka w danej organizacji. Trzeba znale narzdzia umoliwiajce wykonanie
duplikatu zawartoci tych nonikw danych oraz powiczy wykonywanie zrzutw na mao wanym
sprzcie. Wiele sklepw sprzedajcych komputerowy sprzt ledczy dziaa bardzo efektywnie i potrafi
dostarczy towar w cigu jednego dnia od zoenia zamwienia, ale dziaanie pod presj jest zym
momentem na nauk obsugi nowego sprztu. Najlepiej wszystko mie gotowe zawczasu i by
przygotowanym prawie na wszystko.
PYTANIA
1. Na rynku pojawia si nowy produkt do duplikowania zawartoci dyskw twardych
i wykonywania obrazw o nazwie Cyber Imager Pro. Twj szef chce przetestowa ten
program, aby oceni jego przydatno w firmie do wykonywania duplikatw danych
na potrzeby ledztw. W jaki sposb ocenisz ten programu i jak stwierdzisz, czy nadaje si
do uytku?
2. Podczye dyski twarde z dowodami do systemu w celu wykonania ich obrazw.
Czy musisz uy blokady zapisu, jeli planujesz rozruch z pyty CS z systemem Linux?
Wyjanij swoj odpowied.
3. Powierzono Ci zadanie wybrania narzdzia do tworzenia obrazw zawartoci dyskw
twardych i opracowania standardowej procedury wykonywania tych obrazw.
Jakie czynniki wemiesz pod uwag i jakie kroki uwzgldnisz w swojej procedurze?
4. Prbujesz wykona obraz zawartoci dysku twardego, ale proces ulega awarii
w przypadkowych miejscach. Program do tworzenia obrazw informuje, e nie moe
odczyta danych ze rdowego dysku twardego. Jak rozwiesz ten problem?
ROZDZIA 9.
Dowody z sieci
204 INCYDENTY BEZPIECZESTWA
G
dy w 2000 roku ukazao si pierwsze wydanie tej ksiki, mao kto uwaa monitorowanie
sieci za wan cz dobrej strategii zabezpieczania informacji. Robiy to tylko organizacje,
w ktrych pracowali wysoko wykwalifikowani specjalici od systemu Unix, ktrzy tak dobrze
optymalizowali infrastruktur, e dziaaa prawie bezobsugowo. Dopiero potem jaki nudzcy si
administrator systemu, nie majc nic innego do roboty, montowa czujniki na kilku portach SPAN
przecznikw. Dzi wszystko to wyglda cakiem inaczej. Nastpiy tak due zmiany, e wiele firm,
ktrych akcjami mona obraca na giedzie, w caoci opiera si na monitorowaniu sieci i danych,
jakie mona dziki temu zdoby.
W tzw. tradycyjnym monitorowaniu sieci rozwizania implementuje si w odpowiedzi
na zapotrzebowanie. Dostpnych jest kilka rozwiza dla przedsibiorstw, ktre mona w razie
potrzeby rozszerza z kilku do setek czujnikw. W czasie ledztwa mona istniejc infrastruktur,
jeli organizacja tak posiada, wykorzysta do monitorowania punktw wyjciowych. Jeli jednak
zesp nie moe dodawa ani modyfikowa sygnatur na czujnikach w rozsdnym czasie albo musi
monitorowa wewntrzn podsie, moe by konieczne wdroenie wasnych czujnikw taktycznych.
Jeeli czonkowie Twojego zespou potrafi tworzy, testowa i interpretowa sygnatury sieciowe,
dane pozyskane z pomoc analizy szkodliwego oprogramowania i innych rde moesz wykorzysta
do wykrywania dodatkowych ladw szkodliwej dziaalnoci.
W rozdziale tym opisujemy sposoby tworzenia czujnikw na potrzeby ledztwa, informujemy,
jakie metody zbierania informacji s najbardziej przydatne zespoom RI, oraz pokazujemy,
jak interpretowa zgromadzone dane.
W INTERNECIE
Snort www.snort.org
Suricata www.openinfosecfoundation.org
Sourcefire www.sourcefire.com
RSA NetWitness www.emc.com/security/rsa-netwitness.htm
Jaka metoda przechwytywania danych bdzie najbardziej korzystna dla Twojego zespou?
Najlepiej mie moliwo gromadzenia danych na wszystkich czterech poziomach. Jeli masz
sieciowe wskaniki zagroenia opracowane na podstawie analizy szkodliwego programu, alerty
zdarzeniowe bd dostarcza Ci informacji na bieco, dziki czemu szybko wykryjesz inne
zainfekowane systemy w swojej sieci. Dane nagwkowe i kompletne pakiety mog pomc
w identyfikacji zakresu kradziey danych, wykryciu aktywnoci hakerw posugujcych si
interaktywn konsol oraz cisym monitorowaniu komunikacji midzy szkodliwym
oprogramowaniem a zdalnymi witrynami internetowymi. I w kocu, jeli dysponujesz bardzo
ma iloci informacji o zdarzeniu, to podejrzany ruch i dziwne transfery mog dostarczy
cennych danych o aktywnociach w sieci, ktrych w inny sposb nie daoby si wykry.
Monitorowanie zdarze
Monitorowanie sieci i zgaszanie alertw w chwili wykrycia okrelonych zdarze to jedna z technik
monitorowania najczciej stosowanych przez organizacje. Istnieje wiele darmowych i patnych
programw, za pomoc ktrych monitorowanie nawet caej organizacji jest atwe, przynajmniej
jeli chodzi o samo wdroenie rozwizania. Ten rodzaj monitorowania sieci bazuje na reguach
lub progach. Najprociej mwic, zdarzenia wskazuj, e czujnik wykry co interesujcego.
Tradycyjne zdarzenia s generowane przez systemy detekcji intruzw sieciowych (ang. network
intrusion detection systems NIDS), ale zdarzenia mog by te generowane przez programy
monitorujce wzorce i przepyw ruchu sieciowego.
206 INCYDENTY BEZPIECZESTWA
W INTERNECIE
Podrcznik uytkownika programu Snort manual.snort.org
Istnieje wiele wtyczek wyjciowych do programu Snort, a wybr opcji w pliku konfiguracyjnym
tego narzdzia w duym stopniu zaley od zaplanowanego sposobu obsugi informacji generowanych
przez czujniki. Dalej w tym rozdziale opisujemy kilka konsoli zarzdzania, ale najprostszy modu
wyjciowy nazywa si alert_fast. Umoliwia on atwe sprawdzenie, czy wybrane zestawy regu
dziaaj prawidowo, przez wysanie tekstu ASCII do pliku za pomoc konsoli czujnika. W tym
przykadzie plik konfiguracyjny programu Snort zawiera acuch output alert_fast alerts.txt.
Pokazany powyej wskanik generuje wpis w module wyjciowym alert_fast co minut dla kadego
rdowego adresu IP. Oto zawarto pliku alerts.txt:
11/24-20:16:41.515991 [**] [1:1000001:1] Attempted SSH connection to web server
[**] [Classification: Misc Attack] [Priority: 2] {TCP}
192.168.2.104:56387 -> 192.168.2.78:22
alert tcp $EXTERNAL_NET 443 -> $HOME_NET any (msg:"ET TROJAN FAKE AOL SSL Cert
APT1"; flow:established,from_server; content:"|7c a2 74 d0 fb c3 d1 54 b3
d1 a3 00 62 e3 7e f6|"; content:"|55 04 03|"; content:"|0c|mail.aol.com";
distance:1; within:13; reference:url,www.mandiant.com/apt1;
classtype:trojan-activity; sid:2016469; rev:3;)
Czego szuka ten wskanik? Z informacji zawartych w raporcie APT1 czytamy, e certyfikat
mona zidentyfikowa po numerze seryjnym, datach wanoci, nazwie wystawcy i jeszcze kilku
innych cechach. Specjalici z Emerging Threats postanowili wykorzysta kombinacj numeru
seryjnego certyfikatu i nazwy wystawcy. Pierwszy acuch treci, zaczynajcy si od 7c a2, to
numer seryjny certyfikatu. acuchy drugi i trzeci identyfikuj trzy bajty 0x55, 0x04 oraz 0x03,
po ktrych znajduj si (na pozycjach od 1. do 13. bajta) bajt 0x0c i acuch ASCII mail.aol.com.
Razem acuchy te identyfikuj wystawc certyfikatu. Jest to bardzo solidny wskanik z niewielkim
ryzykiem zgaszania faszywych alarmw.
Ten 142-bajtowy pakiet reprezentuje danie HTTP GET wysane z systemu o adresie IP
192.168.2.40. Zawiera ramk Ethernet, nagwek IPv4, nagwek TCP oraz tre waciw.
Nie opisujemy szczegw budowy pakietw sieciowych, mimo e to bardzo ciekawe zagadnienie.
Jeli interesuje Ci ten temat, zajrzyj do ksiki W. Richarda Stevensa pt. TCP/IP Illustrated, Vol. 1:
The Protocols. Poza tym w internecie jest mnstwo miejsc, w ktrych rwnie moesz poszerzy
swoj wiedz w tym zakresie.
Przechwytywanie nagwkw polega po prostu na przejmowaniu tylko czci pakietw.
Celem tej czynnoci jest zebranie nagwkw Ethernet, IP oraz TCP lub UDP i pobranie tylko
niewielkiej iloci danych uytkownika. Robi si to poprzez ograniczenie iloci pobieranych danych
do pierwszych 64 bajtw kadego pakietu. Do tej pory nagwkw pakietw potrzebowalimy
tylko do narzdzi do analizy statystycznej oraz gdy pracowalimy na zlecenie agencji pilnowania
porzdku publicznego. Przechwytywanie nagwkw jest pod wieloma wzgldami rwnowane
z posugiwaniem si tradycyjnymi metodami trap and trace i w niektrych krgach pojcia te s
nawet uywane zamiennie. Jeli kiedykolwiek bdziesz chcia przechwytywa dane uytkownikw,
pamitaj, aby najpierw powiadomi swojego radc prawnego. Prawnicy bardzo nie lubi niespodzianek.
Modelowanie statystyczne
Monitorowanie statystyczne koncentruje si na oglnej obserwacji pocze przechodzcych
przez sie. Modelowanie ruchu sieciowego jest najbardziej przydatne na tych etapach ledztwa,
gdy punkty kocowe nie s cakiem widoczne. Sytuacja taka zdarza si, gdy co cay czas si dzieje
i nie wiadomo, dlaczego. Aby wygenerowa uyteczne dane, wikszo programw przechwytuje
lub przetwarza nagwki protokow przez pewien czas, a nastpnie przedstawia informacje
na podstawie interpretacji czasu i struktury pakietw.
Wikszo organizacji generuje dane do analizy w postaci pakietw NetFlow. Dane tego typu
mona uzyska z urzdze sieciowych CISCO i innych mogcych uruchomi odpowiedniego
agenta. Ten rodzaj strumienia danych zawiera licznik bajtw i pakietw dla kadego przepywu
lub sesji, zaobserwowanych przez urzdzenie. Ewentualnie mona wykona zrzut PCAP plikw
i rcznie przepuci je przez sond NetFlow. W obu przypadkach istnieje kilka moliwoci analizy
ROZDZIA 9. DOWODY Z SIECI 209
W INTERNECIE
argus, system do analizy ruchu sieciowego www.qosient.com/argus/
flow-tools code.google.com/p/flow-tools/
Gdy informacje s dostpne, szukamy w nich wzorcw za pomoc narzdzi flow-tools lub
argus. Generalnie, kiedy wykonujemy analiz pakietw NetFlow, to albo szukamy odpowiedzi
na bardzo konkretne pytanie (np. czy w czasie trwania ataku wycieka ze rodowiska dua ilo
danych), albo szukamy ladw komunikacji charakterystycznych dla czenia si z serwisem
bazowym lub innych szkodliwych rodzajw komunikacji (skanowanie portw, podejrzany ruch
przepywajcy w kierunku odwrotnym ni spodziewany itd.).
W poniszym przykadzie mamy kompletny zrzut krtkiej sesji o czasie trwania tylko omiu
minut. Zrzut ten zosta wykonany przez narzdzie tcpdump w celu monitorowania podsieci
zawierajcej kilka serwerw sieciowych. Przeanalizujemy otrzymany plik PCAP, aby dowiedzie
si, czy na serwerach nie ma jakiej podejrzanej aktywnoci. Jest to troch wydumany przykad,
ale statystyki, ktre pokazujemy, mona atwo wykry innymi sposobami szczeglnie wtedy,
kiedy w sieci s dobre reguy wyjciowe.
Aby przekonwertowa plik PCAP na plik danych odpowiedni dla klientw danych argus,
wykonujemy nastpujce polecenie:
argus -mAJRU 512 -r serverFarm_1.pcap -w serverFarm_1.pcap.arg3
Podczas przetwarzania danych staramy si zatrzyma jak najwicej pl, aby zredukowa ryzyko
powtrnego przetworzenia informacji. Powysze polecenie zachowuje adresy MAC (m), metryki
bajtw aplikacji (A), dane o wydajnoci pakietw (J), czasy odpowiedzi (R) oraz 512 bajtw danych
aplikacji (U). Narzdzie argus odczytuje (-r) standardowy plik w formacie PCAP i zwraca wyniki (w)
do formatu czytelnego dla pakietu narzdzi argus. Plik ten jest nastpnie gotowy do dalszej analizy.
Przyjrzymy si danym z podejrzanego ruchu wyjciowego, szczeglnie HTTP, poniewa wiemy,
e niektre ataki polegaj na pobraniu drugiej czci kodu z serwisw zewntrznych:
ragraph dbytes dport -M 1s -fill -stack -r serverFarm_1.pcap.arg3 - tcp and
dst bytes gt 68 host server1
Polecenie to (wykorzystujce plik binarny ragraph narzdzia argus) generuje wykres supkowy
przedstawiajcy liczb bajtw docelowych wg portu docelowego dla caego ruchu TCP wychodzcego
z hosta o nazwie server1, ktrych docelowy rozmiar przekracza 68 bajtw. Wyniki pokazano na
rysunku 9.1. Jak wida, jedyny ruch przekraczajcy rozmiar 68 odbywa si przez protokoy HTTP
i HTTPS. O godzinie 15:34 zanotowano nagy wzrost aktywnoci dochodzcy do 3,8 Mbps.
Minuta ta moe by dobrym punktem do rozpoczcia analizy na serwerze.
210 INCYDENTY BEZPIECZESTWA
Czy ten nagy wzrost pasuje do jakiego nawracajcego wzorca? Wykonamy polecenie ragraph
jeszcze raz, ale dodamy do niego opcj -log, aby mona byo przejrze dane utracone z powodu
automatycznego skalowania. Na rysunku 9.2 przedstawiono wersj wykresu z osi y w zmienionej skali.
Nie wyglda na to, aby ten rodzaj komunikacji odbywa si okresowo (przynajmniej nie w krtkim
okresie przechwyconym w tym pliku PCAP), ale teraz widzimy, e wystpi 75-sekundowy transfer,
ktry rozpocz si okoo godziny 15:29:25. To rwnie moe by warte uwagi, jeli serwer nie
powinien nawizywa pocze HTTPS.
Wybr sprztu
Do wyboru s dwie moliwoci kupno gotowego systemu lub budowa wasnego monitora sieci.
Najwaniejsze jest to, aby system mia wystarczajco du moc, co pozwoli mu wykonywa swoje
funkcje. Zbieranie i zapisywanie wszystkich pakietw przechodzcych przez szybkie cza moe
by bardzo trudne. Organizacje posiadajce szybkie cza powinny zaopatrzy si w wysokiej klasy
sprzt do monitorowania sieci.
212 INCYDENTY BEZPIECZESTWA
Co kupi
Wiele organizacji jest skazanych na rozwizania wasnej roboty. Pod niektrymi wzgldami
s one nawet lepsze od gotowych rozwiza, poniewa mona je dokadnie dostosowa do swoich
potrzeb. Zawsze naley wybiera stabiln i solidn platform, ktrej jedynym zadaniem bdzie
inwigilowanie sieci. Nasz system monitoringu skada si z serwerw 1U duych producentw,
na ktrych moemy polega w razie awarii sprztu. Zazwyczaj zalecamy dwie gotowe dystrybucje,
oparte na systemie operacyjnym GNU/Linux. Kady wie, e stabilna platforma uniksowa bije pod
wzgldem wydajnoci wszystkie inne platformy. Do niedawna najbardziej efektywne rodowisko
do przechwytywania danych zapewnia system FreeBSD. Jednak postpy, jakie poczynia grupa
NTOP w pracach nad gniazdem PF_RING, sprawiy, e postanowilimy w naszej platformie zastpi
jdro FreeBSD jdrem Linuksa. Aby korzysta z nowych moliwoci, trzeba umie utrzymywa
moduy jdra dla uywanej przez siebie wersji Linuksa, a programici jdra Linuksa przyznaj,
e PF_RING NTOP jest lepszy od ich interfejsu AF_PACKET i wciel go do jdra.
W INTERNECIE
Porwnywanie i ulepszanie narzdzi do przechwytywania pakietw zbudowanych z oglnodostpnego
sprztu (2010) conferences.sigcomm.org/imc/2010/papers/p206.pdf
Przechwytywanie pakietw w rodowiskach Ethernet 10-Gigabit przy uyciu oglnodostpnego sprztu (2007)
www.net.t-labs.tu-berlin.de/papers/SWF-PCCH10GEE-07.pdf
Gdy zaczynamy ledztwo, pocztkowo dziaamy taktycznie i nie mamy dostpu do dugo
dziaajcych systemw monitoringu. W takiej sytuacji jest wikszo organizacji, ktre zostaj
powiadomione o wystpieniu wamania. Kiedy trzeba szybko wdroy technologi monitorowania,
nie ma nic lepszego ni podsuch sieciowy (albo solidny port SPAN) poczony z czujnikiem Snort
przez narzdzie tcpdump. Z drugiej strony, jeeli masz rodki na zainstalowanie rozwizania
monitorujcego przed wystpieniem incydentu, istnieje kilka rozwiza czcych styl alarmowania
Snort z przechowywaniem informacji.
W 2013 roku dostpne byy dwa pakiety, ktre zawsze polecalimy organizacjom chccym wdroy
wasny system monitoringu. Pierwszy z nich to urzdzenie firmy Solera Networks o nazwie DeepSea,
a drugi to platforma NetWitness firmy RSA. Jeli przyzwyczaie si do prostoty rozwizania Snort,
ROZDZIA 9. DOWODY Z SIECI 213
W INTERNECIE
Strona internetowa Security Onion www.securityonion.net
W INTERNECIE
Wprowadzenie do Security Onion code.google.com/p/security-onion/wiki/IntroductionToSecurityOnion
W rozdziale tym skupiamy si tylko na wybranym podzbiorze funkcji platformy SO. Uywane
przez nas narzdzia s instalowane wraz z bardzo przydatnymi aplikacjami do zarzdzania
czujnikami i alarmami. Zalecamy dokadnie zapoznanie si z wprowadzeniem do Security Onion
oraz poeksperymentowanie z tym systemem, zanim wdroy si go w organizacji.
Ponadto mona tworzy wasne dekodery w jzykach C i LUA. Ju samo to sprawia, e narzdzie
to jest niezwykle przydatne dla specjalistw, ktrzy mog mie do czynienia ze szkodliwymi
programami potraficymi wykorzysta sie. Jeli jednak wolisz uy innego narzdzia, nic nie stoi
na przeszkodzie. Zawsze zachcamy do poznawania wielu rnych narzdzi o podobnym
przeznaczeniu. Daje to niezaleno i pozwala zweryfikowa poprawno procesw. Jeeli dane
wymagaj dekodowania lub interpretacji, moesz je przepuci przez kilka rnych programw
lub procesw, aby sprawdzi, czy wyniki za kadym razem bd takie same. Do czsto zdarza si,
e jakie narzdzie pozornie dziaa bez zarzutw, a w rzeczywistoci pomija wane informacje.
Weryfikacja procesw jest szczeglnie wana podczas pracy z wasnymi narzdziami i filtrami.
Analizy danych sieciowych wykonywane podczas ledztwa z reguy staramy si ogranicza,
tzn. jeli nie mamy wanych powodw, nie prbujemy znajdowa nowych zagroe w sieciowej
gmatwaninie danych. Jak napisalimy wczeniej, w analizie danych skupiamy si na tropach
i szukaniu odpowiedzi na postawione uprzednio pytania. Nieczsto mona nas przyapa
na analizowaniu piciu terabajtw nieprzefiltrowanych danych sieciowych z gwnego cza
internetowego firmy albo przeszukiwaniu zeszorocznych rekordw DNS w celu wykrycia
wzorcw to s zadania raczej dla dziau bezpieczestwa IT albo badawczego. W czasie
incydentu pali si budynek, w ktrym s ludzie, dlatego trzeba bardzo si skupi.
Na podstawie tych spostrzee sporzdzilimy dwa scenariusze, ktre pomog Ci bliej pozna
metody przegldania danych sieciowych. Jako e chcemy nauczy Ci samodzielnego wykonywania
analiz, na stronie internetowej tej ksiki zamiecilimy pliki zawierajce zrzut pakietw sieciowych.
Scenariusze s oparte na prawdziwych zdarzeniach nie s to tylko eksperymenty. Jeli kto
korzysta z naszych usug, moe pomyle, e opisalimy wanie wydarzenia z jego firmy,
ale hakerzy stosuj podobne metody w wielu przypadkach. Innymi sowy, s to bardzo typowe
i powszechnie wystpujce przykady atakw.
Pierwszy scenariusz dotyczy prostej kradziey danych haker kompresuje dane do formatu
RAR i wysya je za pomoc FTP do serwera zewntrznego. Drugi scenariusz dotyczy konsoli
sieciowej napisanej w jzyku PHP, ktr haker zainstalowa na serwerze sieciowym w strefie
zdemilitaryzowanej (DMZ) i ktr wykorzysta do przeprowadzenia rekonesansu w sieci.
Dla uproszczenia zakadamy, e zaatakowane jednostki miay zaimplementowane rozwizania
do kompletnego monitorowania sieci oraz e mamy dostp do ich danych.
Skoro mowa o danych, pewnie zastanawiasz si, jak technik przechwytywania danych
sieciowych zastosujemy. W czasie incydentu dane sieciowe najczciej pozyskujemy w formie
plikw z przechwyconymi pakietami (PCAP), ktre eksportujemy z narzdzia monitorujcego.
Plik z przechwyconymi pakietami, tzw. PCAP, to w istocie standardowy format plikw do
przechowywania przechwyconych danych sieciowych. Format ten obsuguj prawie wszystkie
narzdzia sieciowe przetwarzajce takie dane. A niektre z nich dodatkowo odczytuj take wiele
innych formatw. Niezalenie od tego, czy tworzysz zrzuty samodzielnie, czy otrzymujesz je
od innego zespou, zalecamy posugiwanie si formatem PCAP, ktry jest powszechnie znany.
Tyle tytuem wstpu. Teraz moemy przej do szczegowego opisu pierwszego z naszych
scenariuszy, dotyczcego kradziey danych.
ROZDZIA 9. DOWODY Z SIECI 217
Kradzie danych
Jest ciemna i burzowa noc 3 grudnia 2013 roku. W toku ledztwa odkrywasz, e dwa dni wczeniej
haker wama si do komputera uytkownika oraz wykona w nim pliki rar.exe i ftp.exe, kady
jeden raz. RAR to program do archiwizacji danych czsto wykorzystywany przez wielu hakerw
do czenia i kompresowania plikw, ktre chc ukra, w jeden plik. Pojedynczy skompresowany
plik o wiele atwiej przesa poza zaatakowan sie ni wiele mniejszych plikw. Program fpt.exe
to klient FTP sucy do pobierania i wysyania plikw na serwer FTP. W tym przypadku dowody
znalezione na hocie nie pozwalaj stwierdzi, w jakim dokadnie celu zostay wykorzystane te
dwa programy wykryto tylko fakt ich uruchomienia. Dziki rozmowom przeprowadzonym
z przedstawicielami firmy wiadomo jednak, e taka aktywno nie jest norm w tym systemie.
Kierownictwo firmy bardzo chce si dowiedzie, co si wydarzyo, a skpa ilo szczegw
sprawia, e pyta jest wicej ni odpowiedzi. Cho scenariusz ten pasuje do typowego wzorca
kradziey danych, naley sprawdzi, czy rzeczywicie do tego doszo, a take zbada, co ewentualnie
skradziono i gdzie to wysano. Na szczcie w organizacji przechowuje si kompletne zrzuty ruchu
sieciowego z trzech ostatnich dni. Za ich pomoc powinno si uda rozwiza zagadk. Na niektre
pytania chyba uda si odpowiedzie po analizie nagwkw lub danych NetFlow, cho pena tre
z pewnoci pozwoli lepiej zorientowa si w sytuacji. Zobaczmy wic, do czego mog si przyda
przechwycone dane sieciowe.
Pierwsz nasz czynnoci bdzie znalezienie sesji FTP. Wiemy, e zosta uruchomiony program
ftp.exe, co sugeruje, e haker mg przesa dane za pomoc klienta FTP. Dowodem na to by plik
pobierany z wyprzedzeniem z systemu Windows, wskazujcy na jednorazowe uruchomienie programu,
wic dodatkowo wiemy, kiedy dokadnie to miao miejsce 1 grudnia 2013 roku o godzinie 00:57
UTC. Ewentualnie moglibymy w dziennikach DHCP sprawdzi adres IP systemu, ale nie jest to
konieczne, poniewa znamy protok (FTP) i wiemy, kiedy dokadnie doszo do zdarzenia. Prac
zaczniemy wic od poszukania w przechwyconych danych sieciowych sesji FTP, ktre miay miejsce
interesujcego nas dnia. System zwraca list 73 sesji, ale tylko dwie z nich zdarzyy si w pobliu daty
i godziny, kiedy uruchomiono program ftp.exe. W obu tych sesjach wystpuje ten sam zewntrzny
adres IP, cho poczenia nawizano z dwch rnych wewntrznych adresw IP. Jedna z sesji miaa
miejsce dokadnie w czasie wskazywanym w dowodach, a druga okoo 15 minut wczeniej. Jako e obie
sesje obejmuj komunikacj z tym samym zewntrznym adresem IP, postanawiamy je przeanalizowa.
Eksportujemy je do plikw w formacie PCAP, ktry jest dobrze obsugiwany przez wszystkie
najwaniejsze narzdzia do analizy ruchu sieciowego. Nastpnie przechodzimy do analizy.
Wykorzystamy program Wireshark. Jest to jedno z najpopularniejszych narzdzi do analizy
pakietw sieciowych. Aplikacja ta ma graficzny interfejs uytkownika, obsuguje setki protokow
sieciowych oraz dziaa we wszystkich najwaniejszych systemach operacyjnych, a wic takich jak
Linux, Windows, BSD i OS X. Ponadto wiele funkcji programu jest te dostpnych w postaci
polece wiersza polece.
W INTERNECIE
Strona internetowa programu Wireshark www.wireshark.org
218 INCYDENTY BEZPIECZESTWA
Jako e pierwszy trop dotyczy drugiej sesji, analiz rozpoczniemy wanie od niej. Pierwsza
sesja wydaje si powizana ze zdarzeniem, ale najpierw powinno si dokoczy badanie pierwszego
tropu, a dopiero potem zainwestowa czas i wysiek w analiz drugiego.
Szybkim sposobem na zbadanie, co si wydarzyo w pierwszej sesji, jest otwarcie pliku PCAP
w programie Wireshark, wczenie narzdzia Statistics/Conversations (statystyki/komunikacja)
oraz przejcie na kart TCP. Na rysunku 9.3 widoczne s obie sesje z tym samym adresem IP.
W jednej sesji nastpio poczenie z portem docelowym ftp, a w drugiej ftp-data. To zgadza
si z sesj FTP, w ktrej doszo do transferu pliku, poniewa FTP wykorzystuje dwa porty port 21. do
przekazywania polece ftp i port 20. do przesyania danych. Najatwiejszym sposobem na dowiedzenie si,
jakie polecenia FTP zostay wykonane, jest kliknicie komunikacji, w ktrej nastpio poczenie
ROZDZIA 9. DOWODY Z SIECI 219
z portem ftp, a nastpnie kliknicie przycisku Follow Stream (zbadaj strumie), co pokazano na
rysunku 9.4. Program Wireshark przeanalizuje pakiety wchodzce w skad komunikacji, wcznie
z uporzdkowaniem i obsug retransmisji, i wywietli wynik w oknie. W tym przypadku widzimy,
e polecenia FTP dotycz logowania za pomoc nazwy uytkownika frank oraz przesania pliku
o rozmiarze 608 414 bajtw o nazwie edi-source.bin. Za pomoc przycisku Save As (zapisz jako)
mona zapisa te polecenia w pliku.
Uwaga Zbienoci, na ktre zwracamy uwag, mog wydawa si oczywiste i mao pomocne,
ale z dowiadczenia wiemy, e wszelkie niespjnoci i nieoczekiwane wyniki oznaczaj luki
informacyjne, ktre naley uzupeni, przeprowadzajc dodatkowe czynnoci ledcze. Czasami jest
za mao materiau dowodowego, aby wyjani jaki brak zbienoci. W takich przypadkach naley
zdawa sobie spraw, e nasze wnioski mog by nie do koca prawidowe. Im wicej niewyjanionych
niespjnoci i nieoczekiwanych wynikw, tym mniej pewne s nasze konkluzje.
Niektre nazwy plikw pewnie od razu rozpoznasz, np. 127.0.0.1.cachedump to plik narzdzia
do wykonywania zrzutw skrtw hase w systemie Windows o nazwie fgdump. Wystarczy wpisa
nazwy tych plikw do dowolnej wyszukiwarki internetowej, aby dowiedzie si, e wszystkie nale
do tego narzdzia. Hakerzy posuguj si nim, gdy chc wykra z systemu Windows skrty hase,
ktre nastpnie ami w celu zdobycia rzeczywistych hase. Jeeli administrator niedawno logowa
si w systemie, skrt jego hasa moe by ju rozszyfrowany. Niestety plik RAR jest chroniony
hasem i nie udao si nam na razie wypakowa jego zawartoci. Gdybymy zdoali zama to haso
lub zdoby haso drugiego archiwum, to jest spora szansa, e zadziaaoby i w tym przypadku.
W kadym razie dowody ewidentnie wskazuj, e mamy do czynienia ze szkodliw dziaalnoci
oraz e ta sesja ma zwizek z t, ktr przeanalizowalimy wczeniej. Czas na podsumowanie
informacji zdobytych w drodze analizy obu sesji i zastanowienie si, co robi dalej.
Odkrylimy, e w obu sesjach przesyane byy pliki RAR chronione hasem. Nadano im nazwy wg
jednego wzoru oraz wysano je pod ten sam adres IP. Wszystko to wskazuje na zwizek midzy tymi
zdarzeniami. Na podstawie nazw plikw znajdujcych si w obu archiwach RAR nabralimy podejrze,
e jedno zawierao kod rdowy, a drugie skrty hase pobrane z systemu Windows. W celu
dokadnego zbadania zawartoci plikw RAR konieczne jest przeprowadzenie dodatkowej analizy, aby
znale polecenia RAR lub zama zabezpieczajce je haso. Ponadto trzeba ustali, dlaczego pierwsza
sesja nie zostaa wykryta przez hostowe narzdzie inspekcyjne powinnimy wykry lady wykonania
klientw RAR i FTP. Odpowiedzi na te pytania mog przyczyni si do dalszych odkry na temat
sposobu dziaania hakera oraz dostarczy lepszych wskanikw zagroenia na potrzeby ledztwa.
Na tym koczymy opis pierwszego scenariusza. Cho pewne pytania pozostay bez odpowiedzi,
np. jakie jest haso do archiww RAR, przejdziemy ju do drugiego scenariusza, w ktrym zmierzymy
si z problemem rekonesansu prowadzonego przez hakera przy uyciu konsoli sieciowej.
atak typu SQL injection, chocia nie ma pewnoci, czy udany. Postanawiamy przyjrze si danym
przechwyconym z sieci, aby dowiedzie si, co si stao. Specjalici, ktrzy zaimplementowali
system przechowywania caego ruchu po poprzednim incydencie, dostarczaj nam plik PCAP
zawierajcy cay ruch, jaki mia miejsce midzy serwerem sieciowym DMZ i zidentyfikowanym
przez nas zewntrznym adresem IP.
Uwaga Przykad ten pokazuje te, jak wane jest szybkie reagowanie na alarmy. W scenariuszu tym specjalici
zaimplementowali system przechowywania caego ruchu po lekcji, jak otrzymali w czasie wczeniejszego
incydentu. Oczywicie moliwoci przechowywania danych nie s nieskoczone. W przykadzie tym
zidentyfikowalimy i zapisalimy sesje, zanim system zbierajcy dane usun dane z bufora.
Uwaga Co by byo, gdyby ledztwo byo prowadzone z drugiej strony poczenia? Jak dostalibymy si
do pliku certyfikatu SSL ze zdalnego serwera? W takim przypadku wszystko zaley od czynnika
ludzkiego. Istnieje spora szansa, e serwer nie naley do adnego zoczycy. Hakerzy czsto
przejmuj serwery hostingowe lub wynajmuj serwery wirtualne przy uyciu skradzionych kart
patniczych. Czsto prawdziwy waciciel lub firma hostingowa chtnie pomagaj, kiedy
dowiaduj si, e z ich systemw kto wykonuje podejrzane czynnoci. W takich przypadkach
czasami udaje si skontaktowa z wacicielem podsieci i wyjani mu problem. Mona te
zaproponowa przekazanie cennych informacji, ktre pomog mu uchroni si przed podobnymi
atakami w przyszoci.
Kliknij przycisk Edit (edytuj) znajdujcy si obok napisu RSA keys list (lista kluczy RSA).
W oknie, ktre zostanie otwarte, moesz doda nowy klucz. Wprowad adres IP serwera, port
(443) oraz protok (http), a nastpnie znajd plik klucza. Jeli klucz jest chroniony hasem, wpisz
haso w przeznaczonym na to polu tekstowym. Nastpnie kliknij przycisk OK, aby zamkn okna
konfiguracyjne. Program Wireshark automatycznie zastosuje klucz, wic jeli wprowadzisz
prawidowe informacje, od razu ujrzysz rozszyfrowan sesj, co pokazano na rysunku 9.10.
Program Wireshark domylnie pokazuje odtworzone i rozszyfrowane dane SSL na dodatkowej
karcie w okienku Packet Bytes (bajty pakietw) o nazwie Decrypted SSL data (rozszyfrowane
dane SSL). Karta ta nie jest wywietlana dla kadej ramki, poniewa program odtwarza po kilka
powizanych ze sob ramek i wywietla t kart dla ostatniej z nich.
Dysponujc rozszyfrowanymi danymi sesji w postaci czystego tekstu, mona rozpocz analiz
danych przesyanych za pomoc polece POST. Na rysunku 9.11 pokazano zawarto pakietu
obejmujc zakodowany acuch URL. Od razu zauwaamy, e wikszo da POST do strony
login.php zawiera acuch okrelajcy aplikacj uytkownika z tekstem sqlmap/1.0-dev.
Sqlmap to narzdzie suce do wyszukiwania i wykorzystywania luk w stronach internetowych
pozwalajcych na przeprowadzenie ataku typu SQL injection.
W INTERNECIE
Strona internetowa narzdzia Sqlmap sqlmap.org
Cho nie masz pewnoci, e narzdzie sqlmap rzeczywicie zostao uyte, poniewa acuch
okrelajcy nazw aplikacji uytkownika mona atwo podrobi, jednak odkrycie to jest zbiene
z dotychczas posiadanymi tropami. Postanawiasz wic przyjrze si kodowi rdowemu strony
login.php, w ktrym odkrywasz, e przyjmuje ona parametry POST bezporednio do zapytania SQL
to powane zagroenie bezpieczestwa i prawdopodobna przyczyna tego incydentu. Po duej
liczbie da do strony login.php nastpuj sporadyczne dania do strony tmpbkxcn.php.
Podejrzewasz, e moe to by konsola sieciowa, poniewa w dziennikach serwera Apache
widziae dania GET do tej strony zawierajce napis cmd=.
ROZDZIA 9. DOWODY Z SIECI 227
dir /s c:\,
unzip nmap-6.40-win32.zip,
113.bat.
Wiesz, e wykonanie tych polece udao si, poniewa w pliku z danymi PCAP znajduje si
wynik kadego z nich. Wikszo tych polece wskazuje na to, e haker prowadzi dziaania
rozpoznawcze. Jednak dwa z nich zmodyfikoway konta uytkownikw na serwerze sieciowym:
net user backup secret /add
net localgroup Administrators backup /add
W INTERNECIE
wiki.wireshark.org/Tools
Chcielibymy przedstawi jeszcze jedno takie narzdzie, ktrego brakuje na wymienionej licie,
a ktre czsto bardzo si nam przydaje. Jest to program o nazwie NetWitness Investigator. Cho
z nazwy przypomina platform NetWitness firmy RSA, Investigator to samodzielne narzdzie do
analizy ruchu sieciowego, ktre dodatkowo umoliwia bezporednie przechwytywanie danych
sieciowych. NetWitness Investigator to darmowy program, cho aby z niego korzysta, trzeba si
zarejestrowa. Doczono do niego niewielki zrzut sesji oraz obszern dokumentacj, ktr mona
otworzy, klikajc pozycj menu Help/Help Documentation (pomoc/dokumentacja).
W INTERNECIE
www.emc.com/security/rsa-netwitness.htm#!freeware
230 INCYDENTY BEZPIECZESTWA
Uwaga Wspominalimy o tym ju kilka razy w tym rozdziale, ale przypominamy, e dzienniki zbierane podczas
ledztwa powinno si traktowa jak dowody i odpowiednio dokumentowa w ramach acucha
dowodowego. Gdy czujniki sieciowe przechwyc ruch, naley wyeksportowa do pliku PCAP dane
przechwycone w czasie trwania incydentu, zarejestrowa je jako dowody, a nastpnie przeanalizowa.
232 INCYDENTY BEZPIECZESTWA
Cho wszystkie te rda informacji sieciowych mog zawiera cenne wskazwki, czsto
dostanie si do kadego z nich moe by trudne. Dzienniki ze rde sieciowych s przechowywane
w wielu formatach, mog pochodzi z rnych systemw operacyjnych, mog wymaga specjalnego
oprogramowania do pobrania i obrbki, bywaj rozrzucone po caym wiecie oraz czasami zawieraj
niedokadne znaczniki czasu. ledczy musi wszystkie je znale i skorelowa ze sob. Zdobywanie
dziennikw z rnych miejsc wiata i systemw, przechowywanie ich w standardowy sposb oraz
rekonstruowanie na ich podstawie zdarze to czasochonne i wymagajce duo pracy zajcie. Poza
tym czsto jest tak, e nawet wszystkie dzienniki i tak nie daj penego obrazu sytuacji. Dlatego
wiele organizacji prowadzi inwigilacj swoich sieci, w sposb opisany wczeniej w tym rozdziale,
aby w razie potrzeby dysponowa wiksz iloci informacji.
I CO Z TEGO
Poleganie wycznie na metodach hostowych w celu pozyskiwania i analizy danych czsto jest
niewystarczajce do tego, by wysnu ostateczne wnioski. Ponadto, jeli na poparcie odkry na
hostach mamy informacje z sieci, nasze konkluzje bd bardziej wiarygodne. Bez czujnikw
sieciowych i sond NetFlow dziaania zaradcze mog zakoczy si fiaskiem. S to podstawowe
narzdzia pozwalajce sprawdzi, czy haker zosta skutecznie wyrugowany z naszej sieci. Zesp RI
powinien pozna te narzdzia i wiedzie, jakiego typu ruch jest normalny dla danej sieci. Dziki
temu, gdy nadejdzie pora, bdzie atwiej zidentyfikowa zagroenia. W prawie kadym ledztwie,
w ktrym dysponowalimy czujnikami, udawao nam si bardziej dogbnie zrozumie istot
problemu.
PYTANIA
1. Jakie pytania naley zada pracownikom z dziaw IT i sieciowego przy projektowaniu
architektury nowego systemu do monitorowania sieci? Jak mona pomc w zapewnieniu
kompletnej widocznoci ruchu wychodzcego z sieci?
2. W jaki sposb przez prowadzenie statystycznego monitorowania sieci mona wykry
podejrzane rodzaje aktywnoci, takie jak:
a) instalacja konia trojaskiego podrzucajcego pliki;
b) szkodliwe oprogramowanie pobierajce polecenia od zdalnej witryny;
c) potencjalna kradzie danych.
3. Co to jest doskonae utajnienie przekazywania i jaki ma wpyw na deszyfrowanie ruchu SSL?
Jak mona rozszyfrowa ruch SSL zaszyfrowany przy uyciu algorytmu utajnionego
przekazywania?
4. Jak mona szybko sprawdzi, czy w duym pliku PCAP zawierajcym tysice sesji znajduj si
lady aktywnoci FTP? W jaki sposb wydobyby przesane pliki?
ROZDZIA 10.
Usugi
dla przedsibiorstw
234 INCYDENTY BEZPIECZESTWA
K
ada sie firmowa posiada infrastruktur pomocnicz zapewniajc kluczowe usugi
niezbdne do prowadzenia dziaalnoci. Niektre z tych usug mona znale tylko
w duych rodowiskach korporacyjnych, a inne s wszechobecne i mona je zidentyfikowa
w praktycznie kadej sieci. Wiele z nich nie ma zwizku z bezpieczestwem komputerowym.
Wszystkie natomiast mog pomc w wykryciu zagroenia i rozwizaniu zagadki kryminalnej.
W rozdziale tym opisujemy usugi dla przedsibiorstw i powizane z nimi aplikacje, w ktrych
ju nieraz znalelimy cenne dane podczas dziaa prowadzonych w ramach reakcji na incydent.
Opisujemy przeznaczenie kadej z przedstawionych usug, co mona z niej wydoby oraz jak to
wykorzysta w ledztwie. Na kocu rozdziau zamiecilimy krtki opis kilku technik analizy,
ktre naszym zdaniem s bardzo skuteczne. Ponadto pamitaj, e usugi te czsto s wykorzystywane
w ramach akcji naprawczej, o czym szerzej piszemy w rozdziaach 17. i 18.
Tematy, ktre poruszamy w tym rozdziale, podzielilimy na cztery kategorie; s to infrastruktura
sieciowa, zarzdzanie przedsibiorstwem, programy antywirusowe oraz obsuga aplikacji. Zaliczaj si
do nich serwery sieciowe, serwer DNS, serwery baz danych oraz narzdzia do pomiaru oprogramowania.
Trudno wama si do rodowiska bez pozostawienia jakichkolwiek ladw w przynajmniej jednej
usudze. W rozdziale tym podpowiadamy, jak szuka tych tropw. Poniewa jednak kade rodowisko
firmowe jest inne, zachcamy do sprawdzenia, jakie usugi dziaaj w Twojej organizacji. Naucz si
ich obsugi i zadbaj o ich skonfigurowanie tak, aby dostarczay Ci jak najwicej cennych informacji.
Ostrzeenie W rozdziale tym opisujemy, jakie zmiany mona wprowadzi w usugach dla przedsibiorstw,
aby byy one jak najbardziej pomocne w przypadku wystpienia ewentualnego incydentu.
Jako e zmiany te mog spowodowa przerw w dziaaniu usug, najlepiej wprowadza je
w porozumieniu z dziaem informatycznym.
DHCP
Wikszo przedsibiorstw wykorzystuje usug DHCP do przydzielania adresw IP urzdzeniom
podczonym do sieci. Ponadto usuga ta umoliwia konfigurowanie innych ustawie sieciowych,
takich jak serwery DNS, domylne domeny, serwery NTP (ang. Network Time Protocol) oraz trasy IP.
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 235
Protok DHCP wykorzystuje do komunikacji porty UDP 67. i 68. Aktualna specyfikacja DHCP
znajduje si w dokumencie RFC (ang. Request for Comments) 2131. Mona w nim znale szczegowe
informacje dotyczce tego standardu.
W INTERNECIE
tools.ietf.org/html/rfc2131
W INTERNECIE
technet.microsoft.com/en-us/library/dd183591(v=ws.10).aspx
technet.microsoft.com/en-us/library/dd759178.aspx
Dzienniki DHCP systemw Server 2008 i 2012 zawieraj te informacje wyjaniajce znaczenie
niektrych dodatkowych pl. Poniej znajduje si przykadowy wpis z dziennika serwera DHCP
Microsoftu:
ID,Date,Time,Description,IP Address,Host Name,MAC Address,User Name,
TransactionID, QResult,Probationtime, CorrelationID,Dhcid,
VendorClass(Hex),VendorClass(ASCII),UserClass(Hex),UserClass(ASCII),
RelayAgentInformation.
10,06/18/13,11:22:31,Assign,192.168.44.200,Bob-PC.example.com,08002746BF16,,
1534159513,0,,,,0x4D53465420352E30,MSFT 5.0,,,
Ostrzeenie Naley pamita, e pola daty i godziny w dziennikach Microsoft DHCP zawieraj informacje
w czasie lokalnym! Jak pisalimy wczeniej, czas lokalny to utrapienie specjalistw z zespow
RI, ktrzy zawsze wol mie informacje podawane w standardzie UTC. Poza tym zastosowanie
czasu lokalnego stanowi zamanie zasad panujcych w innych usugach Microsoftu, np. IIS
(ang. Internet Information Services), oraz moe by przyczyn pomyek i trudnoci
w skorelowaniu zdarze.
Od systemu Windows Server 2012 R2 funkcja zapisu danych w dziennikach DHCP jest wczona
domylnie. Jeli jednak nie znajdziesz adnych takich plikw, moesz wczy t funkcj za pomoc
konsoli do zarzdzania usugami DHCP dostpnej w narzdziach administracyjnych w Panelu
sterowania. Wybierz przestrze adresow (np. IPv4), kliknij j prawym przyciskiem i w menu
kontekstowym wybierz pozycj Waciwoci, a nastpnie na karcie Oglne zaznacz pozycj Wcz
rejestrowanie inspekcji DHCP. Jeli opcja ta jest ju wczona, przejd na kart Zaawansowane,
aby sprawdzi ciek do pliku dziennika kto mg zmieni jego domyln lokalizacj.
Jednym z najwikszych problemw zwizanych z dziennikami usugi DHCP jest to, e
domylnie przechowywane s informacje co najwyej sprzed tygodnia. Plikom dziennikw DHCP
nadawane s nazwy wg wzoru DhcpSrvLog-<dzie>.log, gdzie <dzie> to trzyliterowy skrt
angielskiej nazwy dnia tygodnia, np. Mon. Oznacza to, e kadego dnia kasowany jest dziennik
z tego samego dnia sprzed tygodnia dla specjalistw RI to straszna rzecz. W wikszoci
organizacji, dla ktrych pracowalimy, informatycy nie uwaaj, aby przechowywanie dziennikw
usugi DHCP byo wane i w wikszoci wymaga dotyczcych IT jest to akceptowalne. Poniewa
jednak wikszo incydentw pozostaje niewykryta przez duej ni tydzie, naley porozumie si
z dziaem IT, aby zapewni dusze przechowywanie dziennikw usugi DHCP.
To wszystko, jeli chodzi o usug DHCP firmy Microsoft. Teraz przyjrzymy si usudze
DHCP ISC.
W INTERNECIE
www.isc.org/downloads/dhcp
W systemach uniksowych serwer DHCP ISC domylnie zapisuje dane do komponentu local7
dziennika systemowego. Aby sprawdzi, gdzie znajduje si odpowiedni plik dziennika lub miejsce
docelowe, naley dowiedzie si, w jaki sposb skonfigurowane jest prowadzenie rejestrw w systemie.
Najczciej wykorzystywanymi usugami rejestracji dziennikw w systemach uniksowych s syslog,
rsyslog oraz syslog-ng. Plik konfiguracyjny standardowej usugi syslog to /etc/syslog.conf, rsyslog is
/etc/rsyslog.conf, a usugi syslog-ng to /etc/syslog-ng.conf. Poszukaj w tym pliku wpisw zawierajcych
sowa local7 facility.
Serwer DHCP ISC normalnie generuje po dwa wpisy w dzienniku na kade danie adresu IP
DHCPDISCOVER i DHCPOFFER. W poniszym przykadzie znajduj si dwa wpisy zwizane z jednym
daniem klienta. Pierwszy wpis wskazuje, e klient o adresie MAC 2e:34:c7:ab:17:03 zada
adresu IP (DHCPDISCOVER). danie to zostao odebrane przez serwer z interfejsu sieciowego
o nazwie re1. Drugi wpis informuje, e serwer poda klientowi adres IP 10.18.0.179 (DHCPOFFER).
Ponadto wpis ten zawiera nazw (Bob-VM) i adres MAC komputera klienta. Poniej znajduj si
omwione wpisy:
Jun 18 11:38:27 dhcpd: DHCPDISCOVER from 2e:34:c7:ab:17:03 via re1
Jun 18 11:38:28 dhcpd: DHCPOFFER on 10.18.0.179 to 2e:34:c7:ab:17:03 (Bob-VM) via re1
Zwr uwag, e data i godzina w wykonanych przez nas testach byy podane w czasie
lokalnym, ale jest to zalene od konfiguracji.
DNS
DNS (ang. Domain Name System) to system, ktrego gwnym zadaniem jest przechowywanie
informacji o nazwach hostw. Dostarcza on wielu rnych informacji, ale najczciej wykorzystuje
si go do wyszukiwania i rozpoznawania nazw hostw. Jeli np. uytkownik wpisze w przegldarce
adres strony internetowej www.example.com, jego komputer najpierw poszuka adresu IP
odpowiadajcego temu adresowi. W tym celu komputer wyle do serwera DNS prob o podanie
tej informacji. Jeli wszystko dziaa normalnie, w cigu okoo sekundy nadejdzie odpowied od
serwera z adresem IP w tym przypadku jest to 93.184.216.119. Posiadajc ten adres, komputer
uytkownika moe zainicjowa poczenie TCP/IP i rozpocz komunikacj. Usuga wyszukiwania
hostw DNS korzysta zazwyczaj z portu UDP 53, a do transferu stref DNS wykorzystywany jest
port TCP 53. Dokadniejsze informacje o protokole DNS mona znale w dokumentach RFC
1034 i 1035.
W INTERNECIE
tools.ietf.org/html/rfc1034
tools.ietf.org/html/rfc1035
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 239
Proces rozpoznawania nazw DNS jest cennym rdem informacji w ledztwie. Serwer DNS
moe prowadzi dzienniki zawierajce nastpujce dane.
Nazwa hosta, dla ktrego zadano rozpoznawania (zapytanie), np. www.example.com.
Adres IP klienta, ktry zada rozpoznawania.
Wynik rozpoznawania (odpowied), np. 93.184.216.119.
Majc dostp do tych informacji, mona sprawdzi, ktre hosty w rodowisku zostay
zaatakowane metod phishingu za pomoc wiadomoci e-mail zawierajcej odnonik albo znale
hosty z aktywnym szkodliwym oprogramowaniem. Jeli organizacja przechowuje informacje
o rozpoznawaniu DNS przez dugi czas, mona nawet z du dokadnoci okreli cakowity czas
trwania incydentu. Dobre archiwum danych jest szczeglnie wane podczas incydentu, poniewa
wiele domen wykorzystywanych do szkodliwych celw czsto zmienia swoje dane np. adres IP
przechodzi w stan zaparkowania, przez co nazwa hosta jest rozpoznawana jako adres IP lokalnego
hosta (127.0.0.1). Jak ju wielokrotnie pisalimy, wszelkie dane pomocne w ledztwie powinno si
przechowywa w centralnym magazynie.
Jeli trzeba, zmie ciek na odpowiedni dla Twojego rodowiska. Nie zapomnij te utworzy
pliku i okreli prawidowych praw wasnoci do niego:
touch /var/log/query.log
chown bind /var/log/query.log
Aby zmiany zostay wprowadzone, naley znw uruchomi serwer BIND. Po ponownym
uruchomieniu program zacznie rejestrowa zapytania przesyane przez klienty DNS w dzienniku
o nazwie query.log. Serwer BIND 9 tworzy wpisy podobne do poniszego:
client 10.18.0.80#42772: query: example.com IN A + (10.18.0.53)
Wpis ten informuje, e klient wysa zapytanie, ktre zawiera zadan nazw hosta. W tym
przypadku dowiadujemy si, e komputer o adresie IP 10.18.0.80 wykona rozpoznawanie DNS
nazwy hosta example.com. Element IN A oznacza, e klient zada adresu IPv4. dania adresw
IPv6 zawieraj rekord IN AAAA.
240 INCYDENTY BEZPIECZESTWA
Jeli dodatkowo chcesz zapisywa w dzienniku odpowiedzi DNS, musisz zwikszy zakres
rejestracji. Aktualnie jedynym sposobem na rejestrowanie odpowiedzi jest wczenie kategorii
domylnej i podniesienie poziomu debugowania do przynajmniej 10. Wiedz jednak, e
spowoduje to wygenerowanie duej iloci danych. Aby wprowadzi opisywane zmiany, naley
doda do pliku named.conf.local poniszy kod i ponownie uruchomi serwer BIND:
logging {
channel resolution.log {
file "/var/log/resolution.log";
print-time yes;
severity debug 10;
};
category default { resolution.log; };
};
;; ANSWER SECTION:
www.example.com. 86400 IN A 93.184.216.119
Jedynym wyjtkiem jest brak pola Internal packet identfier w systemie Server 2003. Pozostae
wystpuj we wszystkich systemach. Podobnie jak usuga DHCP Microsoftu, DNS rejestruje dat
i godzin w czasie lokalnym. Naley o tym pamita podczas przeprowadzania ekspertyz.
Poniej znajduje si przykadowy wpis z dziennika DNS Microsoftu:
6/14/2013 1:59:01 PM 03EC PACKET 00000000027A4070 UDP Snd 10.18.0.80
000a R Q [8081 DR NOERROR] A (7)example(3)com(0)
W INTERNECIE
www.dns-oarc.net/tools/dnscap
APLIKACJE DO ZARZDZANIA
PRZEDSIBIORSTWEM
Wiele firm korzysta z programw do zarzdzania przedsibiorstwem lub narzdzi inwentarskich
pozwalajcych administratorom sprawowa kontrol nad instalowaniem aplikacji w systemach
nalecych do rodowiska. Narzdzia te, z ktrych tylko nieliczne s przeznaczone do monitorowania
sieci, mog dostarczy nam informacji o tym, jakie programy byy uruchamiane w interesujcym
nas systemie. Jako e hakerzy czsto uruchamiaj rne narzdzia i wirusy w zdobytych systemach,
aplikacje zarzdzajce mog da wgld w poczynania tych ludzi.
Cho wiele programw do zarzdzania przedsibiorstwem ma konsol do raportowania
i wdraania, w podrozdziale tym koncentrujemy si na ladach, jakie z pomoc tych aplikacji
mona wydoby z systemu. Moesz otrzyma kopi napdu albo zosta poproszony o zbadanie
rodowiska, w ktrym nie bdzie dostpu do konsoli zarzdzania. W takich przypadkach przyda
Ci si znajomo technik szukania wskanikw zagroenia opisanych w tym podrozdziale.
Opisujemy dwa rozwizania, czyli Software Management Suite firmy LANDesk i Altiris Client
Management Suite firmy Symantec.
244 INCYDENTY BEZPIECZESTWA
W INTERNECIE
www.landesk.com/products/management-suite
Dalej w tym rozdziale piszemy, jak program SLM przechowuje dane, w jaki sposb mona je
przetwarza, oraz dajemy kilka wskazwek, czego warto szuka. Zaczniemy od omwienia miejsca
przechowywania danych.
Program SLM rejestruje czas trwania w setkach nanosekund i zapisuje go w postaci danych
binarnych w formacie little-endian w rejestrze. Wartoci First Started i Last Started to struktury
danych Windows FILETIME zapisane w formie binarnej. Poniszy program w jzyku Python zawiera
funkcj decode_filetime konwertujc struktur FILETIME do postaci czytelnej dla czowieka:
import struct
from datetime import datetime
def decode_filetime(data):
t = (struct.unpack('<Q', data)[0] - EPOCH_FILETIME) / HUNDREDS_NANOSECONDS
return datetime.utcfromtimestamp(t)
Wprawdzie klucze te mona przeglda i konwertowa samodzielnie, ale jest na to lepszy sposb.
W nastpnym podpunkcie zamiecilimy opis kilku metod przetwarzania danych programu SLM.
W INTERNECIE
community.landesk.com/support/docs/DOC-7062
Drugim narzdziem do analizy danych z wybranej gazi rejestru jest wtyczka do programu
RegRipper o nazwie landesk.pl. Jej zalet w porwnaniu z programem SLM Browser jest moliwo
pracy zarwno w dziaajcym systemie, jak i z wyeksportowanym rejestrem. Wtyczka ta powstaa
w 2009 roku i przetwarza tylko pole Last Started z klucza MonitorLog. Justin Prosco opracowa
ulepszon wersj tej wtyczki o nazwie landesk_slm.pl, ktra przetwarza take inne pola i umoliwia
tworzenie lustrzanego odbicia rejestru. Ponadto Prosco utworzy te wersj tego skryptu w Pythonie
o nazwie landesk_slm.py, w ktrej wykorzysta bibliotek python-registry Williego Ballenthina
do przetwarzania kluczy programu SLM. Wszystkie te narzdzia mona pobra z podanych
poniej stron.
W INTERNECIE
RegRipper i landesk.pl code.google.com/p/regripper
Narzdzia rejestrowe Justina Prosco github.com/jprosco/registry-tools
Biblioteka do obsugi rejestru w Pythonie Williego Ballenthina github.com/williballenthin/python-registry
246 INCYDENTY BEZPIECZESTWA
Umiesz ju przetwarza i przeglda dane programu SLM, wic teraz pragniemy przekaza Ci
kilka rad na temat identyfikowania ladw szkodliwej aktywnoci.
Czego szuka
Pakiet SLM umoliwia zbieranie informacji o aplikacjach dziaajcych w sieci. Specjalici ds. RI
mog wykorzysta te dane do szukania dowodw wama. Szuka mona nie tylko znanych nazw
wirusw, ale i innych ladw szkodliwej aktywnoci. Oto one.
Analiza czstotliwoci hakerzy czasami uruchamiaj swoje narzdzia tylko jeden raz
i nastpnie je usuwaj. Na podstawie analizy czstotliwoci uruchamiania programw
mona wykry rzadko uruchamiane programy, ktre mog by wirusami.
Analiza podejrzanych cieek wykonawczych hakerzy czsto do uruchamiania swoich
narzdzi wykorzystuj t sam ciek, np. katalog tymczasowy albo jaki katalog trway.
Przykadowo wysoce podejrzane s wszelkie przypadki uruchomienia programu w Koszu
systemu Windows.
Analiza osi czasu w celu wykrycia daty wamania naley zwraca uwag na uruchomienia
takich systemowych narzdzi jak net.exe, net1.exe, cmd.exe i at.exe. Zwyky uytkownik
rzadko ich potrzebuje, natomiast hakerzy korzystaj z nich bardzo czsto, ale przez krtki
czas. Analiza sposobu uycia tych programw mona dostarczy informacji o ruchach
hakera w obrbie zdobytego systemu.
Identyfikacja podejrzanych nazw uytkownikw za pomoc wartoci Current User
mona zidentyfikowa konto uytkownika, ktre jako ostatnie byo uywane do uruchomienia
okrelonego pliku wykonywalnego. Konta uytkownikw majce niewielk liczb
zarejestrowanych aplikacji mog nalee do hakera i wiadczy o jego ruchach w obrbie
systemu. Sprbuj znale konta, ktre normalnie nie powinny mie dostpu do systemu
oraz szukaj dowodw wiadczcych o tym, e byy uruchamiane programy. Szczegln
uwag zwr na to, jakie aplikacje s wykonywane za pomoc kont o wysokich
uprawnieniach, np. administratorw domen.
Identyfikacja plikw wykonywalnych, ktrych nie ma ju w systemie plikw program
SLM zapisuje cieki do plikw wykonywalnych, dziki ktrym mona si dowiedzie,
jakie pliki zostay usunite. Cho legalne aplikacje, takie jak instalatory, mog wykonywa
i usuwa tymczasowe pliki wykonywalne, analiza tych danych czasami pozwala wykry
szkodliw dziaalno w systemie.
Teraz przyjrzymy si programowi Altiris Client Management Suite firmy Symantec.
aplikacji do monitorowania wydajnoci, ale jej dzienniki pozwalaj te znale dowody wamania
do systemu. Wicej informacji o pakiecie Altiris Client Management Suite firmy Symantec mona
znale na podanej poniej stronie internetowej:
W INTERNECIE
www.symantec.com/client-management-suite?fid=endpoint-management
Nazwa Opis
Manufacturer Informacje o wersji PE: producent
Internal Name Informacje o wersji PE: nazwa wewntrzna
File Version Informacje o wersji PE: wersja pliku
File Name Nazwa pliku
Product Name Informacje o wersji PE: nazwa produktu
Known As Informacje o wersji PE: nazwa wewntrzna
User Konto uytkownika, za pomoc ktrego po raz ostatni uruchomiono program
Domain Domena, do ktrej naley konto, za pomoc ktrego po raz ostatni
uruchomiono program
Discovered Data pierwszego uruchomienia
Last Start Data ostatniego uruchomienia
248 INCYDENTY BEZPIECZESTWA
Nazwa Opis
Month Year Miesic i rok ostatniego okresu monitorowania, w ktrym program by uruchamiany
Run Count Liczba zarejestrowanych uruchomie programu w okresie monitorowania
Denial Count Liczba odmw uruchomienia programu w ostatnim okresie monitorowania
Total Run Time Sumaryczny czas (w sekundach) dziaania programu w ostatnim okresie
monitorowania
Peak Memory Najwiksza ilo pamici (w bajtach) wykorzystana przez program w ostatnim
okresie monitorowania
Avg CPU Usage rednie procentowe wykorzystanie procesora przez program w ostatnim
okresie monitorowania
Month End Warto logiczna okrelajca, czy aktualny zestaw danych na temat aplikacji
Summary jest ostateczny dla danego miesica
W INTERNECIE
www.symantec.com/business/support/index?page=content&id=DOC4729
Administrator moe wybiera, ktre pola chce mie rejestrowane, ale spotkalimy si tylko
kilka razy z sytuacj, gdy kto zmieni ustawienia domylne.
Wiesz ju, czego si spodziewa w dziennikach programu Altiris, wic teraz podpowiemy,
jak skutecznie wykorzysta te informacje w dochodzeniu.
Czego szuka
Techniki przetwarzania dziennikw programu Altiris s takie same jak dla programu SLM.
Poniewa jednak pliki te zawieraj wicej danych, mona z nich wydoby troch wicej informacji.
Identyfikacja plikw wykonywalnych bez informacji o wersji twrcy szkodliwych programw
czsto usuwaj ze swoich plikw wykonywalnych wszelkie dane identyfikacyjne, takie jak np.
informacja o wersji. Uniemoliwia to aplikacjom posugujcym si sygnaturami, takim jak
programy antywirusowe i systemy wykrywania wama, identyfikowanie tych plikw za pomoc
sygnatur. Agent metryczny programu Altiris rejestruje informacje o wersji z nagwkw PE,
a jeli dany plik tych informacji nie zawiera, w przeznaczonym na nie polu pozostawia puste
miejsce. Wprawdzie niektre legalne aplikacje rwnie mog by pozbawione informacji o wersji,
ale i tak jest to bardzo dobry punkt startowy do poszukiwania nieznanych szkodliwych programw.
Identyfikacja podejrzanych plikw wykonywalnych na podstawie rozmiaru pliku
szkodliwe oprogramowanie, szczeglnie typu backdoor i narzdzia, czsto ma rozmiar
poniej jednego megabajta. S to do proste aplikacje, z reguy pozbawione rozbudowanego
interfejsu uytkownika i mechanizmw obsugi bdw, jakie stosuje si w komercyjnych
programach. Ponadto haker moe zainstalowa ten sam backdoor pod rnymi nazwami
w rnych miejscach rodowiska. Jednak mimo zmiany nazwy pliku jego rozmiar pozostaje
taki sam, dziki czemu bardzo atwo go znale w dziennikach.
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 249
PROGRAMY ANTYWIRUSOWE
Programy antywirusowe w rodowiskach korporacyjnych mona spotka wszdzie. Rzadko si
zdarza, abymy musieli bada systemy pozbawione jakiegokolwiek antywirusa. Aplikacje te czsto
s bardzo wanym rdem dowodw, poniewa zapisuj wiele cennych informacji w dziennikach
i rejestruj wszelkie lady szkodliwej aktywnoci. W podrozdziale tym opisujemy rodzaje dowodw
generowane przez trzy najwaniejsze pakiety oprogramowania antywirusowego.
Ostrzeenie Oprogramowanie antywirusowe rzadko wykrywa wszystkie programy, jakie haker prbuje
zainstalowa w systemie. Czasami hakerzy uruchamiaj normalne narzdzia systemowe, ktre
nie s uwaane za szkodliwe, albo uywaj aplikacji bez sygnatur, ktrych nie da si wykry.
Dlatego program antywirusowy moe wykry cz programw uruchomionych przez hakera
lub wszystkie, ale moe te si zdarzy, e nie wykryje adnego. Dzienniki programw
antywirusowych s cennym rdem informacji, lecz nie mona ich traktowa jako kompletnych.
Piszemy o tym, poniewa wiele organizacji nadmiernie polega na tym, co znajdzie lub czego
nie znajdzie w dziennikach antywirusw.
W INTERNECIE
www.symantec.com/endpoint-protection/?inid=us_ps_flyout_prdts_endptprot
Dzienniki
Standardowo program Symantec Endpoint Protection przechowuje dzienniki w folderze
%ALLUSERSPROFILE%\Application Data\Symantec\Symantec Endpoint Protection\Logs.
Zapisywanym w nim plikom nadawane s nazwy wg formatu daty RRRRMMDD oznaczajcej
czas wygenerowania danego dziennika przez aplikacj. Pliki maj format wartoci tekstowych
rozdzielanych przecinkami, dziki czemu atwo si je analizuje i przetwarza. Na stronach firmy
Symantec mona znale list wszystkich pl i ich wartoci. Aktualna wersja ESP dysponuje
pidziesicioma dziewicioma polami, wic jest ich za duo, aby je wszystkie wypisywa.
Mona je natomiast znale na stronie podanej poniej.
W INTERNECIE
www.symantec.com/business/support/index?page=content&id=TECH100099
Jednym z najbardziej godnych uwagi pl jest time of event (czas zdarzenia), ktrego warto
jest reprezentowana w niestandardowym formacie daty. Daty w dziennikach programu SEP
s zapisywane w formacie szesnastkowym zoonym z szeciu oktetw. Kady oktet mona
zdekodowa do postaci skadnika daty, tak jak pokazano w poniszej tabeli.
Oktet Opis
1 Rok, liczba lat od 1970 roku
2 Miesic (stycze = 0, grudzie = 11)
3 Dzie
4 Godzina w formacie 24-godzinnym
5 Minuta
6 Sekunda
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 251
Gdy program SEP wykryje zagroenie w systemie, to oprcz wpisu w dzienniku w katalogu
Logs generuje dodatkowo zdarzenie w dzienniku zdarze aplikacji systemu Windows. Zdarzenia
takie maj identyfikator 51, a ich rdem jest Symantec AntiVirus. Wikszo wpisw w dzienniku
zaczyna si od sw Security Risk Found (wykryto zagroenie bezpieczestwa) oraz zawiera opis
sygnatury, przy uyciu ktrej wykryto zagroenie, i pen ciek do pliku.
Uwaga Podpowiemy Ci, czego szuka we wszystkich dziennikach programw antywirusowych, nie tylko
pakietu SEP. Hakerzy czsto tworz archiwa i inne pliki, ktrych programy antywirusowe nie mog
otworzy z powodu zabezpieczenia ich hasem lub innych trudnoci. Programy antywirusowe czsto
rejestruj wic w dziennikach bdy zawierajce wanie nazw i ciek pliku. Dane takie mog
by bardzo cenne, poniewa haker moe usun uywane przez siebie pliki.
Pliki kwarantanny
Program Symantec Endpoint Protection standardowo zapisuje pliki kwarantanny w folderze
%ALLUSERSPROFILE%\Application Data\Symantec\Symantec Endpoint Protection\Quarantine
i nadaje im rozszerzenie .vbn (VBN) oraz wasny format. Dla kadego pliku wysyanego do
kwarantanny tworzone s dwa pliki VBN. Jeden zawiera metadane dotyczce tego pliku, a drugi
zakodowan kopi oryginalnego pliku.
W starszych wersjach pakietu Symantec Antivirus, poprzednika rozwizania Symantec
Endpoint Protection, kodowanie polegao na prostym zaszyfrowaniu pliku za pomoc operacji
logicznej XOR z wartoci 0x5A. Natomiast program Symantec Endpoint Protection wykorzystuje
do szyfrowania XOR warto 0xA5 i wstawia dodatkowe 5-bajtowe sekwencje w caym kodowanym
pliku. Jeli wic analityk tylko zdekoduje plik VBN za pomoc operacji XOR i klucza 0xA5,
skrt MD5 otrzymanego pliku nie bdzie zgadza si ze skrtem oryginalnego pliku przesanego
do kwarantanny i jest maa szansa, e da si ten plik uruchomi.
Firma Symantec utworzya narzdzie o nazwie qextract.exe do wydobywania plikw z kwarantanny.
Ma ono jednak pewn powan wad mona je uruchomi tylko w tym systemie, w ktrym
wykonano kwarantann pliku. W zwizku z tym narzdzie to nie nadaje si do rozszyfrowywania
plikw VBN z obrazw dyskw ani pobranych zdalnie z zainfekowanej maszyny. Program QExtract
mona pobra z podanych poniej stron firmy Symantec.
252 INCYDENTY BEZPIECZESTWA
W INTERNECIE
QExtract (SEP 11) www.symantec.com/connect/sites/default/files/11xQextract.zip
QExtract (SEP 12) www.symantec.com/connect/sites/default/files/12.1Qextract.zip
Zwr uwag, e dla kadej wersji pakietu Symantec Endpoint Protection potrzebna jest inna
wersja narzdzia QExtract. Pamitaj wic, e gdy pojawi si kolejne wersje SEP, trzeba bdzie
zaopatrzy si w now wersj narzdzia.
Poniewa staramy si unika modyfikowania dowodw, dobrym sposobem na zdekodowanie
pliku VBN jest uruchomienie obrazu zagroonego systemu. Nastpnie mona bezpiecznie
uruchomi narzdzie QExtract bez obawy, e straci si jakie dowody. Inn moliwoci jest uycie
skryptu w jzyku Python o nazwie pyqextract.py autorstwa Jamaala Speightsa. W odrnieniu od
programu QExtract, skrypt ten dziaa w kadym systemie, nie tylko w tym, w ktrym program SEP
utworzy plik VBN. Jednak w naszych testach skrypt Speightsa nie zawsze odtwarza idealnie
oryginalny skrt MD5 pliku. Nie udao nam si znale przyczyny tych niepowodze, wic zalecamy
przeprowadzenie testw, zanim uyje si tego programu. Wicej informacji o skrypcie i sam skrypt
mona znale na stronie podanej poniej.
W INTERNECIE
jamaaldev.blogspot.com/2013/06/symantec-quarantined-vbn-file-decoder.html
W INTERNECIE
www.mcafee.com/us/products/virusscan-enterprise.aspx
Dzienniki
Wedug instrukcji uytkownika programu McAfee VirusScan dzienniki aplikacji s przechowywane
w lokalnym katalogu w rnych miejscach uzalenionych od wersji systemu Windows. W systemie
Windows 7 jest to katalog %systemdrive%\ProgramData\McAfee\DesktopProtection, natomiast
we wszystkich wczeniejszych wersjach uywany jest folder %systemdrive%\Documents and
Settings\All Users\ApplicationData\McAfee\DesktopProtection. Podrcznik uytkownika tego
programu mona znale pod poniszym adresem.
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 253
W INTERNECIE
kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/22000/PD22941/en_US/
vse_880_product_guide_en-us.pdf
W katalogu przechowywanych jest sze plikw dziennika, ktrych opis znajduje si w poniszej
tabeli. Zwr uwag, e jeli do zarzdzania programem VirusScan wykorzystywane jest narzdzie
McAfee ePolicy Orchestrator (ePO), nazwy tych plikw mog mie przedrostek ePO_.
W INTERNECIE
www.mcafee.com/us/threat-center.aspx
254 INCYDENTY BEZPIECZESTWA
Program McAfee zapisuje informacje o wykrytych wirusach nie tylko w dziennikach tekstowych,
ale i w dzienniku zdarze aplikacji Windows pod identyfikatorem 258 (rdem jest McLogEvent).
Teraz przyjrzymy si metodom zapisywania plikw w kwarantannie przez program McAfee
i zobaczymy, jak je mona rozkodowa.
Pliki kwarantanny
Pliki kwarantanny programu McAfee VirusScan maj rozszerzenie .bup (BUP). Przy ustawieniach
domylnych s one zapisywane w katalogu %systemdrive%\Quarantine. W plikach tych mona
znale wszelkie lady szkodliwej dziaalnoci skasowane przez program VirusScan. Ich zawarto
dzieli si na dwie czci metadane dotyczce plikw znajdujcych si w kontenerze BUP oraz
same artefakty. Kada z tych czci jest kodowana XOR przy uyciu wartoci 0x6A, a nastpnie,
w najnowszych wersjach oprogramowania, kompresowana do formatu pliku zoonego OLE.
Aby wydoby plik kwarantanny z pliku BUP, naley go otworzy za pomoc narzdzia
obsugujcego format OLECF, np. 7-Zip. Archiwum to powinno zawiera pliki o nazwach Details
i File_0. Plik Details zawiera metadane dotyczce pliku poddanego kwarantannie, a File_0 to ten
wanie plik. Za pomoc edytora szesnastkowego, np. McAfee FileInsight, mona zdekodowa
poddane kwarantannie pliki i odzyska ich oryginay do dalszej analizy.
Poniej pokazujemy przykad zdekodowanych metadanych z pliku Details.
Wida godzin wykrycia oraz oryginaln nazw pliku przeniesionego do kwarantanny
(C:\Windows\system32\pwdump.exe).
[Details]
DetectionName=PWCrack-Pwdump.a
DetectionType=16
EngineMajor=5400
EngineMinor=1158
DATMajor=7075
DATMinor=0
DATType=2
ProductID=12106
CreationYear=2013
CreationMonth=5
CreationDay=15
CreationHour=3
CreationMinute=8
CreationSecond=48
TimeZoneName=Eastern Daylight Time
TimeZoneOffset=240
NumberOfFiles=1
NumberOfValues=0
[File_0]
ObjectType=5
OriginalName=C:\WINDOWS\SYSTEM32\PWDUMP.EXE
WasAdded=0
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 255
W INTERNECIE
www.trendmicro.com/us/enterprise/product-security/officescan/index.html
trendedge.trendmicro.com/pr/tm/te/document/OfficeScan_10_Report_Mappings_091130.pdf
Dzienniki
Program Trend Micro OfficeScan zapisuje informacje o wykrytych zagroeniach w pliku o nazwie
pccnt35.log znajdujcym si w podfolderze Misc swojego katalogu instalacyjnego. Jest to plik
w formacie tekstowym zawierajcy siedem wartoci rozdzielanych symbolem <;>.
Tabela na nastpnej stronie zawiera wykaz pl tego pliku zgodnie z opisem zamieszczonym
w podrczniku Trend Micro OfficeScan 10 Report Objects Reference Guide.
Oto przykadowy wpis z dziennika programu Trend Micro OfficeScan:
20130501<;>1059 <;>HKTL_PWDUMPBD<;>0<;>1<;>0<;>C:\WINDOWS\system32\pwdump.exe<;>
Pliki kwarantanny
W domylnej instalacji program Trend Micro OfficeScan zapisuje i szyfruje pliki poddane kwarantannie
w podfolderze o nazwie SUSPECT znajdujcym si w katalogu instalacyjnym. Firma Trend Micro utworzya
narzdzie o nazwie VSEncode.exe suce do deszyfrowania tych plikw i przywracania ich zawartoci.
Aby rozszyfrowa pliki w kwarantannie za pomoc narzdzia VSEncode.exe, naley sporzdzi
ich list w pliku tekstowym. Trzeba poda ciek do tych plikw, po jednej w linijce, oraz
zapisa plik listy z rozszerzeniem .ini lub .txt, a nastpnie wykona ponisze polecenie.
Czon <plik_konfiguracyjny> naley zastpi ciek do pliku z list:
VSEncode.exe /d /i <plik_konfiguracyjny>
W INTERNECIE
docs.trendmicro.com/all/ent/officescan/v10.6/en-us/osce_10.6_olhsrv/ohelp/scan/scanactvmec.htm
256 INCYDENTY BEZPIECZESTWA
Pole Opis
Date Data w formacie RRRRMMDD
Time Czas lokalny klienta wystpienia zdarzenia w formacie GGMM
Infection Name Nazwa sygnatury odpowiadajcej infekcji
Scan Results Wyniki zdarzenia. Kody tego pola s nastpujce:
0: wyczyszczono,
1: przeniesiono,
2: usunito,
3: zmieniono nazw,
4: dla skanowania na bieco jest to przepuszczenie > odmowa dostpu,
5: nie udao si wyczyci,
6: nie udao si przenie,
7: nie udao si usun,
8: nie udao si zmieni nazwy,
10: nie udao si wyczyci (przeniesiono),
11: nie udao si wyczyci (usunito),
12: nie udao si wyczyci (zmieniono nazw),
13: dla skanowania na bieco jest to przepuszczenie > odmowa dostpu,
dla pozostaych rodzajw skanowania jest to przepuszczono,
14: nie udao si wyczyci (nie udao si przenie),
15: nie udao si wyczyci (nie udao si usun),
16: nie udao si wyczyci (nie udao si zmieni nazwy),
25: przekazano potencjalne zagroenie bezpieczestwa.
Scan Type Typ skanowania. Kody tego pola s nastpujce:
0: skanowanie rczne,
1: skanowanie na bieco,
2: skanowanie zaplanowane,
3: skanowanie na danie,
4: skanowanie DCS (ang. Damage Cleanup Service).
Not Used Pole nieuywane
Path cieka do zainfekowanego pliku
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 257
SERWERY SIECIOWE
Gdy dojdzie do publikacji niechcianych treci na firmowej stronie internetowej, jaki aktywista
wstrzyknie kod SQL do bazy danych magazynu internetowego albo sie botw spowoduje awari
portalu przetwarzania kart kredytowych, w proces ten na pewno zaangaowany jest serwer sieciowy.
Serwery te obsuguj wikszo komunikacji internetowej i dlatego bardzo czsto mamy z nimi do
czynienia podczas ledztw. Aby efektywnie wykorzysta dowody pochodzce z serwera sieciowego,
naley dobrze zna protokoy sieciowe, odpowiednie pliki konfiguracyjne oraz powizane z nimi
dzienniki. W podrozdziale tym opisujemy dwa najczciej uywane serwery sieciowe, czyli serwer
HTTP Apache i Microsoft Internet Information Services (IIS). Zanim jednak przejdziemy do opisu
konkretnych programw, najpierw przedstawimy gar oglnych informacji o serwerach sieciowych.
W INTERNECIE
www.ietf.org/rfc/rfc2616.txt
Tematem tego punktu jest jednak to, czego mona si dowiedzie z serwerw sieciowych
w ramach prowadzonego ledztwa. Mona wyrni dwa gwne rda materiau dowodowego,
czyli dzienniki i zawarto serwera. Najpierw przyjrzymy si dziennikom.
Dzienniki serwerw Apache i IIS s w formacie tekstowym, cho rni si od siebie.
Wikszo serwerw domylnie zapisuje podstawowe informacje o kadym daniu: adres IP
klienta, zadany adres URL, metod HTTP oraz odpowied serwera (powodzenie, bd itd.).
258 INCYDENTY BEZPIECZESTWA
W INTERNECIE
support.f5.com/kb/en-us/solutions/public/4000/800/sol4816.html
Drugim wanym rdem dowodw jest tre sieciowa znajdujce si na serwerze pliki
wchodzce w skad witryny internetowej. Hakerzy atakujcy serwery sieciowe czsto wykorzystuj
luki w istniejcych stronach lub modyfikuj te strony, a nawet wysyaj na serwer wasne pliki, np.
konsole sieciowe lub inne narzdzia. Pliki te naley przeanalizowa, aby dowiedzie si, co haker
usiowa zdziaa. Wikszo treci jest w formacie tekstowym, wic mona j obejrze w dowolnym
edytorze tekstu. Jednak czasami uywane s te skompilowane pliki wykonywalne lub skrypty ze
specjalnie zaciemnionym kodem rdowym. W takich przypadkach pomocne mog by techniki
opisane w rozdziale 15.
Umiejscowienie dziennikw i treci sieciowej moe by rne. S wprawdzie pewne standardowe
ustawienia, ale zawsze naley sprawdzi lokaln konfiguracj, aby mie pewno, e niczego si nie
przeoczyo. Szczegowo lokalizacj dowodw w serwerach Apache i IIS opisujemy dalej w tym rozdziale.
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 259
W INTERNECIE
httpd.apache.org
Konfiguracja
Gwnym skadnikiem serwera jest prosty serwer HTTP. Jednak moduy mog rozszerza jego
funkcjonalno o takie funkcje jak obsuga serwerowych jzykw programowania, szyfrowanie
i niestandardowe metody uwierzytelniania. Ponadto jest wiele dyrektyw konfiguracyjnych
modyfikujcych sposb zapisywania dziennikw i zachowanie samego serwera. Jako e dyrektywy
konfiguracyjne czasami si zmieniaj, najlepiej je sprawdzi w dokumentacji zamieszczonej na
stronie internetowej projektu Apache. Poniej opisujemy tylko kilka najwaniejszych elementw.
Nazwy i lokalizacje plikw konfiguracyjnych typowe nazwy plikw konfiguracyjnych
serwera Apache to httpd.conf, apache.conf i apache2.conf. W rodowiskach uniksowych pliki
te najczciej mona znale w katalogach /etc, /etc/apache i /etc/apache2. Kada z tych
cieek ma dodatkowo przedrostek /usr/local. Jeli nie znajdziesz jednego z tych plikw
na serwerze, moesz sprbowa go znale w plikach w systemie typowych dyrektyw
konfiguracyjnych: ServerRoot, DocumentRoot oraz LogFormat. Ponadto serwer Apache
umoliwia zapisywanie specjalnych dyrektyw konfiguracyjnych w pliku o nazwie .htaccess.
Dyrektywy te maj zastosowanie do katalogu, w ktrym znajduje si ten plik, i wszystkich
jego podkatalogw. Cho nie poleca si uywania tych plikw, pliki .htaccess s powszechnie
wykorzystywane.
Nazwy i lokalizacje dziennikw domylne nazwy plikw dziennikw to access.log
i error.log. Wikszo rodowisk uniksowych zawiera zewntrzne narzdzia do obsugi
tych dziennikw, wic ich nazwy mog mie zmienione rozszerzenie na .<liczba> lub
.<liczba>.gz, np. access.log.1 albo access.log.32.gz. Typowe miejsca przechowywania
dziennikw w rodowisku uniksowym to /var/log/httpd, /var/log/apache i /var/log/apache2.
Jako e sposb zapisywania dziennikw mona zmieni, powinno si poszuka dyrektyw
CustomLog i ErrorLog w plikach konfiguracyjnych serwera Apache, aby sprawdzi ich
lokalizacj. Ponadto w dyrektywach LogFormat warto sprawdzi, jakie pola s zapisywane
w kadym formacie dziennika.
260 INCYDENTY BEZPIECZESTWA
Dzienniki
Serwer Apache zapisuje pliki dziennikw w postaci tekstowej. Format ten mona dostosowywa
i jest okrelony w pliku konfiguracyjnym Apache. Najczciej spotykamy formaty CLF
(ang. Common Log Format) i NCSA extended/combined. Poniej znajduje si przykad typowego
wpisu z dziennika Apache w formacie NCSA:
172.24.13.37 - - [17/Feb/2014:16:31:43 -0500] "GET /download/2014021.txt HTTP/1.1"
200 1330 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36"
Z wpisu tego dowiadujemy si, e klient o adresie IP 172.24.13.37 wysa danie GET adresu
URL /download/2014021.txt i w odpowiedzi otrzyma 1330 bajtw danych. Serwer Apache
odpowiedzia kodem 200 oznaczajcym powodzenie obsugi dania. Pola bez towarzyszcych
danych s oznaczane znakiem minus. Wicej przykadw i dokadniejszy opis poszczeglnych
skadnikw wpisw mona znale na stronie serwera Apache.
W INTERNECIE
httpd.apache.org/docs/2.4/logs.html
W INTERNECIE
www.iis.net
www.iis.net/learn/extensions/introduction-to-iis-express/iis-express-overview
Konfiguracja
Serwer IIS konfiguruje si przez Panel sterowania systemu Windows, w sekcji Narzdzia
administracyjne/Meneder internetowych usug informacyjnych. Nie kady jednak ma dostp
do panelu sterowania IIS, aby sprawdzi jego ustawienia. Jeli masz dostp do systemu plikw,
wikszo ustawie potrzebnych specjalicie od incydentw bezpieczestwa znajdziesz w pliku
konfiguracyjnym w formacie XML o nazwie applicationHost.config znajdujcym si w katalogu
%systemdrive%\system32\inetsrv\config. W pliku tym poznasz nazw strony internetowej, jej
identyfikator, katalog gwny oraz ciek do dziennika kadej witryny znajdujcej si na serwerze.
Poniej znajduje si przykadowy fragment treci pliku applicationHost.config:
<site name="Default Web Site" id="1">
<application path="/">
<virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%SystemDrive%\inetpub\logs\LogFiles" />
<traceFailedRequestsLogging directory=
"%SystemDrive%\inetpub\logs\FailedReqLogFiles" />
</siteDefaults>
jest przedrostek u_ (np. u_ex140220.log). Domylnie serwer IIS tworzy nowy dziennik codziennie,
ale mona to zmieni na cykl tygodniowy, miesiczny, wg rozmiaru pliku oraz cakiem wyczy.
I w kocu na serwerze IIS rozwizanie kwestii nagwka X-Forwarded-For jest troch trudniejsze.
Znalelimy wpis na pewnym blogu zawierajcy opis kilku moliwoci, m.in. polegajcej na wczeniu
opcji zaawansowanego rejestrowania w usugach IIS i zainstalowania wasnych moduw.
W INTERNECIE
blogs.iis.net/deanc/archive/2013/07/08/iis7-8-logging-the-real-client-ip-in-the-iis-hit-logs.aspx
www.iis.net/learn/extensions/advanced-logging-module/advanced-logging-for-iis-custom-logging
Gdy zostanie wczona opcja zaawansowanego rejestrowania w usugach IIS, serwer zacznie
domylnie zapisywa dzienniki w innym katalogu %SystemDrive%\inetpub\logs\AdvancedLogs.
Wicej informacji na temat tej opcji mona znale na stronach podanych powyej.
Dzienniki
Serwer IIS zapisuje dzienniki w formacie W3C Extended Log File. Jest to prosty format tekstowy,
cho w IIS 7 zaczto kodowa dzienniki za pomoc technologii UTF-8, wic mog zawiera znaki
Unicode. Pola mona dostosowywa, a ich domylny zestaw w rnych wersjach serwera moe by
inny. Na pocztku dziennika znajduj si informacje wstpne zaczynajce si od znaku kratki.
Mona w nich znale wersj IIS, dat rozpoczcia prowadzenia dziennika oraz spis rejestrowanych
pl. Dopiero za t sekcj znajduj si prawdziwe dania. Poniej przedstawiamy przykady wpisw
z dziennika IIS 8:
#Software: Microsoft Internet Information Services 8.0
#Version: 1.0
#Date: 2014-02-20 02:22:09#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query
s-port cs-username c-ip
cs(User-Agent) cs(Referer) sc-status sc-substatus sc-win32-status time-taken
2014-02-20 03:47:30 10.0.5.2 GET /download/2014021.txt - 80 - 172.24.13.37
Mozilla/5.0+(Windows+NT+6.2;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+
Chrome/32.0.1700.107+Safari/537.36 http://localhost:80/ 200 0 0 94
Z powodu zawijania wierszy tego nie wida, ale powyszy przykad przedstawia pi wpisw.
Pierwsze cztery zaczynaj si kratk i zawieraj informacje dotyczce samego serwera IIS i formatu
dziennika. Pity wpis dotyczy dania GET adresu URL /download/20140221.txt wysanego przez
klienta o adresie IP 172.24.13.37. Opis wszystkich pl i metod wybierania, ktre maj by
rejestrowane, znajduje si na poniszej stronie.
W INTERNECIE
technet.microsoft.com/en-us/library/cc754702(v=ws.10).aspx
To wszystko, jeli chodzi o serwery. Teraz moemy przej do nastpnego zagadnienia, czyli
baz danych.
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 263
W INTERNECIE
Microsoft SQL Express www.microsoft.com/en-us/sqlserver/editions/2012-editions/express.aspx
Oracle www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
MySQL dev.mysql.com/downloads/mysql
264 INCYDENTY BEZPIECZESTWA
Jest kilka dobrych miejsc, od ktrych mona zacz zdobywanie wiedzy na temat baz danych
pod ktem prowadzenia ledztw i ekspertyz. Przede wszystkim warto poszuka za pomoc
wyszukiwarki internetowej fraz typu <nazwa bazy danych> forensics. W miejsce napisu <nazwa
bazy danych> naley wstawi np. nazw Oracle lub nazw dowolnego innego systemu. W ten
sposb mona znale artykuy z blogw, biae ksigi i ksiki idealne dla pocztkujcych.
Poniej przedstawiamy kilka zasobw, ktre naszym zdaniem s szczeglnie wartociowe.
W INTERNECIE
www.blackhat.com/presentations/bh-usa-07/Fowler/Presentation/bh-usa-07-fowler.pdf
www.davidlitchfield.com/security.htm
airccse.org/journal/cseij/papers/2312cseij03.pdf
Microsoft SQL
Baza danych Microsoft SQL (w skrcie zwana MSSQL) jest popularnym rozwizaniem
komercyjnym. Firma Microsoft udostpnia zarwno patn, jak i bezpatn wersj tego produktu.
Wersja darmowa nazywa si SQL Server Express. Obie maj bardzo podobne moliwoci, ale
wersja Express ma pewne ograniczenia, np. znacznie mniejszy maksymalny rozmiar bazy danych
i poziom uycia pamici. Wikszo opcji konfiguracyjnych bazy MSSQL ustawia si i przeglda
w programie Microsoft SQL Server Management Studio (SSMS), ktry jest dostpny i w wersji
patnej, i darmowej.
Baza danych MSSQL domylnie nie prowadzi archiwum pocze z klientami i rejestruje tylko
przypadki nieudanych prb poczenia. Aby wczy rejestracj take udanych pocze, naley
poczy si z programem SSMS, klikn prawym przyciskiem myszy serwer w eksploratorze
obiektw i wybra pozycj Properties (waciwoci). Nastpnie naley przej na stron Security
(bezpieczestwo) i w sekcji Login Auditing (inspekcja logowa) zaznaczy opcj Both Failed and
Successful Logins (zarwno udane, jak i nieudane logowania). Dane dotyczce logowania s
zapisywane w pliku o nazwie ERRORLOG w katalogu Log instancji serwera SQL. Domylna
lokalizacja tego pliku na serwerze SQL Server 2012 to: C:\Program Files\Microsoft SQL Server\
MSSQL11.MSSQLSERVER\MSSQL\Log\ERRORLOG. Plik ERRORLOG dodatkowo zawiera dane
dotyczce bdw serwera MSSQL. Wicej informacji o sposobach sprawdzania, gdzie MSSQL
przechowuje pliki, take ERRORLOG, mona znale na stronach podanych poniej.
W INTERNECIE
technet.microsoft.com/en-us/library/ms143547.aspx
support.microsoft.com/kb/966659
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 265
W INTERNECIE
blogs.msdn.com/b/sreekarm/archive/2009/01/05/auditing-select-statements-in-sql-server-2008.aspx
Czasami trzeba skopiowa pliki bazy danych podczas jej dziaania. Normalna procedura polega
na utworzeniu obrazu ledczego dysku wraz z plikami bazy danych. Pliki zawierajce tre bazy
danych MSSQL maj rozszerzenia .mdf i .ldf. MDF to podstawowy rodzaj plikw bazy danych,
a pliki LDF zawieraj dane dziennika transakcji. Wszystkie one s przechowywane w katalogu
o nazwie Data, w katalogu instancji serwera MSSQL. Podczas dziaania instancji bazy danych
pliki s zablokowane i nie mona ich skopiowa w normalny sposb. Jeli nie ma moliwoci
zatrzymania instancji, mona wykona kopi zapasow lub wyeksportowa dane za pomoc
programu SSMS ale moliwo t naley traktowa jako ostatni desk ratunku, poniewa
technika ta stwarza wiksze ryzyko zmodyfikowania dowodw.
MySQL
MySQL to bardzo popularna baza danych dostpna dla systemw Linux, Unix i Windows. Jej plik
konfiguracyjny, najczciej o nazwie my.cnf lub my.conf, zawiera ustawienia dotyczce rejestracji
danych, miejsca przechowywania dziennikw oraz lokalizacji magazynu. Najczciej mona go
znale w katalogu /etc, /etc/mysql lub w podkatalogu tych katalogw o nazwie /usr/local.
W poniszej tabeli przedstawiono wane dla nas ustawienia konfiguracyjne.
266 INCYDENTY BEZPIECZESTWA
Dyrektywa Opis
log_error Pena cieka i nazwa dziennika bdw
general_log_file Pena cieka i nazwa dziennika oglnej aktywnoci, w ktrym zapisywane
s takie zdarzenia jak poczenia klientw i zapytania
general_log Warto logiczna wczajca lub wyczajca general_log_file
(1 oznacza wczenie, 0 oznacza wyczenie)
datadir Katalog, w ktrym przechowywane s pliki z danymi bazy danych MySQL
Z wpisu tego wynika, e 20 lutego 2014 roku o godzinie 20:14:03 uytkownik bazy danych root
poczy si z serwerem z adresu 192.168.200.2, uy bazy danych o nazwie cards i wykona
nastpujce zapytanie SQL:
select * from cc_ data limit 1
Wicej informacji na temat dziennikw serwera MySQL i oglnego dziennika zdarze mona
znale na podanych poniej stronach internetowych.
W INTERNECIE
dev.mysql.com/doc/refman/5.6/en/server-logs.html
dev.mysql.com/doc/refman/5.6/en/query-log.html
W INTERNECIE
dev.mysql.com/doc/refman/5.6/en/mysqldump.html
ROZDZIA 10. USUGI DLA PRZEDSIBIORSTW 267
Oracle
Baza danych Oracle to kolejna komercyjna baza danych, ktr czsto spotykamy w prowadzonych
ledztwach. Jest ona dostpna dla systemw Windows, Linux i kilku platform uniksowych. Istnieje
te darmowa wersja tej bazy danych o ograniczonej licencji, przeznaczona do celw testowych.
Zobaczmy, co mona znale w jej dziennikach pocze z klientami, bdw i zapyta oraz jak
dosta si do plikw z danymi.
Do obsugi pocze bazy danych Oracle wykorzystuj modu nasuchowy TNS (ang. Transparent
Network Substrate). Domylnie tworzy on dziennik z informacjami o kadym poczeniu z klientem
podkrelamy, e chodzi o poczenia, nie uwierzytelnienia. Dziennik ten ma nazw listener.log
i w Oracle 12c mona go znale w katalogu instalacyjnym aplikacji Oracle w podkatalogu
diag\tnslsnr\<nazwa instancji>\listener\trace\listener.log. Ponadto modu TNS prowadzi dziennik
alarmw w formacie XML o nazwie log.xml, ktry w Oracle 12c mona znale w katalogu
diag\tnslsnr\<nazwa instancji>\listener\alert\log.xml. Dziennik alarmw zawiera odniesienia
do ledze i zrzutw, jeli takie istniej. Poniej znajduje si przykad udanego poczenia z baz
danych Oracle 12c:
11-FEB-2014 12:29:04 * (CONNECT_DATA=(SID=testdb)(CID=(PROGRAM=JDBC Thin Client)
(HOST=__jdbc__)(USER=Bob))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.200.2)
(PORT=60866)) * establish * testdb * 0
W INTERNECIE
docs.oracle.com/cd/E16655_01/server.121/e17609/tdpsg_auditing.htm#TDPSG50000
docs.oracle.com/cd/E16655_01/network.121/e17607/toc.htm
W INTERNECIE
docs.oracle.com/cd/E16655_01/install.121/e17735/startrdb.htm
I CO Z TEGO
Aby skutecznie wytropi hakera i pozna jego zamiary, trzeba przewietli cae przedsibiorstwo.
Usugi wykorzystywane przez firmy generuj dzienniki, ktre mog by bardzo pomocne w ledztwie.
Warto znale je wszystkie bezpieczestwo przede wszystkim. Naley dowiedzie si, ktre
z nich mog dostarczy cennych informacji, a nastpnie opracowa centralne metody zbierania,
analizy i wyszukiwania dowodw. Stosujc takie perspektywiczne podejcie, mamy przewag
nad przeciwnikiem dziki cisej wsppracy z dziaami organizacji odpowiedzialnymi za badanie
i wdraanie nowych technologii.
PYTANIA
1. Wymie kilka sposobw wykrywania usug i aplikacji, ktre mog by pomocne w ledztwie.
2. Czy usugi sieciowe, takie jak DHCP, s niezbdne do skutecznej reakcji na incydent?
Jeli nie mamy dostpu do dziennikw DHCP, jakie s inne sposoby na sprawdzenie,
jaki adres IP mia dany system?
3. W Twojej firmie wdroono niedawno now aplikacj. Jest to narzdzie do odzyskiwania
sprawnoci po katastrofie, ktre automatycznie wykonuje kopi zapasow danych
z systemw uytkownikw i zapisuje j na serwerze centralnym. Kopie podlegaj
szyfrowaniu, ale aplikacja prowadzi lokalny dziennik w formacie tekstowym. W czym
usuga ta mogaby by przydatna dla ledczych?
4. W rozdziale tym napisalimy o moliwoci uruchomienia kopii obrazu ledczego.
Co mielimy na myli? Opisz narzdzia i metody potrzebne do wykonania tego zadania.
CZ IV
Analiza danych
ROZDZIA 11.
Metody analizy
272 INCYDENTY BEZPIECZESTWA
Z
nany popularyzator nauki Neil deGrasse Tyson kiedy powiedzia: Nauka wyposaa Ci
w narzdzia pozwalajce prawidowo interpretowa to, co si dzieje przed Tob.
Specjalicie w dziedzinie reagowania na incydenty bezpieczestwa komputerowego,
informatyki ledczej i bezpieczestwa komputerowego trudno zanegowa znaczenie nauki.
Nasze dziedziny si na niej opieraj. Musimy wic, by wypenia swoje obowizki, rozumie,
akceptowa i wykorzystywa nauk wraz z jej instrumentami.
Planujc analiz nowych danych, zawsze przeprowadzamy oglny proces przypominajcy
metod naukow. Oto on.
1. Definicja celw i ich dogbne zrozumienie.
2. Pozyskanie danych.
3. Wstpna ocena jakoci danych.
4. Przeprowadzenie niezbdnych konwersji lub normalizacji.
5. Wybr metody.
6. Analiza.
7. Ocena wynikw.
Proces ten mona powtarza dla jednego zbioru danych tyle razy, ile trzeba, aby otrzyma
dobre odpowiedzi. Innymi sowy, jest to proces iteracyjny. Zalecamy jego przeprowadzanie zawsze
po otrzymaniu nowych danych niezalenie od tego, czy jest to may plik tekstowy, czy kilka
terabajtw dziennikw serwerowych, potencjalnie szkodliwy plik, obraz dysku twardego lub co
kompletnie nieznanego. Postpowanie zawsze w taki sam sposb daje gwarancj koncentracji oraz
otrzymywania dokadnych i spjnych wynikw. Mamy nadziej, e informacje przekazane przez
nas w tym rozdziale pomog Ci lepiej interpretowa to, co si dzieje przed Tob w toku ledztwa.
DEFINICJA CELW
Wikszo z nas rozumie, e jasno postawione cele zazwyczaj pozwalaj uzyska lepsze wyniki,
bez wzgldu na to, co si robi. Zdefiniowanie jakichkolwiek celw to nie problem, ale okrelenie
prawidowych celw to nie lada wyzwanie. Aby dziaa skutecznie, trzeba mie doskonae oglne
rozeznanie w sytuacji, a take wietnie zna zaangaowane technologie. Czego chcesz si dowiedzie?
Czy da si wycign ostateczne wnioski ze znanych do tej pory faktw? Ile czasu to zajmie?
Co do tego bdzie potrzebne? Kogo interesuj wyniki Twojej pracy? Co osoby te z nimi zrobi?
Musisz dobrze rozumie te pytania, zanim przystpisz do analizy.
Wanym krokiem w tym procesie jest identyfikacja (lub wyznaczenie) osoby, ktra wyznaczy
cele. Cho moe si to wydawa mao wane, w istocie etap ten czasami ma decydujcy wpyw
na powodzenie operacji. Nastpnym krokiem jest poinformowanie wszystkich czonkw zespou
o swojej decyzji. Zaniechanie tego moe przyczyni si do powstania chaosu komunikacyjnego
i utraty koncentracji, co powanie utrudnia ledztwo.
ROZDZIA 11. METODY ANALIZY 273
W terenie
Jeli chodzi o cele, nie daj si namwi na udowadnianie jakiego negatywnego stwierdzenia.
Zamiast tego skoncentruj si na czym pozytywnym i realistycznym. Przykadowo kto moe
Ci poprosi o udowodnienie, e zabezpieczenia systemu nie zostay zamane. W wikszoci
przypadkw jest to bardzo trudne lub wrcz niemoliwe ze wzgldu na brak dostpu do
wszystkich potrzebnych informacji. Tylko nieliczne systemy przechowuj kompletne rejestry
wszystkich wykonywanych czynnoci, ktre mona w razie potrzeby przejrze. Poza tym
dowody mog by przechowywane za krtko ilo miejsca na dzienniki jest ograniczona,
usuwane pliki s nadpisywane itd. Dlatego jest wysoce prawdopodobne, e przynajmniej
niektre dowody nigdy nie istniay lub zostay z czasem utracone. Przyjmujc, e w uyciu
s poprawne wskaniki zagroenia, mona wyrazi opini, e system prawdopodobnie jest
bezpieczny ale nie ma co do tego absolutnej pewnoci. Na poparcie swojej tezy masz wyniki
przeprowadzonych analiz, ktre nie wykazay adnych ladw szkodliwej aktywnoci.
Cele ledztwa najczciej definiujemy w postaci serii pyta. Nastpnie czytamy kade pytanie
i zastanawiamy si, jakie s szanse znalezienia na nie odpowiedzi. W niektrych przypadkach
znalezienie odpowiedzi jest niemoliwe, jeli nie wprowadzi si pewnych ogranicze. Przykadowo
pytanie: Czy w komputerze znajduje si szkodliwy program?, wydaje si proste, ale w rzeczywistoci
bardzo trudno na nie odpowiedzie. Mona powici mnstwo czasu i wysiku na poszukiwanie
szkodliwych programw, a i tak nie ma si pewnoci, e co nie zostanie przeoczone. W konsekwencji
analiza sprowadza si do wykonania krtkiej listy czynnoci pozwalajcych odpowiedzie na pytanie
z du doz pewnoci. Akcjonariusze musz zdawa sobie spraw, e w takich sytuacjach nie ma
adnych gwarancji. Na niektre pytania mona udzieli bardziej konkretnej odpowiedzi. I tak
na pytanie: Czy w systemie plikw komputera znajduje si aktywny plik o skrcie MD5
d41d8cd98f00b204e9800998ecf8427e?, mona odpowiedzie z du pewnoci po wykonaniu
krtkiej analizy. Wystarczyoby obliczy skrt MD5 kadego pliku w systemie i sprawdzi, czy
ktry z nich jest taki sam jak szukany. Najwaniejsze jest, aby przejrze wszystkie pytania razem
z klientem i przedstawi mu propozycje rozwiza. Wtedy klient bdzie mia wiadomo,
czego moe si spodziewa po odpowiedziach i ile wysiku wymaga ich znalezienie.
Jak si pewnie domylasz, wanym czynnikiem, jaki naley bra pod uwag przy definiowaniu
celw, jest zakres. Jeli chcesz wykona najlepsz moliw analiz, musisz dobrze rozumie jej zakres.
Gdy kto poprosi Ci o przyjrzenie si dyskowi twardemu, raczej nie ma na myli drobiazgowego
przeanalizowania kadego bitu w celu dowiedzenia si, co znaczy. Taka analiza zajaby na pewno
duo wicej czasu i pochonaby wicej pienidzy, ni mogaby sobie pozwoli wikszo firm.
Twoim zadaniem jest skoncentrowanie si na tym, co najwaniejsze. Wanym aspektem celw
ledztwa jest z pewnoci poczta e-mail, ale jeli kto kae nam przejrze wszystkie e-maile, to te
trudno mwi o koncentracji i konkretach. W takim przypadku naley postara si ograniczy
zakres zadania do bardziej konkretnej postaci, np.: Przejrzyj wszystkie aktywne pliki .pst z poczty
274 INCYDENTY BEZPIECZESTWA
Bartka Kowalskiego otrzymanej w cigu ostatniego miesica. Musisz jak dziecko cigle pyta,
dlaczego. Jeeli odpowied nie ma sensu, zadaj wicej pyta. Zadawaj pytania, a w kocu
dojdziesz z klientem do porozumienia w kwestii zakresu analizy do wykonania.
Obowizek zdefiniowania celw moe spa na analityka, poniewa pracownicy organizacji
nie s specjalistami w tym zakresie i mog nie wiedzie, co jest wykonalne, a co nie. Moesz na
podstawie posiadanych informacji powiedzie, jakie Twoim zdaniem powinny by podstawowe
cele. Zawsze wysuchuj pyta osoby odpowiedzialnej za definiowanie celw, aby umoliwi jej
zrozumienie sytuacji. Moe te si zdarzy, e odpowiedzialno nie bdzie spoczywa tylko
na jednej osobie i wwczas bdziesz w zasadzie swoim wasnym szefem. W takich przypadkach
musisz oprze si pokusie pjcia na atwizn, bo potem moe nie by odwrotu. Zamiast tego
zastanw si, co jest najwaniejsze w danej sytuacji.
ZAPOZNANIE SI Z DANYMI
Systemy informatyczne mog przechowywa dane w wielu formatach i miejscach. Zanim przystpisz
do analizy, a nawet zanim wybierzesz metod, musisz zbada potencjalne rda informacji i ustali,
jak si nimi posugiwa. W podrozdziale tym opisujemy rda i formaty danych.
Jednym z zada podczas ledztwa jest gromadzenie danych, ktre pniej si analizuje w celu
znalezienia odpowiedzi na postawione na pocztku pytania. Aby zwikszy swoje szanse na powodzenie,
naley zbiera te dane, ktre bd przydatne w dochodzeniu. Wiedza o istniejcych rdach danych
i ich zawartoci umoliwia podjcie decyzji, skd czerpa informacje. Zajrzyj do inwentarza rde
danych utworzonego w ramach przygotowa do ewentualnego incydentu opisanych w rozdziale 3.
Uwaga Czsto syszymy stwierdzenia typu: Technologia tak szybko si zmienia, e za ni nie nadam.
Jednak, cho na zewntrz moe si wydawa, e nastpiy due zmiany, podstawowe technologie
s do stabilne. Dlatego zachcamy do poznawania podstaw. Dziki temu Twoja wiedza oprze si
upywowi czasu.
Co jest dostpne
Oglnie rzecz biorc, dowody mogce znajdowa si w opisanych powyej miejscach mona podzieli
na cztery kategorie. Kada z nich jest bardziej szczegowo opisana w dalszych rozdziaach tej ksiki.
System operacyjny do kategorii tej zaliczaj si systemy plikw, np. NTFS i HFS+,
informacje dotyczce stanu, np. o dziaajcych procesach i otwartych portach sieciowych
(pami), dzienniki systemu operacyjnego i inne dane systemowe. W systemie Windows
mona jeszcze znale rejestr, w systemie Unix syslog, a w Apple OS X pliki list waciwoci
(plist). Narzdzia ledcze mog analizowa zawarto systemw plikw i sporzdza listy
plikw wraz z nazwami, ciekami, rozmiarami i znacznikami czasu.
Systemy plikw mog by niezalene od systemu operacyjnego i kady z nich ma wasne
charakterystyczne cechy. Pamitaj, e wiele koncepcji dotyczcych magazynowania danych
odnosi si wanie do systemw plikw, takich jak np. jednostki alokacji, aktywne pliki,
usunite pliki, znaczniki czasowe, nieprzydzielona (wolna) przestrze czy tabele partycji.
Kady system plikw ma dodatkowo pewne typowe cechy, dane i artefakty (np. znaczniki
czasu plikw w systemie NTFS, strumienie NTFS, i-wzy UFS, rozwidlenia zasobw HFS
oraz tablice alokacji w systemach plikw FAT12, FAT16 i FAT32). Fantastycznym rdem
informacji na temat metod analizy systemw plikw jest ksika File System Forensic
Analysis Briana Carriera (Addison-Wesley Professional, marzec 2005).
Aplikacja do tej kategorii zaliczaj si wszystkie artefakty specyficzne dla aplikacji (np. bufor
przegldarki internetowej, pliki baz danych, dzienniki serwera sieciowego, preferencje i dzienniki
aplikacji do czatowania, pliki danych klientw e-mail itd.). Pamitaj, e wiele artefaktw dla
danego programu przypomina podobne w rnych systemach operacyjnych. Ponadto podczas
dezinstalacji lub usuwania programw w inny sposb w systemie pozostaje wiele rnych
ladw. Zasoby artefaktw aplikacji s zazwyczaj bardzo bogate, ale te wysoce wyspecjalizowane.
W ksikach i innych publikacjach powiconych tematowi aplikacji najczciej mona znale
opisy dotyczce jednej kategorii, czasami nawet konkretnego produktu. Zalecamy wic przyjrzenie
si aplikacjom wystpujcym we wasnym rodowisku i poeksperymentowanie z nimi.
Dane uytkownika jeli przedmiotem ledztwa jest uytkownik lub grupa uytkownikw,
trzeba wiedzie, gdzie przechowywane s ich dane. Kady uytkownik przechowuje jakie
dane w systemie, ktrego uywa na co dzie, ale wartociowe informacje mog te znajdowa
si w innych systemach w rodowisku. Przykadowo poczta e-mail, dokumenty, arkusze
kalkulacyjne oraz kod rdowy mog by przechowywane w centralnych magazynach.
Naley uwzgldni te pozycje na swojej licie potencjalnych rde informacji.
Usugi sieciowe i oprzyrzdowanie prawie kada organizacja ma wewntrzne usugi
sieciowe lub oprzyrzdowanie. Czasami mog by zapomniane, ale nawet powszechnie
wykorzystywane usugi, takie jak DHCP, DNS i serwery proxy, mog stanowi kluczowe
rdo informacji w ledztwie. Wyobra sobie, e trzeba sprawdzi, do ktrego komputera
nastpio wamanie, jeli dany jest tylko adres IP, a w rodowisku dziaa usuga DHCP
z du czstotliwoci rotacji dzieraw. Ponadto typowe oprzyrzdowanie, takie jak dane
przepyww sieciowych, systemy IDS/IPS i zapory sieciowe, take czsto ma due znaczenie
dla powodzenia ledztwa. Te rda rwnie naley doda do swojej listy.
ROZDZIA 11. METODY ANALIZY 277
Ostrzeenie Nie zapomnij, aby z danymi otrzymanymi jako dowody postpowa wg przyjtych w organizacji
procedur. W tym celu dane odpowiednio udokumentuj i zabezpiecz przed modyfikacj.
Zaniechanie tego obowizku moe utrudni ledztwo lub mie jeszcze gorsze skutki.
Obrazy dyskw
Rozwamy nastpujc potencjaln sytuacj. Wyobra sobie, i kto z Twojej organizacji mwi,
e dostarczy Ci kopi dysku twardego z pewnego systemu do analizy pod ktem ladw zamania
zabezpiecze. Nastpnego dnia otrzymujesz ten dysk od kuriera. Otwierasz paczk, podczasz
dysk do swojego komputera za porednictwem sprztowej blokady zapisu i rozpoczynasz analiz.
Chwil pniej tkwisz w martwym punkcie, poniewa Twoje narzdzia nie rozpoznaj systemu
plikw. Co gorsza, masz wraenie, e jest peen mieci wyglda to na losowe znaki. Dochodzisz
wic do wniosku, e zawarto dysku musi by zaszyfrowana. Nie wiesz jednak, w jaki sposb oraz
nie masz hasa ani adnych innych potrzebnych do rozszyfrowania danych informacji. Prbujesz
wic skontaktowa si z osob, od ktrej dostae dysk, aby dowiedzie si czego wicej. Niestety
osoba ta jest na wakacjach, a wsppracownicy nie wiedz, skd pochodzi dysk. W tym momencie
jeste w kropce i nie moesz przeprowadzi analizy.
Oto mora: odbierajc od kogo obcego dane, zawsze pytaj o pewne rzeczy. Otrzymane
informacje umoliwi wykonanie pracy. W sytuacji opisanej w poprzednim akapicie naleaoby
spyta: Co to znaczy kopia dysku twardego z pewnego systemu?. Chodzi o to, e stwierdzenie to
jest bardzo niejednoznaczne. Naley je rozoy na czci i zada takie pytania, dziki ktrym
bdzie wiadomo, co to za kopia, dysk twardy i system. Jaki to rodzaj kopii? Pewnie jest to
kopia logiczna, ale rwnie dobrze moe to by obraz wykonany na potrzeby ledztwa, a nawet klon.
W zalenoci od celu analizy, format moe by nie do przyjcia lub mie wady, z ktrymi trzeba
bdzie sobie jako poradzi. Jeeli kopia to naprawd obraz, naley spyta, w jakim formacie
278 INCYDENTY BEZPIECZESTWA
jest ten obraz. Ponadto otrzymujc kopi dysku twardego, naley spyta, czy jego zawarto jest
zaszyfrowana i jeli tak, to w jaki sposb mona si do niej dosta. Niektre narzdzia do analizy
ledczej zapewniaj dostp do dyskw zaszyfrowanych za pomoc popularnych algorytmw.
Czasami potrzebne s dodatkowe biblioteki lub pliki od administratorw systemu. Jeeli jaki
rodzaj szyfrowania nie jest obsugiwany, moe by konieczne poszukanie innych rozwiza.
W kocu naley te dopyta o informacje o samym systemie. Czy jest to komputer stacjonarny,
laptop, serwer, czy jeszcze co innego? Jakiej marki jest to urzdzenie i jaki model? Jaka wersja
systemu operacyjnego jest na nim zainstalowana i czy dziaa? Jeeli jest to serwer, czy ma macierz
RAID? Jeli tak, to jak gwn funkcj peni? Pytania mona mnoy i s zalene od sytuacji oraz
otrzymywanych odpowiedzi, ale chyba wiesz ju, o co chodzi. Jeli nie zadasz tego typu pyta,
moesz zmarnowa bardzo duo cennego czasu.
Najczciej spotykamy trzy formaty obrazw dyskw: Expert Witness/EnCase (E01),
surowy (DD) oraz pliki dyskw maszyn wirtualnych (VMDK, OVF). Komercyjne pakiety
oprogramowania ledczego, np. EnCase firmy Guidance Software, standardowo obsuguj te
wszystkie formaty. Dziki temu nie trzeba ich konwertowa, aby dosta si do danych. Jeli
natomiast nie dysponujesz patnym pakietem programw, moesz wykona konwersj lub
skorzysta z dodatkowych narzdzi umoliwiajcych interpretacj albo przeprowadzajcych
konwersj na bieco. Przyjrzymy si nieco bliej technikom pracy z obrazami dyskw.
Wikszo duych organizacji posiada licencj na przynajmniej jedno komercyjne narzdzie
ledcze. Jeeli jest to program EnCase, otwarcie obrazu dysku twardego nie stanowi adnego
problemu. Pliki E01 i VMDK mona otwiera przez przecignicie ich do okna programu EnCase
v6 (po rozpoczciu nowej sprawy). Jeeli obraz jest w formacie DD, trzeba go skonfigurowa
za pomoc opcji File/Add Raw Image (plik/dodaj surowy obraz). Inn zalet niektrych
komercyjnych narzdzi jest obsuga rnych metod szyfrowania caych dyskw. Moesz np.
otrzyma obraz dysku twardego zaszyfrowany metod Credent. Jeli masz produkt w rodzaju
EnCase, moesz bezporednio pracowa z takim obrazem, oczywicie pod warunkiem, e
posiadasz potrzebne hasa i pliki kluczy. W ten sposb oszczdzasz sobie koniecznoci szukania
sposobw rozszyfrowania obrazu lub metod dostania si do danych.
Jeeli masz niewielki budet lub po prostu chcesz zminimalizowa koszty, do pracy z obrazami
dyskw moesz te uywa kilku darmowych narzdzi. Przykadowo program FTK Imager firmy
AccessData umoliwia tworzenie, konwertowanie i przegldanie wielu typw obrazw dyskw.
Funkcja przegldania suy gwnie do sprawdzania sensownoci danych lub eksportowania
plikw. Jednak funkcja konwersji jest bardzo przydatna mona doda obraz dysku do programu
FTK Imager, a nastpnie klikn prawym przyciskiem myszy dowd i wybra pozycj Export
(eksportuj). Pojawi si kreator eksportu, w ktrym mona wybra format inny ni oryginalny.
To pozwala na przekonwertowanie obrazu E01 na DD albo DD na E01 lub jakikolwiek inny
format obsugiwany przez program. W Linuksie do montowania obrazw DD mona uywa
programu Filesystem in Userspace (FUSE), a do montowania obrazw E01 mona wykorzystywa
narzdzie libewf.
ROZDZIA 11. METODY ANALIZY 279
Jak to wyglda
Opisane w tym rozdziale metody analizy s bezuyteczne, jeli zapomni si o jednym prostym
fakcie, e istnieje nieskoczona liczba reprezentacji danych. Uwzgldniajc takie czynniki jak
kodowanie znakw, kompresja, szyfrowanie, kodowanie danych, strefy czasowe, jzyki i inne
kwestie lokalizacyjne, mona stwierdzi, e szukanie zagroe w niektrych przypadkach jest
jak szukanie igy w stogu siana. Co np. maj ze sob wsplnego ponisze acuchy znakw:
"dGhlIHBhc3N3b3JkIGlzIHNvbHZlY3JpbWU="
":=&AE('!A<W-W;W)D(&ES('-O;'9E8W)I;64`"
"5e0f4784789c4705fa4832aa69d41499"
Na pierwszy rzut oka wydaje si, e napisy te nie maj adnego zwizku. A jednak wszystkie
powstay z jednego acucha the password is solvecrime (haso to solvecrime). Pierwszy to kod
base64, drugi to kod UU, a trzeci to skrt MD5. Prowadzcy ledztwo powinien wiedzie, e
wszystkie informacje s warstwowe, jak w tym prostym przykadzie. Aby skutecznie znajdowa to,
czego si szuka, naley wiedzie, gdzie znajduj si warstwy, jak wygldaj i jak si z nimi obchodzi.
To, e informacje skadaj si z warstw, nie jest pewnie dla Ciebie niczym nowym, poniewa
pojcie warstw jest w komputerach wszechobecne. Nowe moe by to, w jaki sposb te warstwy
wpywaj na Twoje analizy. Nawet sprawdzenie, czy gdzie na dysku twardym zapisano nazwisko
albo numer karty kredytowej, moe okaza si skomplikowanym zadaniem. Istnieje wiele rodzajw
kodowania znakw, metod kodowania, kompresji i szyfrowania oraz rnych wasnociowych struktur
i formatw danych. Kiedy badalimy dziennik debugowania terminalu POS. Kto stwierdzi
na pimie, e w dzienniku tym nie ma pewnego numeru karty kredytowej. Przeszukalimy ten
dziennik sami i znalelimy ten numer w zaszyfrowanej formie. Jak to moliwe?
Podczas pobienego przegldu zawartoci pliku zauwaylimy, e sposb jego formatowania
odbiega od typowego formatu dokumentu tekstowego. Bardziej przypomina tre przedstawian
przez edytory szesnastkowe. Programy te najczciej wywietlaj szesnastkowe przesunicie po
lewej stronie, dane binarne w formie szesnastkowej porodku oraz konwersj ASCII po prawej.
Plik, o ktrym mwimy, wyglda wanie jak zrzut zawartoci z edytora szesnastkowego, co wida
na nastpnej stronie.
W edytorze tekstowym byo wida dokadnie to, co na tym rysunku. Ze wzgldu na sposb
prezentacji danych, podczas przeszukiwania tej treci za pomoc zwykej funkcji wyszukiwania
atwo mona co przeoczy. Na rysunku wida, e plik zawiera numer karty kredytowej
4444555566667777, tylko e jest on podzielony na dwie czci i dwie linijki, midzy ktrymi
wystpuje inny tekst. Poniewa typowe narzdzia wyszukiwania nie rozpoznaj elementw
prezentacji danych, naszym poprzednikom nie udao si znale tego numeru. Trzeba byo
wyznaczy czowieka do przejrzenia danych, rozszyfrowania sposobu ich formatowania
i opracowania odpowiedniej metody wyszukiwania. W tym przypadku napisalimy skrypt
wczytujcy dane rdowe i zmieniajcy formatowanie. Skrypt ten zlikwidowa kolumny wartoci
szesnastkowych i przeformatowa kolumny ASCII tak, aby znaki znajdujce si po obu stronach
separatorw (czniki) byy poczone w jedn lini.
280 INCYDENTY BEZPIECZESTWA
ANALIZA DANYCH
Po zdefiniowaniu celw i wybraniu rde danych mona zacz wybiera metod dziaania.
Przejrzyj swoje pytania dotyczce ledztwa i utwrz wstpn list rde danych, ktre bd
potrzebne do znalezienia odpowiedzi. Czasami bezporednie dowody udaje si znale
w niespodziewanych miejscach, dlatego zawsze bierz pod uwag wszystkie cztery kategorie,
ktre wymienilimy wczeniej. Przyjrzymy si przykadowej hipotetycznej sytuacji.
Uwaga Caa ta praca sporzdzanie listy celw, tworzenie listy rde danych oraz dokumentowanie
techniki, ktrej planuje si uy wydaje si niepotrzebna. I pewnie tak jest, jeli kto pracuje
sam przy zaledwie kilku systemach. Jednak w duych przedsiwziciach, angaujcych wiele
zespow, takie podejcie jest najlepsze. Dokumentacja i listy pomagaj utrzyma porzdek
w ledztwie, umoliwiaj rozwizywanie wielu zada naraz oraz dostarczaj przydatnych danych
statystycznych na spotkania ze klientami.
ROZDZIA 11. METODY ANALIZY 281
Wybr metod
W odniesieniu do rnych systemw operacyjnych, obrazw dyskw, dziennikw i innych danych
stosuje si rne powszechnie znane metody analizy. Niektre s skuteczne, gdy wiadomo, czego
si szuka, a inne w przeciwnym przypadku. Cho szczegy implementacyjne mog si zmienia,
metody te nie s zwizane z adn konkretn technologi; oto one:
wykorzystanie zasobw zewntrznych,
inspekcja manualna,
wykorzystanie specjalistycznych narzdzi,
minimalizacja danych przez ich posortowanie i przefiltrowanie,
analiza statystyczna,
poszukiwanie sw kluczowych,
file carving.
Cho np. artefakty NTFS s w wikszoci specyficzne dla danego systemu plikw, oglna
koncepcja identyfikowania i wykorzystywania artefaktw systemu plikw w ledztwie ju nie.
Tre tej ksiki jest skonstruowana na bazie tej koncepcji. Warto si nad tym zastanowi. Jeeli
planujesz bada artefakty popularnej przegldarki internetowej, istnieje szansa, e technologia,
na ktrej aplikacja ta jest oparta, pozostawi przynajmniej troch ladw niezalenych od systemu
operacyjnego. Artefakty te mog znajdowa si w rnych miejscach lub mie rne nazwy,
ale same informacje s zazwyczaj takie same. Dobre narzdzia ledcze, techniki i dokumentacja
uwzgldniaj takie czynniki i umoliwiaj przeprowadzanie takich samych procesw w rnych
rodowiskach. Przyjrzymy si dokadniej wymienionym metodom analizy.
Zachcanie Ci do korzystania z zewntrznych zasobw lub prac innych osb moe wyglda
jak namawianie do oszukiwania. Jeli jednak nie masz czasu, aby dan sytuacj potraktowa jak
ROZDZIA 11. METODY ANALIZY 283
trening, naszym zdaniem nie ma nic zego w wykorzystywaniu narzdzi innych osb. Jeeli nie moesz
szybko rozwiza sprawy, poniewa przytacza Ci ogromna ilo danych, a czas goni, skorzystaj
z jakiejkolwiek sensownej i akceptowalnej metody, ktra pozwoli znale odpowiedzi na pytania.
W tego rodzaju sytuacji sigamy do takich zasobw jak znane pliki baz danych, wyszukiwarki,
magazyny wiedzy, fora internetowe, narzdzia automatyczne, wsppracownicy i koledzy. Jeli nie masz
pewnoci, co oznacza dany plik, oblicz jego skrt MD5 i poszukaj go w znanej bazie danych plikw,
np. NSRL (ang. National Software Reference Library), Bit9 lub popularnej wyszukiwarce internetowej.
Gdy napotkasz domen i chcesz wiedzie, czy ma zwizek ze szkodliwym oprogramowaniem,
przeszukaj zasoby portali firm od zabezpiecze komputerowych. I nie wahaj si prosi o pomoc.
Przyjmowanie zaoe i opnianie procesu ledztwa jest niekorzystne dla organizacji.
Innym wartym rozwaenia sposobem dziaania jest samodzielne przejrzenie danych.
Czasami jest ich mao, wic nie ma problemu. W takich przypadkach dobrym pomysem moe
by przejrzenie caoci. Jeszcze w 2012 roku prowadzilimy ledztwo, w ramach ktrego jednym
z naszych zada byo przeanalizowanie zawartoci kilku dyskietek. W przypadku zbiorw danych
o takich rozmiarach jedynym rozwizaniem jest przeprowadzenie penego przegldu. Wprawdzie
nie zdarza si to czsto, ale trzeba o tym pamita z przynajmniej dwch powodw. Po pierwsze,
moesz straci mnstwo czasu na szukanie lepszego rozwizania. Po drugie, taka dokadna
analiza daje wiksz pewno dotyczc poprawnoci wynikw. Jeli w danej sytuacji uzasadnione
jest uycie automatu, zawsze dodatkowo samodzielnie sprawdzamy dane, aby zweryfikowa wyniki
otrzymywane innymi sposobami. Wemy np. proces przeznaczony do porwnywania danych
w sprawie dotyczcej naruszenia praw autorskich. W wielu przypadkach kategoryzacja informacji
w zbiorach danych doskonale predysponuje je do automatycznego przetwarzania. Podczas
opracowywania procesu jednoczenie przegldamy cz danych w celach weryfikacyjnych.
Gdy trzeba przetworzy duy zbir danych, pobieramy prbki i samodzielnie je przegldamy.
Naley dokadnie przeanalizowa sytuacj, zanim zdecydujemy si na zastosowanie metod
rcznych, poniewa moe si okaza, e jest to bardzo trudne i czasochonne zadanie. Najczciej
posugujemy si kombinacj kilku metod, np. uycia specjalistycznych narzdzi, sortowania
i filtrowania lub wyszukiwania sw kluczowych. Kilka z tych metod opisujemy poniej.
Firmy, specjalici i naukowcy dziaajcy w dziedzinie reakcji na incydenty bezpieczestwa
komputerowego i informatyki ledczej stworzyli mnstwo specjalistycznych narzdzi pomocnych
w naszej pracy. Znajduj si wrd nich narzdzia do wizualizacji danych, analizy artefaktw
przegldarek, identyfikacji szkodliwego oprogramowania oraz pobierania metadanych z systemu
plikw. Naley zawsze mie pod rk wiele rnych narzdzi, aby skutecznie poradzi sobie w kadej
sytuacji. Czasami w sytuacjach, gdy nie ma dobrych ladw, na pocztek wystarcz bardziej oglne
rozwizania, takie jak programy identyfikujce szkodliwe oprogramowanie. W kolejnych rozdziaach
opisujemy kilka narzdzi i technik, ktre naszym zdaniem warto zna. Kto, kto potrafi dobrze si
nimi posugiwa, moe zaoszczdzi mnstwo czasu. Pamitaj jednak, e bez wzgldu na to, jakiego
narzdzia uywasz, zawsze weryfikuj w jaki sposb otrzymywane wyniki lub przeprowadzaj testy,
aby mie pewno, e wszystko dziaa tak, jak powinno. Posugiwanie si nieprzetestowanymi lub
nieznanymi narzdziami w naszej brany oznacza proszenie si o kopoty.
Nastpn interesujc nas kategori jest minimalizacja danych za pomoc ich sortowania
i filtrowania. Podczas przegldania metadanych, np. kompletnych list plikw, stwierdzamy, e
wikszo danych jest bezuyteczna. W systemie mog znajdowa si setki tysicy plikw i jest
284 INCYDENTY BEZPIECZESTWA
niewielka szansa na rczne przejrzenie kadego z nich. W wikszoci przypadkw dla ledztwa
wana jest tylko maa cz metadanych, a jeli ich objto jest bardzo dua, odsianie tego, co
nieprzydatne, moe by trudne. W takich przypadkach dobrym pomysem moe by posortowanie
i przefiltrowanie danych w celu wydobycia okrelonych dat, katalogw, nazw plikw i innych atrybutw.
Oczywicie sortowa i filtrowa mona nie tylko metadane. Procesom tym mona poddawa wikszo
danych strukturalnych, czyli takich, ktre s zapisane w formacie nadajcym si do analizy skadniowej.
Z drugiej strony proces filtrowania i sortowania bardzo duych zbiorw danych moe by czasochonny
i kopotliwy. Najlepiej czynnoci te wykonywa, gdy ma si jakie oglne tropy lub zna si jakie
waciwoci danych, ktre mog pomc w znalezieniu tego, czego si szuka. Jeeli sortowanie
i filtrowanie nie pomog, mona sprbowa metod z kategorii analizy statystycznej.
Analiz statystyczn stosuje si zazwyczaj wtedy, kiedy nie wiadomo dokadnie, czego lub jak szuka.
Metodami tymi mona wykry rne wzorce i anomalie, ktre dla czowieka byyby trudne lub niemoliwe
do zauwaenia. Jeli np. trzeba przejrze dzienniki serwerowe o duej objtoci w celu wykrycia
potencjalnej szkodliwej aktywnoci, dobrym pomysem moe by wykorzystanie narzdzia do
analizy dziennikw. Wikszo narzdzi tego typu ma funkcje automatycznej analizy skadniowej pl,
wyszukiwania danych geolokalizacyjnych, indeksowania oraz generowania statystyk i podsumowa na
rne sposoby. Po zakoczeniu przetwarzania mona dostrzec pewne wzorce w statystykach da
do serwera. Przykadowo poniej wida wynik analizy dziennikw serwera Apache w narzdziu Sawmill.
ROZDZIA 11. METODY ANALIZY 285
W INTERNECIE
Foremost foremost.sourceforge.net
W metodzie tej nie maj znaczenia rozszerzenia plikw, nazwy plikw, to, czy plik jest aktywny,
czy usunity, ani nawet same pliki. Jest to bardzo skuteczna technika identyfikacji i odzyskiwania
plikw wybranego rodzaju. Nie zawsze jednak interesuj nas cae pliki. Jeli na format pliku
skadaj si bez wtpliwoci identyfikowalne osobne rekordy, mona sprbowa pobra tylko
interesujce nas rekordy. Sposb dziaania opiera si na znalezieniu rekordw na podstawie wiedzy
o nagwku i formacie pliku. Jeli plik jest czciowo nadpisany, pofragmentowany lub analizowany
jest obraz pamici albo przestrze wymiany, szukanie rekordw zamiast caych plikw moe da
bardzo dobre rezultaty.
EWALUACJA WYNIKW
Wanym elementem procesu analizy jest ewaluacja wynikw i ewentualne poprawienie
stosowanych metod. Ocena przebiega dwuetapowo.
Wyniki naley ocenia okresowo podczas trwania procesu analizy.
Gdy proces dobiegnie koca, naley wykona ewaluacj stopnia, w jakim jego wyniki
pozwalaj odpowiedzie na pytania postawione w ledztwie.
Nie czekaj ze sprawdzaniem wynikw na zakoczenie dugiego procesu analizy, poniewa
w jego trakcie wiele rzeczy moe pj nie po myli. Przykadowo sowo kluczowe, ktre wydaje si
niepowtarzalne, moe wystpowa w zbiorze danych bardzo czsto, przez co powstanie tak dua
liczba faszywych alarmw, e wyniki bd bezuyteczne. Moesz te prbowa wykry pliki ZIP
i okae si, e s ich miliony, lub te w drug stron szukasz sowa kluczowego, ktre Twoim
zdaniem powinno pojawi si kilka razy, a po szeciu godzinach analizy okazuje si, e nie znaleziono
ani jednego. Baczenie na takie przypadki, czasami nazywane testowaniem sensownoci (ang.
sanity checking), to jedno z najwaniejszych zada analityka. Przyczyn niepowodzenia moe by
prosty bd w konfiguracji parametrw procesu, np. literwka. Czasami problem stanowi samo
podejcie do zadania. Lepiej dowiedzie si o tym jak najszybciej, aby szybko co poprawi. Sami
te zazwyczaj przegldamy pocztkowe wyniki, aby sprawdzi, czy wygldaj na prawidowe.
Jeli proces analizy dobiegnie koca bez problemw, otrzymasz wyniki do przejrzenia.
Przed przystpieniem do ich przegldania przypomnij sobie pytania postawione w ledztwie.
Badaj rezultaty pod ich ktem i zbieraj dowody potwierdzajce jak tez. Czasami wyniki s
niejednoznaczne albo nie ma ich w ogle (np. nie znaleziono ani jednego wystpienia szukanego
sowa). W takich przypadkach mona zmieni co w sowie kluczowym, ale nie zawsze jest to
moliwe. Ponadto pamitaj, e brak wyniku nie stanowi dowodu, e co nigdy nie istniao wiadomo
tylko, e nie istnieje teraz. Jeli otrzymane wyniki nie s pomocne, mona sprbowa innej metody
lub przeszuka inne rdo.
ROZDZIA 11. METODY ANALIZY 287
I CO Z TEGO
Nie da si by dobrym informatykiem ledczym, nie znajc rodzajw danych, narzdzi i metod
analizy. Niestety bardzo czsto spotykamy analitykw nierozumiejcych danych, ktre analizuj,
nierozumiejcych (ani nietestujcych) uywanych przez siebie narzdzi oraz niewiedzcych, czy
stosowana przez nich metoda daje jakkolwiek nadziej na otrzymanie prawidowych wynikw.
Dlatego zalecamy traktowanie wynikw otrzymywanych z narzdzi i po przeprowadzeniu
procesw ze sceptycyzmem. Zawsze zastanawiaj si, czy na pewno stosujesz waciwe podejcie,
poniewa Twj przeciwnik prawie na pewno si nie pomyli.
PYTANIA
1. Na podstawie lektury tego rozdziau okrel, co Twoim zdaniem jest najtrudniejsze w pracy
analityka? Uzasadnij swoj odpowied.
2. Jakby postpi w nastpujcej sytuacji? Klient mwi Ci, e jednym z najwaniejszych celw
jest udowodnienie, i w czasie analizy w systemie nie byo pliku o okrelonym skrcie MD5.
Masz niedawno utworzony obraz dysku z tego systemu.
3. Wymie cztery powszechnie uywane rodzaje kodowania tekstu. Jak przeprowadziby
skuteczne wyszukiwanie sw kluczowych, gdyby dane rdowe byy zakodowane wanie
w ten sposb?
4. Kierownik z innego biura informuje Ci, e nastpnego dnia powinien przyj kurier
z obrazem dysku. Twoim zadaniem jest odzyskanie usunitych plikw. Jakie pytania zadasz,
zanim obraz do Ciebie dotrze? Dlaczego?
288 INCYDENTY BEZPIECZESTWA
ROZDZIA 12.
Prowadzenie czynnoci
ledczych w systemach
Windows
290 INCYDENTY BEZPIECZESTWA
W
tym rozdziale opisujemy podstawowe rda materiau dowodowego w systemach
Windows oraz pokazujemy, jak je wykorzysta do szukania odpowiedzi na typowe
pytania powstajce podczas ledztw. Mwic szczerze, prowadzenie operacji w systemie
Windows jest bardzo trudne. System ten jest niezwykle skomplikowany, a kiedy stanowi element
domeny Active Directory, co bardzo czsto zdarza si w rodowiskach korporacyjnych, trudnoci si
mno. Sama ilo plikw, kluczy rejestru, wpisw w dziennikach i innych ladw generowanych
przez system w trakcie normalnej codziennej dziaalnoci moe przytoczy niejednego analityka.
Na szczcie informatyka ledcza i metody reakcji na incydenty bezpieczestwa komputerowego
bardzo si rozwiny w ostatnich latach, dziki czemu mamy do dyspozycji wiele przydatnych
narzdzi. W efekcie gromadzenie i analizowanie informacji z rnych rde systemowych jest
o wiele atwiejsze ni kiedy. Mimo to, czsto spotykamy mao dowiadczonych analitykw, ktrzy
nadmiernie polegaj na interpretacji dowodw bez dogbnej wiedzy na temat ich pochodzenia lub
sposobu dziaania. Poza tym narzdzia mog zawiera bdy oraz przedstawia niekompletne bd
mylnie sformatowane dane. Moe to by przyczyn wycignicia nieprawidowych wnioskw
dotyczcych dziaalnoci intruza w systemie albo, co gorsza, spowodowa, e co przeoczymy
lub cakiem le zinterpretujemy. adne narzdzie nie moe zastpi dogbnej wiedzy na temat
wewntrznych mechanizmw dziaania systemu Windows. Chcielibymy, aby wykorzysta
wiadomoci zawarte w tym rozdziale w swojej pracy oraz do dalszego poszerzania wiedzy.
Rozdzia ten podzielilimy na kilka czci powiconych rnych rdom materiau
dowodowego. Nie opisalimy wszystkich cech systemu operacyjnego, lecz skupilimy si na tych
obszarach, ktre s najbardziej przydatne podczas ledztw. Oto one:
analiza systemu plikw,
pobieranie zasobw z wyprzedzeniem w systemie Windows,
dzienniki zdarze,
zadania zaplanowane,
rejestr,
inne artefakty interaktywnych sesji,
analiza zawartoci pamici,
alternatywne trwae magazyny danych.
W kadej sekcji opisujemy, jak dany dowd dziaa (tzn. jaka jest jego rola w systemie
operacyjnym), co naley pobra w ramach procesu zbierania materiau dowodowego oraz jak ten
materia przeanalizowa lub zinterpretowa (podpowiadamy te, jakich narzdzi mona uy).
Ponadto dla kadego rodzaju dowodw przedstawiamy typowe sytuacje, jakie maj miejsce
podczas prowadzenia ledztw, oraz wskazujemy, jaki wpyw na nie ma zachowanie hakera.
Na kocu rozdziau zamiecilimy podsumowanie wiadomoci o wszystkich opisanych
artefaktach systemu Windows.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 291
Uwaga W czasie pisania tej ksiki system Windows 8 nie by jeszcze popularny w rodowiskach korporacyjnych.
W praktyce w wielu organizacjach dopiero niedawno zaczto uywa najnowszej wersji systemu
Windows 7. Dlatego w rozdziale tym nie opisujemy artefaktw ani zmian wprowadzonych w systemie
Windows 8 ani nowszych jego wersjach. W wikszoci przypadkw aktualizacje systemu Windows
nie powoduj powanych zmian, jeli chodzi o dostpno rnych artefaktw, cho oczywicie
niektre zmieniy lokalizacj i pojawio si troch nowych. Na stronie internetowej tej ksiki
planujemy publikowa informacje o nowociach, ktre pojawiy si w systemie Windows 8.
Dowody
Kady wolumin NTFS zawiera wasn tabel MFT, ktra jest przechowywana w katalogu gwnym
woluminu pod nazw $MFT. Jeli trzeba przeanalizowa zawarto systemu z wieloma partycjami lub
dyskami, naley pobra tabele MFT z wszystkich woluminw nigdy nie wiadomo, co moe si przyda.
292 INCYDENTY BEZPIECZESTWA
Pliki z metadanymi NTFS, takie jak $MFT, s niedostpne z poziomu Eksploratora Windows i innych
aplikacji wykorzystujcych standardowy interfejs API dostpu do plikw. Aby si do nich dosta
i przejrze ich tre, potrzebny jest dostp do surowego dysku, jaki zapewniaj np. narzdzia
do analizy ledczej i sterowniki.
W standardowym dysku twardym z 512-bajtowymi sektorami tabela MFT ma posta serii
1024-bajtowych rekordw, zwanych rwnie wpisami po jednym dla kadego pliku i katalogu
w woluminie. Pierwszych 16 wpisw MFT jest zarezerwowanych dla podstawowych artefaktw
NTFS, wcznie z samym plikiem $MFT, $LogFile i innymi specjalnymi plikami, o ktrych bdzie
mowa dalej w tym podrozdziale. Kady wpis zawiera metadane i atrybuty opisujce plik lub
katalog i wskazujce fizyczne miejsce jego przechowywania na dysku. Oto najwaniejsze pola
rekordu MFT.
Typ rekordu okrela, czy dany rekord reprezentuje plik, czy katalog.
Numer rekordu liczba cakowita suca jako identyfikator rekordu MFT.
Numery rekordw s nadawane rosnco kolejnym dodawanym wpisom.
Numer rekordu nadrzdnego numer rekordu katalogu nadrzdnego. Kady wpis MFT
zawiera tylko numer rekordu bezporedniego elementu nadrzdnego, nie ca ciek
dyskow. ciek t mona jednak odtworzy, podajc za sekwencj tych pl kolejnych
rekordw, a do katalogu gwnego woluminu.
Znacznik aktywnoci wpisy MFT dotyczce usunitych plikw i katalogw s
oznaczone jako nieaktywne (ang. Inactive). System NTFS automatycznie odzyskuje
i zastpuje nieaktywne wpisy nowymi aktywnymi wpisami, aby zapobiec nieskoczonemu
rozrostowi tabeli MFT.
Atrybuty kady wpis MFT zawiera kilka atrybutw z metadanymi dotyczcymi pliku
mona w nich znale wszystko, od znacznikw czasu po informacj o fizycznej
lokalizacji zawartoci pliku na dysku. Trzy najwaniejsze atrybuty, o ktrych bdzie tu
mowa, to $STANDARD_INFORMATION, $FILENAME oraz $DATA.
Warto zauway, e w napdach AF (ang. Advanced Format) z 4-kilobajtowymi sektorami
kady rekord MFT ma rozmiar 4096 bajtw. Wicej informacji na ten temat mona znale
w podanych poniej artykuach.
W INTERNECIE
traceevidence.blogspot.com/2013/03/a-quick-look-at-mft-resident-data-on.html
blogs.msdn.com/b/ntdebugging/archive/2011/06/28/ntfs-and-4k-disks.aspx
Na rysunku 12.1 przedstawiono oglny schemat ukadu rekordu tabeli MFT oraz jego
najwaniejsze pola, czyli FILE_RECORD_SEGMENT_HEADER (przedstawione jako Nagwek rekordu)
oraz atrybuty $STANDARD_INFORMATION, $FILE_NAME i $DATA.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 293
Uwaga W celu poprawienia wydajnoci systemy Windows Vista, 7, Server 2008 i nowsze nie aktualizuj ju
domylnie znacznika czasu ostatniego uycia pliku. Dziaaniem tej funkcji steruj klucz i warto
rejestru HKLM\CurrentControlSet\Control\FileSystem\NtfsDisableLastAccessUpdate. Nawet jeli
warto ta nie zostanie ustawiona, system NTFS moe opnia aktualizacj nawet o godzin.
Czym w takim razie rni si znaczniki czasu MACE atrybutu $FN od znacznikw atrybutu $SI?
Odnosz si one do wpisu w tabeli MFT dotyczcego samej nazwy pliku. Przykadowo Filename
Created (czas utworzenia nazwy pliku) oznacza dat i godzin utworzenia wpisu w tabeli MFT
dla danego pliku. Znacznik czasu Filename Modified (czas modyfikacji nazwy pliku) oznacza dat
i godzin ostatniej zmiany atrybutu pliku w tabeli MFT itd.
Jeli, tak jak autorzy tej ksiki, poznae system MS-DOS, moe pamitasz, e kiedy maksymalna
dugo nazwy pliku wynosia osiem znakw (plus trzyznakowe rozszerzenie). System NTFS
przechowuje wiele zestaww atrybutw nazw plikw pen, z rozrnianiem wielkoci liter,
oraz w standardzie systemu MS-DOS 8.3. Znaczy to, e mona zdoby cztery dodatkowe
znaczniki czasu MACE dla nazwy pliku w standardzie MS-DOS, cho z reguy s one identyczne
ze znacznikami czasu dla dugiej nazwy pliku.
Czy warto w ogle przejmowa si tymi wszystkimi znacznikami czasu? Czy jeden zestaw
atrybutw MACE nie wystarczy? Przypomnij sobie, e znaczniki czasu $SI s dostpne dla aplikacji
uytkownika systemu poprzez API Windows, tzn. e programy mog je odczytywa i zmienia na
dowolne wartoci, niekoniecznie prawidowe czynno ta nazywa si time-stomping. Narzdzia,
takie jak setmace, mog z atwoci zmieni znaczniki czasu $SI kadego pliku na dowoln warto.
Programy podrzucajce szkodliwe oprogramowanie i instalatory czsto automatycznie stosuj
ten proces w celu zmylenia ledczych, np. kopiuj znaczniki czasu z legalnych plikw systemowych
znajdujcych si w katalogu %SYSTEMROOT%, aby ich pliki si nie wyrniay oraz by
opni ledztwo.
W INTERNECIE
code.google.com/p/mft2csv/wiki/SetMACE
Na szczcie troch trudniej szpera przy znacznikach MACE atrybutu $FN. Aplikacje nie
mog ich odczytywa, jeli nie uzyskaj dostpu do samej tabeli MFT, a to wymaga dostania si
do dysku w trybie surowym (najczciej przy uyciu sterownika urzdzenia). Nie ma te sposobu
296 INCYDENTY BEZPIECZESTWA
na bezporednie ustawienie lub zmodyfikowanie znacznikw czasu $FN, cho pojawia si coraz
wicej porednich metod, ktre to umoliwiaj. Przykadowo za pomoc narzdzia typu setmace
mona ustawia zarwno znaczniki atrybutw $SI, jak i $FN na dowolne wartoci, postpujc wg
poniszej procedury.
1. Zmie znaczniki czasu atrybutu Standard Information na dan warto.
2. Przenie plik do nowego katalogu w obrbie tego samego woluminu.
3. Zmodyfikuj znaczniki czasu atrybutu Standard Information pliku w nowej lokalizacji.
4. Przenie plik z powrotem do pierwotnego miejsca.
5. Ponownie zmie znaczniki czasu atrybutu Standard Information.
W efekcie otrzymasz takie same wartoci w znacznikach czasu obu atrybutw. Jak to moliwe?
Gdy plik jest przenoszony w inne miejsce na tym samym woluminie, system Windows
wykorzystuje dane ze znacznikw atrybutu $SI do ustawienia wartoci znacznikw w atrybucie
$FN dla nowego wpisu w tabeli MFT. Przywrcenie pliku z powrotem do pierwotnej lokalizacji
i ponowne zmodyfikowanie jego znacznikw czasu powoduje, e wszystkie osiem znacznikw
MACE ma tak warto, jak chcemy. Sztuczka ta czsto jest nazywana double-time-stomping.
Narzdzie setmace ma jeszcze inn funkcj umoliwiajc szperanie przy atrybutach $FN
moliwo zapisu na dysku fizycznym. W systemach Windows Vista i nowszych potrzebny jest
do tego sterownik trybu jdra. Poza tym, jak zawsze gdy bezporednio grzebie si w metadanych
systemu NTFS, trzeba liczy si z moliwoci uszkodzenia wpisu w tabeli MFT. Wikszo
hakerw posuguje si opisan wczeniej sztuczk o nazwie double-time-stomping, poniewa
jest prosta, niezawodna i nie wymaga dostpu do surowego dysku.
Cho moe si wydawa, e nie da si pozna wszystkich moliwych sztuczek stosowanych
przez hakerw do modyfikowania metadanych NTFS, nie obawiaj si! Jest kilka sposobw obrony
przed najpopularniejszymi technikami utrudniania ledztwa. Podczas analizy czasowej metadanych
NTFS zawsze zalecamy posugiwanie si znacznikami czasu $FN. Jeli haker zmieni tylko dane
$SI, to atrybuty $FN powinny zawiera prawidowe informacje MACE. Oczywicie jeli uwzgldni
si po osiem znacznikw czasu dla kadego pliku ($SI i $SN), moe by trudno przeanalizowa tak
ilo informacji. Dlatego dobrym pomysem moe by przedstawienie na osi tylko znacznikw
Filename Created i Standard Information Created. Pniej, jeli trzeba, mona doda pozostae
znaczniki MACE. Ewentualnie mona wykorzysta inne rda dowodw czasowych, o ktrych
jest mowa dalej w tym rozdziale, takie jak rejestr, pliki pobierane z wyprzedzeniem oraz wpisy
z dziennikw zdarze, aby okreli interesujce nas ramy czasowe, na jakich naley skoncentrowa
swoje czynnoci ledcze.
Na rysunku 12.3 przedstawiono przykad efektw zastosowania techniki time-stomping
z prawdziwej sprawy, ktr prowadzilimy. Instalator backdoora zmodyfikowa znaczniki czasu
$SI szkodliwego pliku DLL (rasmon.dll) tak, aby zgadzay si ze znacznikami legalnych plikw
systemowych znajdujcych si w standardowej instalacji systemu Windows. Nie zmieni jednak
znacznikw $FN (co potwierdzono za pomoc analizy innych rde informacji czasowych
w systemie).
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 297
Uwaga Czy kady plik, ktrego znaczniki czasu $FN nie zgadzaj si ze znacznikami czasu $SI, jest automatycznie
podejrzany? Niestety nie jest wiele legalnych moliwoci wystpienia takiej sytuacji. Przykadowo
pliki instalowane z nonikw fizycznych (np. pyt CD), wypakowywane z archiww i kopiowane z udziaw
sieciowych mog zachowa cz lub wszystkie swoje znaczniki $SI ze rda. W takich przypadkach
znaczniki czasu $FN z reguy reprezentuj prawdziwe daty i godziny utworzenia w danym systemie.
Trudno rozwika reguy stosowane przez system Windows przy aktualizacji tych atrybutw w rnych
operacjach. Organizacja SANS prowadzi przydatn cigawk dla informatykw ledczych, w ktrej
mona znale informacje na temat tego, jak najczstsze zadania systemu plikw wpywaj na znaczniki
czasu $FN i $SI. cigawk t mona znale pod adresem blogs.sans.org/computer-forensics/files/
2012/06/SANS-Digital-Forensics-andIncident-Response-Poster-2012.pdf.
Dane rezydentne
Sporo miejsca powicilimy atrybutom $FN i $SI wpisw tabeli MFT, ale naprawd jednym
z najwaniejszych atrybutw jest $DATA. Zawiera on list klastrw na dysku, w ktrych znajduje si
tre pliku. Klastry zawierajce wszystkie dane pliku nie musz by zlokalizowane obok siebie, tzn.
nie musz tworzy cigego bloku bajtw. Kiedy klastry skadajce si na plik nie tworz cigego
bloku, mwi si, e plik jest pofragmentowany. W takim przypadku atrybut $DATA zawiera list
serii danych, ktre cznie reprezentuj zawarto pliku. Mona si zastanawia, dlaczego system
NTFS stosuje t metod do przechowywania bardzo maych plikw, skoro to bardzo nieefektywne,
ale bardzo mae pliki s traktowane inaczej, jako tzw. dane rezydentne (ang. resident data).
Przypominamy, e typowy wpis w tabeli MFT ma rozmiar 1024 bajtw. Dla wikszoci plikw
jest to cakiem dua ilo miejsca, nawet jeli uwzgldni si wszystkie atrybuty, ktrych przecie
jest niemao. Dlatego w celu optymalizacji wykorzystania przestrzeni dyskowej system NTFS pliki
o rozmiarze poniej okoo 700 800 bajtw przechowuje wprost w atrybucie $DATA. Ustawia
tylko w odpowiedni sposb specjalny znacznik o nazwie Resident, ktry o tym fakcie informuje.
Innymi sowy, majc plik $MFT i znajc lokalizacj wpisu wybranego pliku o rozmiarze
nieprzekraczajcym okrelonego limitu, mona odzyska tre tego pliku bezporednio z pliku
tabeli MFT. Dotyczy to take tych plikw, ktre usunito, ale ich rekordy jeszcze nie zostay
nadpisane.
298 INCYDENTY BEZPIECZESTWA
Jeeli plik jest za duy, w atrybucie $DATA zapisywana jest tylko seria klastrw; nie istnieje co
takiego jak czciowo rezydentny plik. Jednak we wpisie MFT moe za to znajdowa si wolne
miejsce zawierajce wczeniejsze dane rezydentne. Jeeli pocztkowo plik bdzie wystarczajco may,
aby zapisa jego tre w atrybucie $DATA, a nastpnie powikszy si do rozmiaru przekraczajcego
limit, zostanie on oznaczony jako nierezydentny i w atrybucie $DATA zostan zapisane informacje
o pooeniu klastrw z treci tego pliku. Natomiast pozostae wolne miejsce w tym atrybucie moe
nadal zawiera wczeniejsze dane rezydentne ze starszych wersji pliku. Analitycy czsto znajduj
lady takich danych podczas wyszukiwania acuchw na obrazach dyskw. Jeli wic kiedy
znajdziesz fragment treci pliku w pliku $MFT, bdziesz wiedzie, skd moga si tam wzi.
Uwaga Alternatywne strumienie danych s w systemie Windows wykorzystywane z kilku wanych powodw.
I tak przegldarka Internet Explorer i inne przegldarki doczaj strumie o nazwie Zone.Identifier
do pobranych plikw. Eksplorator Windows pobiera z niego informacje o pochodzeniu pliku
i uywa go do wdraania odpowiednich zabezpiecze, gdy uytkownik sprbuje uruchomi ten plik.
W portalu MDN znajduje si artyku pt. Known Alternate Stream Names zawierajcy informacje
o innych alternatywnych strumieniach danych (msdn.microsoft.com/en-us/library/dn365326.aspx).
300 INCYDENTY BEZPIECZESTWA
Atrybuty INDX
Efektywny system plikw powinien szybko wyszukiwa pliki w katalogach. Przypominamy jednak,
e wpisy w tabeli MFT zawieraj tylko numery rekordw bezporednich elementw nadrzdnych.
To sprawia, e tworzenie listy zawartoci katalogu jest czasochonn operacj w najlepszym
przypadku konieczne jest znalezienie numeru rekordu katalogu, a nastpnie przejrzenie wszystkich
wpisw MFT w celu znalezienia wszystkiego, co zawiera taki sam numer rekordu nadrzdnego.
Aby przyspieszy ten proces, w NTFS wprowadzono specjalny atrybut o nazwie $INDX
(zwany te $130) przypisywany tylko katalogom. Atrybut ten zawiera drzewo B+, w ktrego
wzach rejestrowana jest zawarto danego katalogu. Przegldajc to drzewo, mona szybko
wykry zawarto katalogu i znale pliki. Rekord INDX moe by rezydentnym elementem wpisu
MFT nazywa si wwczas atrybutem INDEX_ROOT i reprezentuje wze korzenia B-drzewa.
Nierezydentne rekordy INDX nazywaj si INDEX_ALLOCATION i zawieraj podwzy opisujce
tre katalogu.
Uwaga Jeli kiedykolwiek szukae nazwy pliku w obrazie wykonanym na potrzeby ledztwa i w katalogu,
pliku $130, lub pustej przestrzeni dyskowej znalaze co z nagwkiem INDX, to natkne si
na atrybut INDX.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 301
Po co w ogle analizowa te mao znane atrybuty INDX? Czy nie mona po prostu zidentyfikowa
zawartoci wybranego katalogu przez analiz tabeli MFT? Oczywicie mona, ale wolna przestrze
w atrybucie INDX moe zawiera dowody usunitych plikw, ktre w tabeli MFT nie s ju
zarejestrowane. Mwic konkretnie, system plikw alokuje atrybuty alokacji INDX w porcjach
po 4096 bajtw. W miar dodawania plikw do katalogu rejestr plikw atrybutu alokacji stale si
powiksza i moe urosn do rozmiaru 8192 bajtw, pniej do 12 288 bajtw itd. Co si dzieje
podczas usuwania plikw? Podwzy drzewa B+ podlegaj rwnowaeniu, ale pozostaoci starych
plikw mog przetrwa w przestrzeni wolnej atrybut alokacji nie kurczy si automatycznie.
Najwiksz zalet wpisw atrybutu INDX (take tych zlokalizowanych w przestrzeni wolnej)
jest to, e zawieraj te same metadane, co atrybut nazwy pliku w tabeli MFT, a wic:
nazw pliku,
numer rekordu katalogu nadrzdnego w MFT,
wszystkie znaczniki czasu MACE,
rozmiar fizyczny i logiczny.
Czas trwania dajcych si odzyska wpisw w przestrzeni wolnej INDX zaley od objtoci
i czstotliwoci obrotu plikami w danym katalogu. Analizujc rekordy INDX, nieraz z wielkim
powodzeniem odzyskiwalimy pozostaoci najrniejszych rodzajw plikw, od archiww RAR
z kradzionymi danymi po instalatory szkodliwego oprogramowania i inne pliki tymczasowe.
Jednak jest to moliwe tylko wtedy, gdy haker korzysta z mao uywanego katalogu. Gdy pliki
hakera s zapisywane w katalogu %TEMP% lub katalogach typu %SYSTEMROOT%, nie naley
spodziewa si wielkich sukcesw w odzyskiwaniu danych z przestrzeni wolnej INDX.
Wicej informacji na ten niewtpliwie bardzo skomplikowany temat mona znale
w doskonaym czteroczciowym artykule Williego Ballenthina i Jeffa Hamma z Mandiant
o zdobywaniu i analizowaniu rekordw INDX.
W INTERNECIE
www.mandiant.com/blog/striking-gold-incident-response-ntfs-indx-buffers-part-1-extracting-indx
Ponadto Ballenthin napisa w Pythonie bardzo przydany skrypt o nazwie INDXParse sucy
do analizowania rekordw INDX i zwracajcy dane w formacie CSV lub body.
W INTERNECIE
github.com/williballenthin/INDXParse
Dzienniki zmian
NTFS to system plikw, z ktrego mona odzyskiwa dane i w ktrym prowadzone s dzienniki
rejestrujce zmiany w katalogach i plikach. Dane z tych dziennikw mona wykorzysta do cofnicia
operacji systemu plikw w przypadku awarii. Dla informatyka ledczego informacje te s te
cennym rdem dowodw o aktywnoci w systemie plikw szczeglnie w przypadkach, gdy
haker prbowa usun plik lub ukry swoj dziaalno. W tym punkcie przedstawiamy krtki
przegld najwaniejszych dziennikw $LogFile i $UsnJrnl.
Plik dziennika NTFS o nazwie $LogFile zawiera spis wszystkich transakcji zmieniajcych
struktur woluminu. Nale do nich operacje utworzenia, kopiowania i usuwania katalogw,
zmiany metadanych plikw oraz modyfikacje rekordw INDX. Umieszczone w pliku $LogFile
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 303
wpisy dotyczce transakcji zawieraj takie same atrybuty jak tabela MFT. Dziennik ten znajduje si
w katalogu gwnym kadego woluminu NTFS i najczciej ma domylny rozmiar 64 MB. Podlega
on do czstej rotacji, zwaszcza na woluminach systemowych. Podobnie jak do analizy tabeli MFT
i innych artefaktw NTFS, do zbadania dziennika $LogFile z poziomu dziaajcego systemu
potrzebne jest specjalne narzdzie zapewniajce surowy dostp do dysku.
Dziennik USN (ang. Update Sequence Number) o nazwie $UsnJrnl zawiera bardziej oglne
zestawienie zmian na woluminie. Jego wpisy zawieraj informacj o rodzaju zmiany, znacznik
czasu zdarzenia, nazw pliku, jego atrybuty oraz identyfikatory wpisu MFT tego pliku i jego
katalogu nadrzdnego. cieka do tego dziennika to \$Extend\$UsnJrnl. Na niektrych woluminach
moe go nie by, poniewa nie jest wymagany przez system NTFS, ale wymagaj go niektre czsto
uywane usugi systemu Windows, takie jak usugi indeksowania i wyszukiwania oraz replikacji
plikw. Podobnie jak $LogFile, dziennik $UsnJrnl podlega rotacji, ktra na woluminie systemowym
moe by intensywna. W praktyce dziennik $UsnJrnl czsto zawiera wicej informacji o przeszych
zmianach w systemie plikw ni dziennik $LogFile, poniewa w jego wpisach znajduje si mniej
danych. Wicej informacji o dzienniku USN i narzdziu fsutil firmy Microsoft mona znale
na poniszych stronach.
W INTERNECIE
msdn.microsoft.com/en-us/library/aa365722.aspx
technet.microsoft.com/en-us/library/cc788042(v=ws.10).aspx
W INTERNECIE
LogFileParser code.google.com/p/mft2csv/wiki/LogFileParser
TZWorks Journal Parser tzworks.net/prototype_page.php?proto_id=5
parser-usnjrnl code.google.com/p/parser-usnjrnl
Uwaga Niektre okrelenia uywane w tym punkcie mog by nieco mylce. Przykadowo punkt przywracania
w kontekcie usugi VSC to migawka stanu systemu w danym momencie. To nie to samo, co stary
Punkt przywracania systemu dostpny w systemie Windows XP. W systemie tym nie wykorzystywano
usugi VSC tylko proces, w ramach ktrego wybrane klucze rejestru i pliki z pewnymi rozszerzeniami
byy automatycznie kopiowane do chronionego miejsca na dysku. Ze wzgldu na spadajc liczb
uytkownikw systemu Windows XP w rozdziale tym koncentrujemy si wycznie na implementacji
usugi VSC w systemach Windows 7, Vista i Server 2008.
Drog analizy kopii woluminu mona odzyska pliki, klucze rejestru i inne dane, ktre haker
mg usun lub zmieni w zdobytym przez siebie systemie. Nie bdziemy szczegowo opisywa
procesu wykonywania kopii woluminu, tylko skupimy si na kilku podstawowych kwestiach,
o ktrych trzeba wiedzie przed przystpieniem do analizy tego rodzaju materiau dowodowego.
Przede wszystkim warto wiedzie, e usuga VSC rejestruje zmiany w blokach danych na dysku,
a nie w logicznych plikach. Zamontowan kopi woluminu identyfikuje si jako lustrzany obraz
zawartoci monitorowanego woluminu, ale w rzeczywistoci usuga ta zapisuje tylko bloki, ktre
ulegy zmianie midzy kolejnymi migawkami. Domylnie system Windows ogranicza maksymaln
ilo miejsca dostpnego dla usugi VSC do 5% (Windows 7) lub 15% (Windows Vista)
pojemnoci woluminu.
Nie tylko ilo miejsca jest ograniczona. Take dostpno danych jest reglamentowana przez
czstotliwo wykonywania migawek. Utworzenie migawki moe nastpi automatycznie przed
instalacj dodatku Service Pack, aktualizacj systemu lub instalacj sterownika. Ponadto proces
moe zosta wywoany przez aplikacje uytkownika. Take usuga przywracania systemu moe
automatycznie tworzy codzienne migawki w ramach zaplanowanych zada.
Pewnie si domylasz, e kopie woluminw mog zawiera wiele danych, ktre zostay ju usunite
lub s nieobecne w aktualnym systemie plikw. Jeli np. znane s data i godzina aktywnoci hakera,
mona przeszuka zawarto kopii zapasowej woluminu wykonanej w najbliszym czasie. W ten
sposb udaje si wykry pliki, dane z gazi rejestru, a nawet wpisy dziennika zdarze, ktrych nie
daoby si zdoby w aden inny sposb.
Jak wydoby dane z kopii woluminu? Najpierw naley j zamontowa jako obraz dysku
lub napd w systemie Windows Vista lub 7. Pozwoli to na prac z usug VSC i korzystanie
z narzdzi do interakcji z obrazami lustrzanymi docelowego systemu plikw. Nastpnie naley
wczy wiersz polece jako administrator i wykona nastpujce polecenie:
vssadmin list shadows /for=[Litera_woluminu]
RYSUNEK 12.7. Skadnia polece do wywietlania listy kopii woluminw i montowania ich za pomoc
dowizania symbolicznego
Od tej pory w katalogu wskazanym przez dowizanie bdzie si znajdowa kopia woluminu
lustrzane odbicie caego systemu plikw woluminu w okrelonym momencie.
Cho narzdzia vssadmin i mklink wystarcz do przejrzenia zawartoci kopii woluminw
w systemie Windows, istnieje kilka innych darmowych narzdzi o bogatszej funkcjonalnoci
analitycznej, umoliwiajcych przeprowadzenie analiz w innych systemach operacyjnych.
Oto lista polecanych przez nas programw.
W INTERNECIE
libvshadow code.google.com/p/libvshadow
Dostpne na wielu platformach biblioteka i narzdzia do przetwarzania danych z kopii woluminw.
Shadow Explorer www.shadowexplorer.com
atwy w obsudze program do badania zawartoci migawek woluminw.
VSC Toolset dfstream.blogspot.com/p/vsc-toolset.html
Interfejs uytkownika umoliwiajcy montowanie kopii woluminw, przegldanie ich zawartoci
oraz wykonywanie na nich skryptw wsadowych.
W INTERNECIE
msdn.microsoft.com/en-us/library/windows/desktop/aa384187(v=vs.85).aspx
Dodatkowo w systemie Windows znajduje si osobny katalog Program Files dla aplikacji
32-bitowych o nazwie \Program Files (x86). Pliki aplikacji 64-bitowych s przechowywane
w katalogu \Program Files.
Uwaga Czasami hakerzy przez pomyk wykonuj 32-bitowe szkodliwe programy w 64-bitowych
systemach operacyjnych i w efekcie gubi pliki, ktre trafiy do innych katalogw,
np. C:\Windows\SysWOW64 zamiast C:\Windows\system32.
Dowody
Pliki do pobierania z wyprzedzeniem s przechowywane w katalogu %SYSTEMROOT%\Prefetch,
w ktrym mona znale nastpujce pliki.
NTOSBOOT-B00DFAAD.pf plik rozruchu systemu. Ma on zawsze tak sam nazw. W systemach
Windows Server jest to jedyny domylnie tworzony plik pobierania z wyprzedzeniem.
Layout.ini plik zawierajcy dane wykorzystywane przez defragmentator dysku.
NazwaAplikacji-########.pf grupa maksymalnie 128 plikw z rozszerzeniem .pf,
z ktrych kady reprezentuje plik wykonywalny, jaki zosta przynajmniej raz uruchomiony.
Nazwy tych plikw s utworzone z nazwy pliku wykonywalnego i 32-bitowego skrtu cieki
do tego pliku poczonych cznikiem. Oznacza to, e jeli ten sam plik zostanie uruchomiony
w dwch rnych miejscach, powstan dla niego dwa pliki pobierane z wyprzedzeniem.
Rysunek 12.8 przedstawia cz zawartoci katalogu C:\Windows\Prefetch z obrazu
zaadowanego w programie FTK Imager.
Uwaga W systemach Windows Vista i 7 mona znale dodatkowe pliki o nazwach utworzonych wg wzoru
Ag*.db, np. AgAppLaunch.db. S one generowane przez inny mechanizm optymalizacji wydajnoci
o nazwie SuperFetch, ktry moe dziaa wsplnie z mechanizmem pobierania plikw z wyprzedzeniem.
Nie ma dokumentacji formatu tych plikw, ale niektrzy ju analizuj ich struktur i zawarto
(zobacz blog.rewolf.pl/blog/?p=214).
Analiza
Skoro wiesz, jak system Windows tworzy i wykorzystuje pliki wczytywane z wyprzedzeniem,
z pewnoci domylasz si te, jak cennym rdem informacji mog by w ledztwie.
Pliki pobierane z wyprzedzeniem su jako rejestr programw uruchamianych w systemie
niezalenie od tego, czy pliki wykonywalne wci znajduj si na dysku. Cho nie tylko istnienie
pliku pobieranego z wyprzedzeniem jest dowodem na to, e dana aplikacja bya uruchamiana,
to w ten sposb mona dowiedzie si, kiedy j uruchomiono, ile razy to zrobiono i jaka bya
jej cieka.
Najprostszym sposobem analizy plikw pobieranych z wyprzedzeniem jest przyjrzenie si
ich standardowym znacznikom czasu. Data utworzenia pliku wskazuje, kiedy dan aplikacj
uruchomiono po raz pierwszy. Data ostatniej modyfikacji jest informacj o ostatnim
uruchomieniu programu. Oczywicie z nazwy pliku pobieranego z wyprzedzeniem nie odczytamy
cieki. Przykadowo plik o nazwie EXPLORER.EXE-A840CB32.pf mgby zosta utworzony
zarwno dla legalnego pliku %SYSTEMROOT%\Explorer.exe, jak i C:\path\to\evil\Explorer.exe.
T wan informacj mona zdoby, wraz z innymi przydatnymi danymi, analizujc tre pliku
pobieranego z wyprzedzeniem.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 309
Uwaga Jedynym wyjtkiem od tej dziesiciosekundowej reguy jest plik pobierany z wyprzedzeniem
NTOSBOOT. W jego przypadku uywane pliki s monitorowane przez dwie pierwsze minuty
procesu rozruchu.
RYSUNEK 12.9. Lista uywanych plikw pliku pobieranego z wyprzedzeniem wygenerowanego dla aplikacji
pwdump2x.exe
310 INCYDENTY BEZPIECZESTWA
Uwaga Podczas dochodze czsto masowo pobieramy i analizujemy pliki pobierane z wyprzedzeniem
z wielu systemw, a nastpnie sortujemy je wg cieki. Jest to bardzo dobry sposb na wykrycie
nieznanych do tej pory plikw binarnych wykonywanych w miejscach, ktre nigdy nie s uywane
przez legalne programy (np. w katalogu informacji o woluminie systemowym czy koszu).
Uwaga Co si dzieje, gdy kto uruchomi plik z alternatywnego strumienia danych (moliwe tylko w systemie
Windows XP i starszych wersjach Windows)? W katalogu Prefetch zostanie utworzony plik o takiej
samej nazwie jak nazwa pliku strumienia gwnego. Bdzie on zawiera alternatywny strumie
danych z danymi dotyczcymi pobierania z wyprzedzeniem o normalnej nazwie dla tego typu plikw.
Jeli np. kto uruchomi plik C:\Windows:evil.exe (alternatywny strumie danych katalogu Windows),
w katalogu Prefetch moe zosta utworzony plik C:\Prefetch\Windows:evil.exe-A02B49FF.
W INTERNECIE
www.forensicswiki.org/wiki/Windows_Prefetch_File_Format
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 311
DZIENNIKI ZDARZE
Dzienniki zdarze s generowane przez systemowe mechanizmy inspekcji i monitoringu.
Analizujc je, mona zdoby informacje o zdarzeniach, takich jak:
udane i nieudane prby logowania wraz ze rdem pochodzenia;
czas utworzenia, uruchomienia i zatrzymania usug systemowych;
przypadki uycia okrelonych aplikacji;
zmiany w zasadach inspekcji;
zmiany uprawnie uytkownikw;
aktywno zainstalowanych aplikacji (np. programw antywirusowych, baz danych
oraz usug serwerw sieciowych).
W podrozdziale tym dowiesz si, gdzie szuka dziennikw zdarze systemu Windows. Troch
miejsca powicamy te technikom analizy najbardziej przydatnych podczas ledztwa typw wpisw
dziennikw. Przy okazji pokazujemy, jak dzienniki zdarze pomagaj w badaniu typowych ladw
aktywnoci rozpoznawczej, uruchamiania szkodliwych programw i innych ladw charakterystycznych
dla szkodliwej aktywnoci w systemach Windows.
Dowody
Wszystkie wersje systemu Windows prowadz trzy podstawowe dzienniki zdarze: aplikacji,
systemu i bezpieczestwa. Aktywnoci zwizane z programami uytkownika i aplikacjami
komercyjnymi s rejestrowane w dzienniku aplikacji. Kontroli systemowej podlegaj wszelkie
bdy i informacje raportowane przez aplikacje. W dzienniku tym dane zapisuj te narzdzia
zabezpieczajce, takie jak programy antywirusowe i systemy zapobiegania wamaniom.
Procesy uwierzytelniania i zabezpiecze zapisuj informacje o zdarzeniach w dzienniku
zabezpiecze. Mona wic w nim znale dane dotyczce prb logowania i wylogowania
uytkownikw, tworzenia kont, zmian uprawnie i danych powiadczajcych uytkownikw,
zmian w zasadach inspekcji, uruchamiania procesw oraz uywania plikw i katalogw.
312 INCYDENTY BEZPIECZESTWA
Analiza
O niezliczonych typach zdarze generowanych przez system Windows, podobnie jak o rejestrze,
mona by napisa ca ksik. Z racji ograniczonej iloci miejsca postanowilimy wic ograniczy
si tylko do tych zdarze, ktre s najbardziej przydatne podczas ledztwa.
Identyfikatory zdarze
Kady rodzaj zdarze rejestrowanych w dziennikach systemu Windows ma identyfikator. Gdy
trzeba zdoby bardziej szczegowe informacje lub przefiltrowa zdarzenia, identyfikatory te s
czsto bardziej przydatne ni same wiadomoci o zdarzeniach. Nie ma miejsca w tym rozdziale
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 313
W INTERNECIE
Bazy danych informacji o identyfikatorach zdarze systemu Windows mona znale w kilku portalach
internetowych, np. www.myeventlog.com i www.eventid.net. Cho tylko nieliczne z tych rde zawieraj
informacje o identyfikatorach zdarze z dziennikw aplikacji i usug oraz nie s oficjalnie wspierane
przez firm Microsoft, na pocztek czsto wystarczaj.
Ostrzeenie Firma Microsoft zmienia identyfikatory niektrych typw zdarze midzy wersj jdra
NT Kernel 5 (2000, XP, 2003) a 6 (Vista, 7, 2008). Wiele nowych identyfikatorw rni si od
starych tylko dodatkiem liczby 4096 (np. identyfikator zdarzenia udanego logowania zmieni si
z 540 na 4624, ale zdarzenia uruchomienia i zatrzymania usugi nadal maj identyfikator 7036).
Zdarzenia logowania
Prowadzc ledztwo w systemie Windows, prawie zawsze trzeba zbada i przeanalizowa zdarzenia
logowania. Jest to konieczne w celu dowiedzenia si, jak legalny uytkownik korzysta z wasnego
systemu lub jak haker zdoby do niego dostp. Czasami analiza nieudanych prb logowania pozwala
wykry ataki typu brute force albo trzeba dowiedzie si, w jaki sposb byo wykorzystywane konto,
na ktrym doszo do wamania. We wszystkich tych przypadkach pomocny moe by dziennik
zdarze zabezpiecze.
Spjrzmy na przykadowy zapis zdarzenia logowania i zobaczmy, jakie zawiera skadniki.
Przykad ten zaczerpnito z systemu Windows XP, ale takie same informacje otrzymano by take
w nowszych wersjach systemu Windows:
Identyfikator zdarzenia: 540
W INTERNECIE
www.microsoft.com/technet/support/ee/transform.aspx?ProdName=Windows+
Operating+System&ProdVer=5.0&EvtID=540&EvtSrc=Security&LCID=1033
Uwaga Czy w Twoim rodowisku uywany jest VNC lub inny program do zdalnego przekazywania obrazu?
Jeli tak, musisz wiedzie, e narzdzia tego typu naladuj lokalne operacje dostpu do systemu.
Przypadki logowania za ich pomoc s najczciej rejestrowane jako zdarzenia typu interaktywnego
lub w celu odblokowania, nie RemoteInteractive.
uda si zdoby dostp do konta administratora domeny lub innego o takich samych uprawnieniach,
moe wej do kadego systemu w domenie.
Jedn z trudnoci, jakie napotyka si przy analizowaniu tego rodzaju aktywnoci jest to, e jej
lady mog si miesza ze ladami normalnej aktywnoci legalnych uytkownikw. Problem ten
jest szczeglnie dotkliwy w rodowiskach, w ktrych konta usug aplikacji i uprzywilejowane konta
domenowe mog inicjowa sieciowe i interaktywne sesje logowania typowe dla ludzi. Pewnie
nie raz bdziesz szuka dowodw logowa hakerw przy uyciu takich danych powiadczajcych
wrd ladw legalnej codziennej aktywnoci.
Teraz wykorzystamy uzyskane wiadomoci o typach logowania do przedstawienia typowych
metod ruchu poziomego oraz omwimy, jakie dowody mona przy ich uyciu zdoby.
Nasz haker, Bob, ma interaktywny dostp do stacji roboczej z systemem operacyjnym
Windows 7 o nazwie alpha.
Stacja alpha jest poczona z korporacyjn domen ACME.
Backdoor dziaa w kontekcie uytkownika domeny bdcego posiadaczem stacji alpha
o nazwie ACME/Eve.
Wykonujc zrzut hase i stosujc inne niecne metody, haker zdoby dane powiadczajce
do dwch kont:
lokalnego administratora o nazwie localAdmin, ktry ma identyczne haso na kadej
stacji roboczej w domenie ACME,
administratora domeny, ACME\domainAdmin, ktry ma peny dostp do wszystkich
stacji roboczych i serwerw w rodowisku.
Bob wykorzystuje swj backdoor do wykonywania polece powoki w kontekcie uytkownika
ACME\Eve. Ponadto za pomoc rnych polece w poczeniu z danymi powiadczajcymi kont
localAdmin i ACME\domainAdmin uzyskuje dostp do czterech systemw, w kadym przypadku
w inny sposb.
1. Za pomoc poniszego polecenia Bob montuje udzia C$ dla stacji roboczej beta z systemu
rdowego alpha w celu przesania szkodliwego oprogramowania i narzdzi:
net use \\beta\c$ /u:localAdmin "badPassword"
2. Przy uyciu narzdzia SysInternals PsExec haker zdalnie wykonuje polecenie na stacji
roboczej gamma, ponownie z systemu alpha:
psexec.exe \\gamma -u ACME\domainAdmin -p worsePassword "C:\path\to\malware.exe"
Kada z tych czynnoci powoduje zdarzenie logowania, tylko jakiego typu i gdzie ich szuka?
Czynno 1. spowoduje wygenerowanie zdarzenia logowania typu 3. (sieciowe)
na komputerze beta, poniewa zostao uyte konto lokalne.
Czynno 2. spowoduje wygenerowanie zdarzenia logowania typu 3. na komputerze beta
i w kontrolerze domeny ACME, poniewa zostao uyte konto domeny. Ponadto na
komputerze alpha zostanie zarejestrowane zdarzenie Prba logowania przy uyciu jawnych
powiadcze (identyfikator 4684), w ktrym znajd si informacje dotyczce uycia przez
hakera danych powiadczajcych do konta ACME\domainAdmin oraz docelowego systemu
beta. Zdarzenie to zostanie wygenerowane z powodu uycia narzdzia PsExec z innymi
danymi powiadczajcymi domeny ni bieca sesja hakera (ACME\Eve).
Czynno 3. spowoduje wygenerowanie zdarzenia logowania typu 10. (RemoteInteractive)
na komputerze zeta oraz w kontrolerze domeny ACME.
Czynno 4. spowoduje wygenerowanie zdarzenia logowania typu 3. (z powodu
uwierzytelniania IIS) na komputerze delta i w kontrolerze domeny ACME.
Przytoczone przykady ilustruj wpyw, jaki maj rne mechanizmy logowania oraz rodzaj
uytego konta na typy generowanych zdarze i systemy, w ktrych mona pniej szuka materiau
dowodowego. W duych rodowiskach moe mie to powane konsekwencje dla ledztwa zwaszcza
w przypadkach, w ktrych haker intensywnie korzysta z kont lokalnych poniewa analiza ruchu
poziomego hakera moe wymaga zbadania dziennikw z wszystkich systemw.
Uwaga Zdarzenia uwierzytelniania Kerberos dla ruchu poziomego zazwyczaj nie zawieraj informacji
o systemie rdowym ani adresu IP. Z drugiej strony logowania sieciowe przy uyciu Kerberosa
czsto s bezporednio poprzedzone logowaniem z konta systemu rdowego. Poszukaj wic
zdarze tego typu, jeli chcesz wykry rdo prb uwierzytelnienia Kerberos.
Zdarzenia dotyczce zarzdzania kontem pozwalaj zorientowa si, czy zostao utworzone, usunite,
wczone lub wyczone konto uytkownika, oraz wykry podobne zmiany w grupach kont.
Zdarzenia zmiany zasad dostarczaj informacji o zmianach systemowych ustawie
zabezpiecze, wcznie z zasadami inspekcji, ktre okrelaj, co ma by rejestrowane
w dziennikach zdarze.
Zdarzenie zawierajce informacj Dziennik inspekcji zosta wyczyszczony jest rejestrowane,
gdy uytkownik skasuje dzienniki zdarze bez wzgldu na ustawienia inspekcji.
W powiadomieniu zawarta jest nazwa uytkownika, ktry wprowadzi zmian.
ledzenie procesw
Funkcja ledzenia procesw, zwana te ledzeniem szczegowym lub inspekcj procesw, generuje
zdarzenie w dzienniku zdarze zabezpiecze dla kadego przypadku uruchomienia i zakoczenia procesu.
Zdarzenia te zawieraj pen ciek do pliku wykonywalnego na dysku, identyfikator procesu, identyfikator
procesu nadrzdnego oraz identyfikator logowania, przy uyciu ktrego proces by wykonywany. Dane te
pozwalaj dowiedzie si, co uytkownik uruchamia w okrelonym okresie. Domylnie ustawienie to
jest wyczone, ale mona je wczy w lokalnej zasadzie inspekcji lub poprzez Obiekty zasad grupy.
Czasami chcemy, aby funkcja ledzenia procesw rejestrowaa troch wicej danych.
Do najwaniejszych brakw zaliczaj si argumenty procesu i nazwa procesu nadrzdnego.
Informacje te w niektrych przypadkach s po prostu bezcenne, zwaszcza gdy haker wykorzystuje
narzdzia wiersza polece. Jeeli np. haker skompresowa wykradzione dane za pomoc narzdzia
wiersza polece, poznalibymy katalogi rdowy i docelowy, a moe nawet haso do archiwum.
Na rysunku 12.10 pokazano przykad zdarzenia utworzenia procesu, w ramach ktrego konto
ukasz-Komputer\ukasz uruchomio plik C:\Windows\system32\mmc.exe.
RYSUNEK 12.10. Zdarzenie inspekcji procesu utworzenie procesu (identyfikator zdarzenia 4688)
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 319
Ostrzeenie Funkcja ledzenia procesw powoduje wygenerowanie i zapisanie w dzienniku duej iloci zdarze.
Jeli zdecydujesz si na jej wczenie, zwiksz maksymaln wielko dziennika zabezpiecze,
aby zapobiec zbyt szybkiemu zapenieniu i zbyt czstemu rotowaniu. W niektrych przypadkach
ledzenie procesw znacznie pogarsza wydajno systemu. Jeli wic planujesz je zastosowa
w wanych systemach, koniecznie najpierw przeprowad dokadne testy.
W przecitnym systemie Windows s setki usug. Wiele z nich zmienia si, uruchamia
i zatrzymuje podczas normalnego dziaania systemu. Wiemy z dowiadczenia, e bardzo trudno
znale podejrzane usugi, przegldajc tylko zdarzenia w dzienniku. Jeli jednak znany jest
okres aktywnoci hakera, wystpujcy np. w pobliu serii zdarze logowania, moe si okaza,
e zdarze do przeanalizowania jest znacznie mniej. Przede wszystkim naley dokadnie zbada
wszystkie nowe usugi uruchamiane po raz pierwszy w takich okresach.
Uwaga Jeli wczona bdzie funkcja ledzenia procesw, w dzienniku zdarze zabezpiecze bd
rejestrowane wszystkie przypadki utworzenia nowych usug przez Meneder kontroli usugi
(identyfikator 601 lub 4697).
Ponadto systemowy dziennik zdarze mona przeszuka pod ktem wystpowania w nim znanych
nazw zych usug, ktre zostay zidentyfikowane podczas analizy innych systemw. Czasami moe
te si zdarzy tak, e haker albo program antywirusowy usunie plik binarny szkodliwej usugi po jej
zainstalowaniu, ale nie usunie odpowiadajcych jej kluczy konfiguracyjnych z rejestru. Wwczas
Meneder kontroli usugi bdzie rejestrowa zdarzenia niepowodzenia za kadym razem, gdy sprbuje
zaadowa t usug.
Wracajc do wczeniejszego przykadu, gdyby program PsExec zosta uyty w sposb niedozwolony
w naszym rodowisku, zdarzenie tej usugi mona by wykorzysta jako wskanik zagroenia podczas
analizy innych systemw lub przeszukiwania zgromadzonych danych z dziennikw. Ta sama zasada
dotyczy kadej nazwy usugi wykorzystywanej do zapisania szkodliwego oprogramowania przez
hakera jeli jest niepowtarzalna, mona jej uy jako wskanik przy przegldaniu dziennikw
zdarze. Przykadowo niektre wersje popularnego narzdzia do wykonywania zrzutw hase
i odtwarzania skrtw Windows Credential Editor tworz usug o nazwie WCE Service, ktr
mona wykorzysta jako bardzo skuteczny wskanik.
Jeli pobierzesz dzienniki zdarze z systemu Windows XP lub Server 2003, przegldarka
zdarze lub inne narzdzie analityczne moe informowa Ci, e pliki EVT s uszkodzone.
Jest to powszechnie znany problem, ktry mona atwo naprawi za pomoc darmowego
narzdzia FixEVT dostpnego na poniszej stronie internetowej.
W INTERNECIE
murphey.org/fixevt.html
Nazwa
Moliwoci Licencja Adres
narzdzia
Podgld Otwieranie dziennikw zdarze Darmowa Narzdzie wbudowane
zdarze oraz ich przeszukiwanie, sortowanie w system Windows
i filtrowanie za pomoc sw
kluczowych i wyrae XPath
PSLogList Zrzucanie dziennikw do formatu Darmowa technet.microsoft.com/
tekstowego z lokalnego lub zdalnego en-us/sysinternals/
systemu bb897544.aspx
Log Parser Wysyanie zapyta SQL do lokalnych Darmowa www.microsoft.com/
dziennikw zdarze en-us/download/
details.aspx?id=24659
Event Log adowanie, konsolidowanie, filtrowanie Patna www.eventlogxp.com
Explorer oraz przeszukiwanie dziennikw
zdarze. Program odznaczajcy si
wysok wydajnoci obrbki duych
plikw
LfLe Heurystyczne odzyskiwanie zdarze Darmowa github.com/
z obrazw dyskw williballenthin/LfLe
Python-Evtx Parser w jzyku Python dziennikw Darmowa www.williballenthin.com/
w formacie EVTX evtx/index.html
Plaso Mechanizm przetwarzania dowodw Darmowa code.google.com/p/plaso
z moliwoci tworzenia osi czasu
obsuguje formaty EVT i EVTX
322 INCYDENTY BEZPIECZESTWA
Niektre z tych narzdzi, np. PSLogList, pobieraj i przetwarzaj dzienniki zdarze tylko
z dziaajcych systemw. Inne natomiast, np. Podgld zdarze, wczytuj te surowe dzienniki
skopiowane na potrzeby ledztwa.
Warto zauway, e program Podgld zdarze firmy Microsoft zosta znacznie ulepszony
w systemie Windows Vista i nastpnych. Wprawdzie nadal ma spore problemy z wywietlaniem
i przeszukiwaniem duych dziennikw, ale ma te doskonae funkcje wyszukiwania i filtrowania
zwaszcza w porwnaniu ze starszymi wersjami.
Uwaga Czas na mae zamieszanie! Wpisy w dziennikach zdarze s rejestrowane w czasie UTC. Jednak rne
narzdzia do analizy dziennikw konwertuj te znaczniki czasu na rne sposoby, co moe by
kopotliwe dla kogo, kto prbuje uzgodni czasy z rnych rde. Przykadowo Podgld zdarze
systemu Windows wywietla zdarzenia w czasie systemowym niezalenie od tego, co jest
w oryginalnym rdle dziennika. Aby unikn nieporozumie i bdw, zawsze dokadnie sprawdzaj,
jak uywane przez Ciebie narzdzia obsuguj znaczniki czasu, oraz ustaw stref czasow swojego
systemu uywanego do wykonywania ekspertyz na UTC. Tak bdzie o wiele atwiej.
ZADANIA ZAPLANOWANE
Harmonogram zada systemu Windows umoliwia automatyczne uruchamianie programw
okrelonego dnia i o wybranej godzinie lub regularnie. Peni rol podobn do narzdzia cron
wbudowanego w wikszo systemw uniksowych. Aplikacje mog programowo tworzy zadania
zaplanowane za porednictwem interfejsu API systemu Windows. Wiele programw korzysta z tej
moliwoci np. w celu okresowego sprawdzania dostpnoci aktualizacji. Uytkownicy te mog
tworzy zadania zaplanowane za pomoc polece konsoli at i schtasks. Od wersji Vista systemu
Windows dostpna jest ulepszona implementacja harmonogramu zada z konsol zarzdzania
do tworzenia, edytowania i usuwania zada.
Hakerzy czsto wykorzystuj zaplanowane zadania do zdalnego uruchamiania szkodliwych
programw w zdobytych systemach bez uycia pomocniczych narzdzi typu PsExec, ktre
zwikszaj ryzyko wpadki. Technika ta jest szczeglnie czsto stosowana, gdy haker ma dostp
tylko do konsoli.
at 16:25 "C:\WINDOWS\evil.exe"
Uruchom program evil.exe jeden raz o najbliszej godzinie 6:25.
at 10:25 "C:\temp\beacon.exe" /every:m,t,w
Uruchamiaj program beacon.exe o godzinie 10:25 w poniedziaki, wtorki i rody.
at \\alpha 08:00 "C:\RECYCLER\passdump.bat"
Uruchom plik C:\RECYCLER\passdump.bat na komputerze alpha o najbliszej godzinie
08:00 czasu lokalnego tego systemu.
Widzisz co ciekawego w ostatnim przykadzie? Przedstawione w nim polecenie tworzy zadanie
w zdalnym systemie (alpha), a nie lokalnie tak, mona to zrobi. Jedynym warunkiem jest
umieszczenie pliku C:\RECYCLER\passdump.bat w systemie alpha, a nie rdowym. Ponadto
do zdalnego utworzenia zadania zaplanowanego potrzebne s uprawnienia administratora na
zdalnym systemie. Jeeli nie dokona si wczeniej uwierzytelnienia, polecenie at zwrci bd
odmowy dostpu.
Pewnie si zastanawiasz, jaka strefa czasowa jest uywana w tych przykadach. Jest to czas
lokalny systemu, na ktrym zostao zaplanowane zadanie. Czasami mona nawet nie wiedzie,
w jakiej strefie czasowej znajduje si system zwaszcza podczas pracy ze zdalnymi systemami
nalecymi do globalnej infrastruktury. Hakerzy czsto przed zaplanowaniem zadania zdalnego
wykonuj polecenie net time \\hostDocelowy, aby sprawdzi, jaki jest czas lokalny w danym
systemie. Jest to bardzo dobry sposb na odpowiednie planowanie zada nie trzeba sprawdza
ani zna strefy czasowej adnego systemu.
Gdy utworzy si kilka zaplanowanych zada, mona wywietli ich list w systemie lokalnym
lub zdalnym za pomoc polecenia at bez adnych parametrw (np. at albo at \\systemDocelowy).
Uwaga Zadania zaplanowane za pomoc polecenia at lokalne i zdalne dziaaj pod kontrol
wbudowanego konta SYSTEM. Hakerzy czsto to wykorzystuj do wykonywania szkodliwych
programw, np. niektrych aplikacji do zrzucania hase, ktre mog wymaga wikszych
uprawnie ni normalny administrator ma w systemie Windows Vista i nowszych.
Znak # naley zastpi identyfikatorem interesujcego nas zadania. Zadanie mona te usun
za pomoc polecenia:
at # /delete
324 INCYDENTY BEZPIECZESTWA
Uwaga A co z nazwami? Zadania zaplanowane tworzone za pomoc narzdzia at nie maj nazw, ale
mona si do nich odnosi przy uyciu identyfikatorw (At1, At2 itd.). Dla porwnania, zadania
tworzone za pomoc interfejsu API systemu Windows lub polecenia schtasks mog mie nazwy.
Oczywicie nie wszystkie zadania bez nazwy s szkodliwe administratorzy systemw czsto
uywaj polecenia at do rnych celw automatyzacyjnych i serwisowych.
Wicej informacji na temat skadni polecenia at mona znale w portalu TechNet firmy
Microsoft.
W INTERNECIE
technet.microsoft.com/en-us/library/bb490866.aspx
W INTERNECIE
technet.microsoft.com/en-us/library/bb490996.aspx
Ostrzeenie Jest jedna wana rnica dzielca polecenia schtasks i at, o ktrej naley wiedzie. Jeli polecenie
schtasks zostanie wykonane bez parametrw, wywietli wszystkie zadania zaplanowane zarwno
przez polecenie schtasks, jak i at. Natomiast polecenie at bez parametrw wywietli tylko
zadania utworzone przez polecenie at.
Dowody
lady niedawno zaplanowanych zada oraz zapis wczeniej wykonanych zada mona pobra
i z dziaajcego systemu Windows, i z obrazu napdu z tym systemem. Poniej opisujemy,
jakie pliki i dzienniki bd potrzebne.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 325
Pliki .job
Dane konfiguracyjne zada zaplanowanych s przechowywane w plikach .job po jednym na
zadanie w katalogu %SYSTEMROOT%\Tasks. Pliki te s zakodowane w firmowym formacie,
ktrego dokumentacj mona znale w portalu TechNet.
W INTERNECIE
msdn.microsoft.com/en-us/library/cc248285(v=prot.13).aspx
Analiza
Wiedzc, jak pobra z systemu wszystkie artefakty dotyczce zada zaplanowanych, moemy
skoncentrowa si na sposobach przetwarzania i interpretowania ich zawartoci. W tym punkcie
opisujemy metody analizowania plikw .job i wpisw, jakie mona znale w obu rodzajach
dziennikw zada zaplanowanych.
326 INCYDENTY BEZPIECZESTWA
Zalecamy jednak skorzystanie ze specjalnego narzdzia do analizy plikw .job, ktre potrafi
zrekonstruowa zawarte w nich dane konfiguracyjne. Doskonale do tego celu nadaje si skrypt
jobparser.py Jamiego Levyego. Program ten obsuguje pliki .job ze wszystkich najwaniejszych
wersji systemu Windows (rysunek 12.12).
W INTERNECIE
gleeda.blogspot.com/2012/09/job-file-parser.html
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 327
Uwaga Potrzebujesz innych dowodw na to, e zadanie zaplanowane zostao wykonane w interesujcym
Ci systemie? Czas ostatniej modyfikacji katalogu %SYSTEMROOT%\Tasks czsto jest zbieny z czasem
utworzenia ostatniego zadania lub ukoczenia zadania (wie si to z dodaniem lub usuniciem
pliku .job). Ponadto klucze rejestru Harmonogramu zada take mogy zosta zmodyfikowane
podczas ostatniego wykonywania zadania.
Na podstawie widocznych informacji moemy wycign nastpujce wnioski na temat dwch zada.
Nienazwane zadanie zaplanowane, At2.job, wykonao plik a.bat 25 wrzenia 2009 roku
o godzinie 2:26:00 i dziaao do godziny 2:34:13.
Na podstawie naszej znajomoci konwencji nazywania zada wnioskujemy, e w chwili
tworzenia zadania At2.job musiao istnie jeszcze jedno zadanie, At1.job.
Nazwane zadanie zaplanowane, SCOM 2007 Agent Resume Task.job, wykonao plik sc.exe
14 wrzenia 2010 roku o godzinie 14:55:00 i zakoczyo si w tej samej sekundzie.
Oba zadania zostay wykonane bez bdw, o czym wiadczy kod zakoczenia 0.
Czego brakuje? Niestety brakuje wielu wanych szczegw. Plik SchedLgU.txt nie rejestruje
nazwy konta uytkownika uytego do utworzenia zadania zaplanowanego. Zapisywana jest w nim
tylko nazwa pliku wykonanego przez zadanie (np. a.bat) brak jakichkolwiek informacji o ciece
i argumentach. Nie mamy te moliwoci sprawdzi, czy drugie zadanie wykonao legalny program
sc.exe z katalogu %SYSTEMROOT%\system32, czy moe jaki inny program z innego miejsca.
Uwaga Warto wiedzie, e zadania zaplanowane mog te porednio wykonywa inne programy za pomoc
interpretera polece. Przykadowo nastpujce zadanie uruchomioby program cscript.exe poprzez
cmd.exe, ktry z kolei zinterpretowaby skrypt VBS: at 12:34 \\beta "cmd.exe /c
cscript.exe c:\temp\foo.vbs". W tym przypadku w dzienniku SchedLgU.txt znalazaby si
tylko informacja, e zadanie wykonao plik cmd.exe.
Ten jeden rekord zawiera wszystkie kluczowe informacje o zadaniu zaplanowanym pen
ciek do polecenia, godzin jego wykonania oraz nazw uytkownika, ktry je utworzy.
Dowody
Zaczniemy od przedstawienia rde dowodw skadajcych si na rejestr, tzn. opiszemy pliki i dane,
ktre naley pobra do analizy. Gdy ju poznasz ogln struktur rejestru, pokaemy rnice midzy
tym, jak jest przechowywany na dysku, a tym, jak uzyskuje si do niego dostp w dziaajcym
systemie. Nastpnie opiszemy metadane czasowe dostpne w rejestrze i sposoby wykorzystania
ich w ekspertyzach. Na kocu znajdziesz kilka ostrzee przed puapkami dotyczcymi tego,
jak aplikacje 32-bitowe korzystaj z rejestru w systemach 64-bitowych. Wyposaony w t wiedz
bdziesz mg przej do tego, co najlepsze do analizy danych.
Wprowadzenie do rejestru
Rejestr dzieli si na kilka gazi, w ktrych przechowywane s informacje dotyczce uytkownikw
i systemu. Kada ga jest przechowywana na dysku w postaci pliku. Pliki te s nieczytelne dla
czowieka, ale mona je przetwarza za pomoc rnych narzdzi, ktrych opis znajdziesz w tym
podrozdziale. Jak si przekonasz, gazie z danymi uytkownikw i systemowymi mog zawiera
mnstwo materiau dowodowego, wic naley zdoby je wszystkie. Jest to szczeglnie wane
w przypadkach, gdy interesujce nas konto uytkownika logowao si w systemie interaktywnie,
poniewa ga rejestru dotyczca tego konta moe zawiera cenne informacje o jego aktywnoci.
System Windows przechowuje pi gwnych gazi rejestru w katalogu %SYSTEMROOT%\
system32\config: SYSTEM, SECURITY, SOFTWARE, SAM oraz DEFAULT. S to nazwy plikw
reprezentujcych poszczeglne gazie zwr uwag na brak rozszerzenia. Szerzej o tych
gaziach i ich zawartoci piszemy dalej w tym podrozdziale.
Jak si zapewne spodziewasz, gazie rejestru dotyczce uytkownikw s przechowywane
w katalogach profili tych uytkownikw. Jednak dwie gazie tego typu, NTUSER.DAT
i USRCLASS.DAT, s przechowywane w rnych miejscach, w zalenoci od wersji systemu Windows.
Windows XP i Server 2003
\Documents and Settings\<user>\NTUSER.DAT
\Documents and Settings\<user>\Local Settings\Application
Data\Microsoft\Windows\USRCLASS.DAT
Windows Vista, 7 i Server 2008
\Users\<user>\NTUSER.DAT
\Users\<user>\AppData\Local\Microsoft\Windows\USRCLASS.DAT
Aby skopiowa gazie rejestru z dziaajcego systemu, naley uy specjalnego narzdzia z dostpem
do surowego dysku. Nie da si tak po prostu ich skopiowa za pomoc Eksploratora Windows.
Uwaga Pamitaj, e system Windows tylko przechowuje profile tych uytkownikw, ktrzy zalogowali si
interaktywnie. Jeeli uytkownik zalogowa si przez sie (np. podczas montowania udziau), system
nie utworzy dla niego katalogu z profilem ani gazi rejestru dla jego konta. W zwizku z tym brak
katalogu profilu uytkownika nie oznacza, e uytkownik ten nigdy nie uwierzytelnia si w systemie.
332 INCYDENTY BEZPIECZESTWA
Informacje w rejestrze maj struktur drzewa, ktre mona podzieli na trzy skadniki: klucze,
wartoci i dane. Gdyby porwna t struktur do systemu plikw, klucze byyby ciekami
do katalogw, wartoci nazwami plikw, a dane zawartoci plikw.
Na rysunku 12.14 przedstawiono przykad klucza, wartoci i danych rejestru systemu Windows
w systemowym edytorze rejestru (regedit.exe). W przykadzie tym HKEY_LOCAL_MACHINE\
SOFTWARE\Krhonos\OpenCL\Vendors\ jest kluczem, nvcuda.dll jest wybran wartoci,
a 0x00000000(0) to dane.
Dane rejestru mog by zakodowane na rne sposoby. Z kad wartoci rejestr zapisuje pole
typu wartoci okrelajce struktur towarzyszcych mu danych. Jest wiele rnych typw, od prostych
liczb i acuchw po listy i nawet dane binarne. W efekcie niektre wartoci rejestru s czytelne dla
czowieka, a do odczytania innych potrzebne s specjalne narzdzia dekodujce. Dalej w tym podrozdziale
opisalimy kilka z tych narzdzi, a na kocu zamiecilimy zestawienie zalecanych programw do analizy
rejestru. Wicej informacji o typach wartoci rejestru mona znale na poniszej stronie internetowej.
W INTERNECIE
msdn.microsoft.com/en-us/library/windows/desktop/ms724884(v=vs.85).aspx
Gdzie w tych kluczach s reprezentowane rne pliki gazi? Zaczniemy od klucza HKLM,
poniewa jest najprostszy: podklucze HKLM\Software, HKLM\Security, HKLM\System oraz
HKLM\SAM zawieraj odpowiednio tre gazi SOFTWARE, SECURITY, SYSTEM i SAM.
Klucz HKEY_USERS zawiera nastpujce podklucze.
HKU\.DEFAULT jest mapowany na ga DEFAULT.
HKU\{SID} jest tworzony dla kadego identyfikatora zabezpiecze uytkownika (SID)
w systemie. Podklucz kadego klucza SID odpowiada plikowi gazi rejestru NTUSER.DAT
odpowiedniego uytkownika.
HKU\{SID}_Classes jest tworzony dla kadego identyfikatora zabezpiecze SID uytkownika
w systemie. Podklucz kadego identyfikatora SID odpowiada plikowi gazi USRCLASS.DAT
danego uytkownika.
Klucz HKEY_CURRENT_USER to tylko dowizanie symboliczne do HKEY_USERS\{SID}\
dla uytkownika, ktry jest aktualnie zalogowany w konsoli.
Klucz HKEY_CURRENT_CONFIG jest mapowany na HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Hardware Profiles\XXXX, gdzie XXXX to czterocyfrowa liczba reprezentujca
aktywny profil. Element CurrentControlSet z tej cieki to cze wskazujce na HKLM\SYSTEM\
ControlSetXXX, gdzie XXX jest trzycyfrow liczb reprezentujc aktywny zestaw kontrolny konfiguracji.
I w kocu klucz HKEY_CLASSES_ROOT jest poczeniem podkluczy z HKLM\Software\Classes
i HKEY_CURRENT_USER\Software\Classes. Szczegowy opis sposobu tworzenia tego poczonego
widoku mona znale na poniszej stronie internetowej.
W INTERNECIE
msdn.microsoft.com/library/windows/desktop/ms724475.aspx
Nie prbuj wszystkiego zapamita, bo jest tego naprawd duo. Wystarczy tylko podczas
szukania danych w rejestrze systemowym wiedzie, e takie mapowanie ma miejsce. Jeli bdziesz
pracowa z plikami gazi z wyczonego systemu, nie znajdziesz adnej z tych wirtualnych
cieek, np. HKEY_CURENT_CONFIG czy HKEY_CURRENT_USER, i niektrych podkluczy, np.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet, ktre istniej tylko w dziaajcym systemie.
Uwaga Zmiany w podkluczach nie maj wpywu na znacznik czasu ostatniej modyfikacji klucza nadrzdnego.
Przykadowo dodanie wartoci Test do klucza HKLM\Sciezka\Do\Przykladu\RegKey\ spowodowaoby
tylko modyfikacj znacznika czasu klucza RegKey, nie kluczy Sciezka, Do ani Przykladu.
334 INCYDENTY BEZPIECZESTWA
Zwr uwag na brak znacznikw czasu utworzenia i ostatniego uycia. Ponadto rejestrowe
znaczniki czasu s zwizane tylko z kluczami, a nie z wartociami ani danymi. Ograniczenia te
sprawiaj, e bez dodatkowego kontekstu nie da si stwierdzi, czy znacznik LastWriteTime
klucza reprezentuje czas utworzenia tego klucza, czy jego aktualizacj, oraz nie ma moliwoci
dowiedzenia si, ktra warto w kluczu zostaa zmieniona. Analityk moe sprbowa
wydedukowa, jakie byo znaczenie ostatniej modyfikacji w kluczu poprzez przeanalizowanie
i skorelowanie innych faktw, np. dowodw pochodzcych z systemu plikw i dziennikw zdarze.
Przyjrzymy si np. znanemu kluczowi automatycznego uruchamiania okrelajcego programy
uruchamiane wraz z systemem operacyjnym:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\.
W tabeli tej przedstawione s trzy wartoci klucza \Run\: VMWare Tools, Adobe Reader Speed
Launcher oraz winupdat. Ostatnia wydaje si podejrzana. Czy da si ustali, kiedy zostaa dodana
do rejestru bez posiadania dodatkowych materiaw? Znacznik czasu LastWriteTime w kadym
wierszu tabeli odnosi si do tego samego klucza zawierajcego wszystkie te trzy wartoci i ulegnie
modyfikacji, gdy zmieni si ktra z tych wartoci lub co w zawartych w nich danych (albo gdy
zostanie dodana lub usunita jaka warto). Oczywicie gdybymy mieli dostp do metadanych
systemu plikw lub innych informacji pozwalajcych dowie, e plik
C:\windows\addins\winupdat.exe zosta utworzony dnia 2012-08-30 o godzinie 02:34:30 lub w jej
pobliu w okresie aktywnoci hakera, moglibymy wycign poparty mocnymi dowodami wniosek,
e klucz ten zosta zmodyfikowany z powodu dodania wartoci winupdat.
Brak szczegowych informacji czasowych w rejestrze ma jeszcze jedn wad system Windows
czsto aktualizuje znacznik czasu LastWriteTime podczas aktualizacji systemu i instalacji dodatkw
serwisowych, a czasami nawet w wyniku ponownego uruchomienia komputera, z ktrym zawsze
wie si modyfikacja duej iloci kluczy rejestru. Zdarzenia takie czsto s wyranie widoczne
podczas analizy osi czasu rejestru i filtrowania kluczy wg znacznika LastWriteTime. Jeli zauwaysz,
e w tej samej sekundzie lub minucie zostao zaktualizowanych wiele kluczy zwaszcza w jednej
ciece lub hierarchii cieek to prawdopodobnie znalaze lady zmian wprowadzonych przez
system operacyjny, aktualizacj oprogramowania lub jak aplikacj zabezpieczajc, np. program
antywirusowy.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 335
W INTERNECIE
code.google.com/p/mft2csv/wiki/SetRegTime
W INTERNECIE
msdn.microsoft.com/en-us/library/windows/desktop/aa384253(v=vs.85).aspx
Aby nie byo za atwo, w wersjach systemu Windows starszych od Windows Server 2008 R2
i Windows 7 podsystem WoW64 wykonuje odbijanie zamiast (a czasami w dodatku do)
przekierowywania. Proces odbijania polega na synchronizacji kopii tych podkluczy rejestru,
wartoci oraz zawartych w nich danych, ktre musz by takie same w 32- i 64-bitowym widoku
rejestru. Bardziej szczegowy opis tego procesu znajduje si w artykule pt. Registry Reflection.
336 INCYDENTY BEZPIECZESTWA
W INTERNECIE
msdn.microsoft.com/en-us/library/windows/desktop/aa384235(v=vs.85).aspx
Procesy przekierowywania i odbijania mog mie znaczny wpyw na ledztwo. Jeli uyjemy
32-bitowego narzdzia do zbierania i analizowania danych z rejestru w dziaajcych systemie,
moemy przeoczy cae zbiory podkluczy, ktre podsystem WoW64 uczyni niedostpnymi.
Analogicznie, naley zna znaczenie cieek rejestru pod podkluczami z czonem Wow6432Node.
ktre mona napotka podczas analizy osi czasu i innych rodzajw analiz.
Analiza
Jakiego rodzaju informacje mona w takim razie wydoby z rejestru? Lepiej jednak byoby chyba
spyta, czego nie mona stamtd wydoby? W tym punkcie opisujemy niektre klucze i wartoci,
ktre okazay si najbardziej przydatne w naszych ledztwach. Dla uatwienia podzielilimy go
na nastpujce cztery podpunkty.
Klucze rejestru dotyczce konfiguracji systemu.
Bufor danych o zgodnoci aplikacji.
Klucze rejestru dotyczce automatycznego uruchamiania aplikacji.
Klucze rejestru gazi uytkownika.
W INTERNECIE
support.microsoft.com/kb/246120
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 337
W INTERNECIE
support.microsoft.com/kb/243330
W INTERNECIE
Biaa ksiga www.mandiant.com/library/Whitepaper_ShimCacheParser.pdf
Parser bufora danych o zgodnoci aplikacji github.com/mandiant/ShimCacheParser
Jak napisalimy wczeniej, data ostatniej modyfikacji w buforze danych o zgodnoci aplikacji
pochodzi z atrybutu Standard Information pliku. Zaobserwowalimy, e jeli kto zmieni t dat
w nielegalny sposb, we wpisie bufora rwnie znajdzie si zmieniony znacznik czasu. Ponadto
w podrozdziale o systemie plikw NTFS pisalimy, e znacznik czasu ostatniej modyfikacji nie
musi wskazywa daty utworzenia pliku. W niektrych przypadkach data ta moe pochodzi
z systemu lub nonika rdowego.
Uwaga Firma Microsoft przestrzega przed wykorzystywaniem kont domenowych z duymi uprawnieniami,
zwaszcza administratorw domen, do wykonywania usug. Jeli haker przejmie kontrol nad
usug lub wykradnie jej dane powiadczajce tosamo, od razu bdzie mg korzysta z tych
wszystkich uprawnie. Sytuacje takie maj miejsce w przypadkach wama na serwer SQL,
serwery sieciowe i do innych le skonfigurowanych usug aplikacji.
Jak wyglda konfiguracja usug w rejestrze? Kada usuga ma wasny zbir wartoci i podkluczy
w kluczu HKLM\CurrentControlSet\services\{nazwausugi}\, w ktrym czon {nazwausugi}
reprezentuje krtk nazw danej usugi. Dziaaniem kadej usugi moe sterowa kilka rnych
wartoci i podkluczy. Poniej znajduje si lista najwaniejszych z nich.
W INTERNECIE
Firma Microsoft opisaa wszystkie wartoci kluczy i wywoywane przez nie efekty na stronie
support.microsoft.com/kb/103000.
DisplayName duga deskryptywna nazwa usugi mogca zawiera spacje oraz due
i mae litery. Maksymalna dugo to 256 znakw.
Description komentarz opisujcy sposb dziaania lub przeznaczenie usugi.
ImagePath cieka do pliku wykonywalnego (w przypadku usugi) lub pliku .sys
(w przypadku sterownika), ktry ma zosta uruchomiony.
Start klucz okrelajcy sposb i czas zaadowania sterownika lub usugi. Przedzia
dozwolonych wartoci tego klucza to 0-4. Wikszo szkodliwych programw ma warto
ustawion na 2 (automatycznie):
0x0 przez proces rozruchu (przez program adujcy jdro dotyczy tylko sterownikw),
0x1 przez system (przez podsystem wejcia-wyjcia podczas inicjacji jdra dotyczy
tylko sterownikw),
0x2 automatycznie (przez Meneder kontroli usug podczas uruchamiania systemu
dotyczy tylko usug),
0x3 rcznie (aplikacja uytkownika musi bezporednio zada uruchomienia usugi),
0x4 wyczone.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 343
RYSUNEK 12.15. Klucz rejestru usugi LanmanWorkstation. Wyrnieniem zaznaczono warto ServiceDll,
ktra jest ustawiona na %SystemRoot%\System32\wkssvc.dll
Jako e jest wiele sposobw wykonywania usug, podczas sprawdzania, czy dana usuga moe
adowa szkodliwy plik, zawsze naley przyjrze si wartociom ImagePath i ServiceDll (jeli istnieje).
Podczas prowadzonych ledztw odkrylimy, e hakerzy wol instalowa szkodliwe programy jako
344 INCYDENTY BEZPIECZESTWA
ServiceDll, adujc je przez svchost.exe atwiej si ukry na licie procesw wrd wielu podobnie
adowanych usug. Haker moe utworzy now usug lub zmieni konfiguracj parametru ServiceDll
istniejcej, lecz wyczonej mao znaczcej usugi.
W INTERNECIE
technet.microsoft.com/en-us/library/cc754599.aspx
RYSUNEK 12.16. Wynik polecenia sc query wykonanego w celu sprawdzenia stanu usugi wudfsvc
Jeli za pomoc narzdzi API systemu Windows lub drog analizy obrazu pamici pozyska si
dodatkowo list procesw, mona te przejrze dziaajce usugi warto ImagePath kadej z nich
bdzie zgadza si z nazw dziaajcego procesu, ktrego procesem nadrzdnym najczciej jest
services.exe. A co z wszystkimi zgrupowanymi hostowanymi usugami dziaajcymi pod instancjami
svchost.exe? Skd wiadomo, ktra instancja svchost.exe obsuguje okrelon usug?
Jest kilka narzdzi do analizy pamici, np. Volatility Framework, potraficych przeanalizowa
dane konfiguracyjne usug z pamici i powiza nazwy dziaajcych usug z identyfikatorami
procesw. Ponadto zawsze mona za pomoc polecenia konsoli tasklist /svc (macierzyste
polecenie systemu Windows) utworzy list usug dziaajcych pod kadym procesem svchost.exe.
Przykadowo na rysunku 12.17 wida, e pod kontrol svchost.exe (PID 1052) dziaaj dwie usugi
RpcEptMapper i RpcSs.
RYSUNEK 12.17. Wynikiem polecenia tasklist /svc jest lista dziaajcych usug zgrupowanych wg
identyfikatorw procesw
Podobne zastosowanie ma klucz RunOnce. Warto do niego dodana zostanie uruchomiona raz,
a nastpnie usunita.
Instalator aktywny
Jest to mechanizm systemu Windows przeznaczony dla wszystkich uytkownikw i sucy do obsugi
procesu instalacji programw oraz aktualizacji. Dodano go w systemie Windows 98 i wci uywa go
wiele legalnych aplikacji, jak i szkodliwych programw. Klucze instalatora aktywnego (Active Setup)
znajduj si w dwch miejscach:
HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components,
HKEY_USERS\{SID}\SOFTWARE\Microsoft\Active Setup\InstalledComponents.
W typowym systemie pod kluczem \Installed Components\ znajduj si klucze o nazwach
odpowiadajcych wartociom GUID. Aplikacje z reguy generuj i wykorzystuj te identyfikatory
po to, by nie doszo do przypadkowego nadpisania ustawie. Jednak hakerzy czsto s leniwi
i wykorzystuj ten sam identyfikator GUID w wielu generacjach swoich szkodliwych programw.
Czasami mona zbada dokadniej te identyfikatory (czsto po prostu wpisujemy je do wyszukiwarki
Google), aby dowiedzie si, czy zostay wykryte i zarejestrowane w publicznie dostpnych portalach,
biuletynach producentw oprogramowania antywirusowego, na blogach o tematyce bezpieczestwa
komputerowego lub forach. To znacznie uatwia wykrywanie znanych zagroe.
Podklucz GUID legalnego elementu aktywnego instalatora moe mie wiele wartoci, np.
Version, IsInstalled i StubPath. Na rysunku 12.19 pokazano klucz Active Setup platformy .NET
Framework. Wartoci te pomagaj w funkcjonowaniu klucza Active Setup podczas logowania
uytkownika aplikacja moe sprawdzi, czy dany klucz Active Setup w HKLM jest obecny take w HKCU,
porwna wartoci oraz zdecydowa, co robi dalej (np. wykona instalacj lub aktualizacj).
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 347
RYSUNEK 12.19. Legalny klucz Active Setup\Installed Components platformy .NET Framework
Jednak najwaniejsz wartoci wrd tych kluczy i jedyn, ktrej naprawd uywaj hakerzy
jest StubPath. Zawiera ona ciek do pliku wykonywalnego wraz z potrzebnymi argumentami.
Haker moe wic wygenerowa klucz na kocu cieki \Active Setup\Installed Components\{GUID}\,
ustawi warto StubPath i w ten sposb zapewni sobie uruchamianie programu wraz z systemem
lub logowaniem uytkownika (w zalenoci od wybranej gazi rejestru).
Uwaga Przykadowo jedna z domylnych konfiguracji backdoora Poison Ivy wykorzystuje klucz Active Setup
(rysunek 12.20).
RYSUNEK 12.20. Klucz Active Setup utworzony przez program Poison Ivy w celu przechowywania danych
konfiguracja ta uruchamia C:\WINDOWS:wins.exe, czyli alternatywny strumie katalogu C:\WINDOWS
AppInt_DLLs
Warto rejestru AppInt_DLLs zawiera list plikw DLL, ktre bd automatycznie zaadowane,
gdy zostanie uruchomiona jakakolwiek aplikacja dziaajca w trybie uytkownika poczona
z user32.dll. Jeli do wartoci tej haker doda szkodliwy plik DLL, jego kod zostanie wstrzyknity
do kadego uruchomionego pniej programu:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
348 INCYDENTY BEZPIECZESTWA
Na to, czy dany plik zdefiniowany w wartoci AppInt_DLLs rzeczywicie zostanie zaadowany, wpyw
maj wersja systemu Windows i pewne ustawienia konfiguracyjne. Istnieje moliwo globalnego
wyczenia adowania wszystkich plikw AppInt_DLLs. Naley w tym celu ustawi warto klucza
rejestru HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\LoadAppInit_DLLs
na 0x0. W systemach Windows Vista, 7 i Server 2008 mona te zada, aby wszystkie adowane
pliki wymienione w wartoci AppInit_DLLs byy podpisane cyfrowo. W tym celu naley ustawi
warto RequireSignedAppInit_DLLs (w tym samym kluczu) na 0x1. W systemie Windows
Server 2008 R2 wymg ten jest wczony domylnie.
Pakiety LSA
Trzy klucze rejestru su do konfigurowania usugi LSA (ang. Local Security Authority) i sposobu
obsugi przez ni zdarze uwierzytelniania. System Windows podczas rozruchu automatycznie
aduje pliki DLL podane w tych wartociach:
HKLM\System\CurrentControlSet\Control\Lsa\Authentication Packages,
HKLM\System\CurrentControlSet\Control\Lsa\Notification Packages,
HKLM\System\CurrentControlSet\Control\Lsa\Security Packages.
Szkodliwy program adowany jako pakiet LSA wcale nie musi implementowa jakiejkolwiek
funkcjonalnoci LSA musi tylko zosta prawidowo zaadowany i wykonany.
Pakiety uwierzytelniania (ang. Authentication Packages) implementuj kod potrzebny
do uwierzytelniania uytkownikw przez rne protokoy. Typowe ustawienia domylne pod
t wartoci to msv1_0 (lokalne i domenowe logowania NTLM), kerberos (uwierzytelnianie
Kerberos), wdigest (uwierzytelnianie szyfrowane) oraz tspkg (pakiet jednorazowego logowania
usug terminalowych). Pakiety zabezpiecze (ang. Security Packages) implementuj podstawowe
protokoy bezpieczestwa rozpoznawane przez system operacyjny i mog mie wartoci domylne
podobne do wartoci pakietw uwierzytelniania. W kocu pakiety powiadomie (ang. Notification
Packages) s wywoywane przy ustawieniu i zmienianiu hase. Do typowych domylnych danych
w tym kluczu zaliczaj si pakiety FPNWCLNT (ang. File and Print Services for NetWare), RASSFM
(ang. Remote Access Subauthentication), KDCSVC (ang. Kerberos Key Distribution Center Service)
oraz scecli (ang. Security Configuration Engine client). Firma Microsoft opisaa te pakiety
w dokumentacji zamieszczonej na stronie technet.microsoft.com/en-us/library/cc951687.aspx.
Kada z tych wartoci jest typu REG_MULTI_SZ, co znaczy, e ich dane s zbiorami acuchw
zakoczonych wartoci null. Ponadto do pakietw mona si odwoywa bez podawania
rozszerzenia .DLL. Jeli np. warto Security Packages zostanie ustawiona na wdigest msv1_0
kerberos, Windows automatycznie bdzie prbowa zaadowa pliki wdigest.dll, msv1_0.dll
oraz kerberos.dll z katalogu %SYSTEMROOT%\system32.
Haker moe wic wykorzysta te klucze do zapisywania danych szkodliwych programw.
Przykadowo dodanie evil do listy REG_MULTI_SZ w wartoci Authentication Packages spowoduje,
e system przy rozruchu bdzie automatycznie adowa plik %SYSTEMROOT%\system32\evil.dll.
Zaawansowany i szeroko znany wirus Flame wykorzystywa ten mechanizm przez dodawanie
referencji do swojej nazwy pliku (domylnie mssecmgr.ocx) do wartoci Authentication Packages.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 349
Uwaga Identyfikatory CLSID najpopularniejszych obiektw BHO (i niektrych wirusw) s takie same
w rnych systemach. Jeli wic natkniesz si na nieznany identyfikator, poszukaj go w Google.
Oczywicie haker zawsze moe zainstalowa szkodliwy plik DLL pod identyfikatorem legalnego
obiektu BHO, wic i tak trzeba sprawdzi podpis cyfrowy pliku, jego skrt oraz potwierdzi jego
autentyczno na inne sposoby.
Rozszerzenia powoki
Rozszerzenia powoki s dla Eksploratora Windows tym, czym obiekty BHO dla przegldarki
Internet Explorer. Umoliwiaj rozszerzanie funkcjonalnoci Eksploratora Windows, np. przez
dodanie elementw do menu kontekstowego, ktre pojawia si po klikniciu prawym przyciskiem
myszy pliku lub folderu. Podobnie jak obiekty BHO, rozszerzenia powoki s bibliotekami DLLCOM,
wic musz implementowa pewne interfejsy i mie okrelone funkcje eksportowane.
Kady plik DLL COM rozszerzenia powoki znajduje si na licie pod kluczem i wartoci
HKCR\CLSID\{CLSID}\InprocServer32\(Default). Ponadto rozszerzenie powoki musi si
zarejestrowa, aby mona byo rozszerza wybrane elementy powoki pliki, katalogi, napdy,
drukarki itd. Mechanizmy obsugi wszystkich tych elementw s wymienione w kluczu
HKCR\{podklucz}\shellex\.
350 INCYDENTY BEZPIECZESTWA
Uwaga W systemie Windows istnieje moliwo wcignicia wybranych identyfikatorw CLSID na czarn
list za pomoc klucza HKLM\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked.
Analogicznie, jeli ustawi si HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\
EnforceShellExtensionSecurity na 1, to system Windows bdzie adowa tylko rozszerzenia powoki
okrelone w kluczu HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved\.
W INTERNECIE
msdn.microsoft.com/en-us/library/windows/desktop/cc144110(v=vs.85).aspx
Winlogon GINA
Obecna w systemach Windows 2000, XP oraz Server 2003 usuga GINA (ang. Graphical Identification
and Authentication) umoliwia programistom aplikacji rozszerzanie i dostosowywanie systemowego
monitu logowania. To ona miaa zapewni alternatywne mechanizmy uwierzytelniania. Aby z niej
skorzysta, wystarczy zaimplementowa plik DLL z potrzebnymi funkcjami eksportowymi wymaganymi
przez usug oraz ustawi w wartoci rejestru GinaDLL ciek do tego pliku. Proces winlogon.exe
automatycznie zaaduje ten plik podczas logowania HKLM\Software\Microsoft\Windows NT\
CurrentVersion\Winlogon\GinaDLL.
Oczywicie hakerzy szybko odkryli, e funkcj t mona wykorzysta do niecnych celw.
Szkodliwy plik DLL GINA moe wykonywa ataki typu czowiek porodku podczas
uwierzytelniania w systemie Windows. Wikszo szkodliwego oprogramowania wykorzystujcego
funkcj GINA, z jakim mielimy do czynienia, po prostu rejestruje dane powiadczajce tosamo
wpisywane przez uytkownika podczas logowania w pliku.
Firma Microsoft zlikwidowaa moliwo tworzenia wasnych dostawcw GINA i w systemach
Windows Vista, Server 2008 oraz nowszych zastpia j now usug dostawcy powiadcze.
Ustawiajc t warto na szkodliwy plik DLL, haker mg zaadowa i wykona swj kod przy
kadym zdarzeniu logowania w systemie Windows. Firma Microsoft usuna wic t funkcjonalno
w systemach Windows Vista, Server 2008 i nowszych.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 351
Powoka logowania
Uytkownicy systemu Windows mog dostosowywa powok adowan podczas logowania.
Domylnie jest to Explorer.exe, ale w wartoci rejestru Winlogon\Shell mona ustawi dowolny
inny plik wykonywalny. Poniewa niestandardowe powoki s bardzo rzadko uywane, analityk
powinien zawsze dokadnie przyjrze si plikom wykonywalnym wskazywanym przez dwa
ponisze klucze:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell,
HKEY_USERS\{SID}\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\Winlogon\Shell.
Klucz i warto Winlogon\Shell mog znajdowa si w gazi HKLM i gaziach poszczeglnych
uytkownikw, poniewa kady uytkownik moe dostosowa powok do wasnych potrzeb.
Warto Userinit
Proces logowania do systemu automatycznie wykonuje pliki wykonywalne wymienione w wartoci
rejestru Userinit:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
Domylnie warto ta jest ustawiona na userinit, dziki czemu wykonywany jest plik
%SYSTEMROOT%\system32\userinit.exe. Plik ten z kolei aduje skrypty logowania i zasad
grupowych, kilka innych regu automatycznego wykonywania oraz powok Explorer.
Istnieje jednak te moliwo dopisania do tej wartoci dodatkowych cieek i nazw plikw
wykonywalnych (oddzielanych przecinkami).
Gdyby np. warto Userinit ustawiono na userinit, "C:\cieka\do\malware.exe", program
malware.exe byby automatycznie uruchamiany podczas logowania uytkownika.
Aby lepiej zrozumie, o co nam chodzi, spjrz na ponisz tabel z list czterech usug systemu
Windows. Sprbuj na podstawie tych informacji zgadn, czy ktre z nich s szkodliwe.
Podpowied: przynajmniej jedna usuga jest szkodliwa.
ServiceName: hpdj
Description: [none]
ImagePath: C:\Documents and Settings\johncd\Local Settings\Temp\hpdj.exe
ServiceName: iprip
Description: Listens for route updates sent by routers that use the Routing Information Protocol
ImagePath: C:\Windows\system32\svchost.exe
ServiceDll: C:\Windows\system32\iprinp32.dll
ServiceName: rfalert
Description: A module which sends alerts and notifications of monitered events
ImagePath: D:\Apps\RightFax\Bin\Alertmon.exe
ServiceName: synergy
Description: Allows another computer to share its keyboard and mouse with this computer
ImagePath: C:\Program Files\Synergy\synergyc.exe
Moe zauwaye, e w opisie usugi rfalert jest literwka (monitered zamiast monitored).
Usuga hpdj wydaje si podejrzana z kilku powodw szczeglnie dlatego, e nie ma opisu i jest
uruchamiana z katalogu temp uytkownika. W opisie usugi synergy jest bd polegajcy na braku
apostrofu w sowie its (powinno by it's). Zdziwisz si wic pewnie, jeli dowiesz si, e te trzy
usugi s legalnymi aplikacjami zewntrznymi (najdziwniejsza z nich, czyli hpdj, to pozostao
po oprogramowaniu drukarki firmy HP). W tabeli tej szkodliwa jest tylko usuga iprip. Jej nazwa
i opis s identyczne z danymi legalnej usugi iprip systemu Windows, ale haker zmodyfikowa
klucz ServiceDll tak, aby wskazywa szkodliwy plik iprinp32.dll, a nie prawidowy plik iprip.dll.
Skoro metoda wzrokowa jest tak zawodna, jakie s lepsze sposoby na wykrywanie
szkodliwych usug? Biorc pod uwag to, jakie s moliwoci zapisywania danych w rejestrze
w kluczach i powizanych z nimi plikach, ktre s przez nie adowane zalecamy wykonanie
nastpujcej procedury.
1. Wyklucz trwae pliki binarne podpisane przez godnych zaufania wydawcw ale nie wyrzucaj
cakowicie z krgu podejrze podpisanych plikw binarnych. Jeszcze do tego wrcimy.
2. Wyklucz trwae elementy utworzone poza interesujcym Ci okresem (jeli udao si
okreli taki okres z du pewnoci). rda informacji czasowych mog zawiera dane
o ostatniej modyfikacji klucza rejestru oraz czasy MACE powizanych z nimi plikw.
3. Zbadaj cieki pozostaych plikw binarnych. W ten sposb moe uda si zidentyfikowa
szkodliwe pliki zapisane w podejrzanych lokalizacjach, np. trwae pliki wykonywalne
dziaajce w katalogu plikw tymczasowych uytkownika. Ponadto istnieje moliwo
wykluczenia trwaych plikw binarnych na rzadko uywanych przez hakerw ciekach.
Analityk sam powinien wybra metod postpowania na podstawie posiadanej wiedzy
na temat taktyki i sposobu dziaania hakera. Hakerzy lubi wykorzystywa znane katalogi,
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 353
najczciej uruchamia si wraz z systemem i wraz z nim koczy dziaanie, wic zdarzenia jej
uruchomienia i zatrzymania zarejestrowane w systemowym dzienniku zdarze mog nie
odzwierciedla aktywnoci hakera, lecz raczej normalny cykl korzystania z komputera przez
uytkownika. Z drugiej strony daty pierwszego i ostatniego zdarzenia zwizanego z usug
pozwalaj okreli ramy czasowe wamania. Wicej informacji o typach wpisw dziennikowych
generowanych przez dziaajce usugi znajduje si w podrozdziale Dzienniki zdarze.
Uwaga Pamitaj o rnicy midzy zdekodowanymi datami w danych kluczy shellbag a czasem ostatniej
modyfikacji samego klucza. Ponadto musisz wiedzie, e z powodu duej zoonoci kluczy shellbag
czas ostatniej modyfikacji nie zawsze zgadza si z czasem dostpu do cieki. Dan Pullega napisa
na swoim blogu 4n6k doskona analiz kluczy shellbag, w ktrej znajdziesz wicej informacji
na ten temat (www.4n6k.com/2013/12/shellbags-forensics-addressing.html).
W INTERNECIE
Artyku opisujcy wyniki badania kluczy shellbag www.dfrws.org/2009/proceedings/p69-zhu.pdf
Wpis na blogu SANS computer-forensics.sans.org/blog/2011/07/05/shellbags
Skrypt shellbags.py Williego Ballenthina github.com/williballenthin/shellbags
sbag TZWorks www.tzworks.net/prototype_page.php?proto_id=14
UserAssist
Klucz ten rejestruje, ktre aplikacje uytkownik uruchomi za pomoc powoki Eksploratora
Windows:
HKEY_USERS\{SID}\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist
W INTERNECIE
UserAssistView firmy NirSoft http://www.nirsoft.net/utils/userassist_view.html
UserAssist Didiera Stevensa blog.didierstevens.com/2012/07/19/userassist-windows-2000-thru-windows-8/
358 INCYDENTY BEZPIECZESTWA
MUICache
Klucz rejestru MUICache jest kolejnym rdem informacji na temat programw uruchamianych
przez uytkownika. System Windows zapisuje w nim pene cieki do plikw wykonywalnych
i skryptw wsadowych uruchamianych przez Eksplorator (rysunek 12.24). Wartoci i dane klucza
MUICache s przechowywane w nastpujcych lokalizacjach.
Windows Vista, 7, Server 2008 HKEY_USERS\{SID}_Classes\Local Settings\
Software\Microsoft\Windows\Shell\MuiCache
Windows XP i Server 2003 HKEY_USERS\{SID}\Software\Microsoft\Windows\
ShellNoRoam\MUICache
Dane zwizane z kad wartoci zawieraj opis FileDescription pliku wykonywalnego z jego
sekcji Version Information Resources lub po prostu nazw pliku, jeli opis jest niedostpny.
Pamitaj, e FileDescription i inne acuchy PE Resource Version Information mona ustawi
na dowoln warto nic nie stoi na przeszkodzie, aby wirus wypeni te pola wartociami
wygldajcymi na legalne.
Cho przydatno tego klucza w ledztwach jest znana od do dawna, firma Microsoft
dostarcza niewiele informacji na jego temat. Nie jest jasne, czy liczba ledzonych plikw
wykonywalnych jest ograniczona, ani czy zmienia si w zalenoci od wersji systemu operacyjnego
Windows. Ponadto klucz MUICache, w odrnieniu od UserAssist i Prefetch, nie rejestruje czasu
ani czstotliwoci wykonywania.
Wartoci i dane klucza MUICache s czytelne, wic nie trzeba ich dekodowa za pomoc
adnych specjalnych narzdzi, aby je podda analizie. Firma NirSoft udostpnia darmowy program
o nazwie MUICacheView, za pomoc ktrego mona szybko przejrze zawarto tego klucza
w dziaajcym systemie.
W INTERNECIE
www.nirsoft.net/utils/muicache_view.html
RecentDocs
Klucz ten zawiera list ostatnio otwieranych plikw (nie tylko dokumentw, lecz z wszystkimi
rozszerzeniami) wykorzystywan w menu Plik rnych aplikacji:
HKEY_USERS\{SID}\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
Jeli przyjrzysz si zawartoci klucza TypedURLs w systemie Windows XP, wrd adresw URL
moesz z zaskoczeniem znale cieki lokalne (np. C:\Windows). Eksplorator Windows i Internet
Explorer s cile powizane, przez co system operacyjny rejestruje wpisywane bezporednio cieki
do katalogw lokalnych i UNC w taki sam sposb jak adresy internetowe. W zwizku z tym analiza
tego klucza pozwala czasami znale dowody na to, e uytkownik korzysta z okrelonych cieek,
cho bez szczegw, takich jak czas dostpu.
W systemach Windows Vista i nowszych w kluczu TypedURLs cieki lokalne i UNC nie s ju
rejestrowane. Firma Microsoft utworzya dla nich nowy klucz: HKEY_USERS\{SID}\Software\
Microsoft\Internet Explorer\TypedPaths. Struktura tego klucza jest taka sama jak klucza
TypedURLs: podwartoci maj nazwy url# w zakresie od 1 do 25, a url1 oznacza ostatnio
otwierany katalog.
UsernameHint z domyln nazw uytkownika dla zdalnego poczenia oraz warto CertHash,
jeli przy pierwszym poczeniu zdalny system dostarczy certyfikat. W efekcie z kluczy tych mona
si dowiedzie, z czym uytkownik prbowa nawiza poczenie RDP i jako kto prbowa si
zalogowa. Czas ostatniej modyfikacji podkluczy klucza \Servers\ moe wskazywa dat ostatniej
aktualizacji danych konfiguracyjnych wybranego adresu.
AutoRuns technet.microsoft.com/en-us/sysinternals/bb963902
Program AutoRuns i towarzyszce mu narzdzie konsolowe o nazwie autorunsc
to skadniki popularnego pakietu SysInternals firmy Microsoft. Wprawdzie nie jest
to narzdzie cile przeznaczone do analizy rejestru, za jego pomoc mona znale
i skonsolidowa wiele mechanizmw trwaoci w systemie Windows wcznie
z mnstwem kluczy, o ktrych bya mowa wczeniej w tym podrozdziale. Ponadto
aplikacja ta sprawdza podpisy cyfrowe, oblicza skrty oraz pobiera informacje o zasobach
cyfrowych (np. o nazwie wydawcy) wszystkich trwaych plikw wykonywalnych. Dziki
tym wszystkim funkcjom program znacznie uatwia identyfikowanie szkodliwych regu
automatycznego uruchamiania. Naley jednak pamita, e narzdzie AutoRuns pracuje
tylko na dziaajcych systemach, tzn. nie da si z jego pomoc analizowa martwych
gazi rejestru pobranych do analizy ani obrazw wykonanych na potrzeby ledztwa.
Redline www.mandiant.com/resources/download/redline
Narzdzie do analizy na ywo Redline firmy Mandiant zawiera kilka moduw
inspekcyjnych, dostpnych podczas budowy skryptu kolektora, za pomoc ktrych mona
przeanalizowa i przetworzy rejestr. Modu do obsugi rejestru Registry zwraca zwyk
tabel z wykazem wszystkich kluczy, wartoci i danych wraz z czasami ostatniej modyfikacji
kluczy. Modu Services czy informacje o usugach z Menedera kontroli usug, rejestru
i systemu plikw umoliwia to sprawdzenie skrtw MD5 i podpisw cyfrowych plikw
binarnych usug, podgldanie ich stanu dziaania i identyfikatorw procesw oraz zbadanie
innych atrybutw, takich jak opis i nazwa. W kocu modu Persistence dziaa podobnie jak
narzdzie AutoRuns z pakietu SysInternals. Znajduje wiele kluczy rejestru automatycznego
uruchamiania (jak rwnie pewne inne mechanizmy trwaoci niezwizane z rejestrem),
bada wskazywane przez nie pliki binarne oraz dostarcza rnych metadanych, takich jak
znaczniki czasu, skrty i informacje o podpisach cyfrowych. Wszystkie te trzy moduy
pracuj tylko w dziaajcym systemie, tzn. nie da si przy ich uyciu przetwarza danych
z gazi rejestru pobranych do analizy. Ponadto naley wiedzie, e program Redline
standardowo nie dekoduje adnych innych typw kluczy rejestru oprcz kluczy
dotyczcych usug i automatycznego uruchamiania programw.
W kilku miejscach tego podrozdziau wspominalimy o rnych samodzielnych
specjalistycznych narzdziach analitycznych. W wielu przypadkach lepiej wykonuj one zadanie,
do ktrego zostay utworzone, ni bardziej oglne aplikacje, a przynajmniej maj wicej opcji
wejciowych i wyjciowych. Poniej przedstawiamy list narzdzi, o ktrych bya ju mowa,
oraz kilka nowych.
ShimCacheParser github.com/mandiant/ShimCacheParser
Skrypt w jzyku Python do analizy bufora danych o zgodnoci aplikacji. Przyjmuje dane
w wielu formatach, wcznie z martwymi gaziami rejestru, gaziami systemowymi,
binarnymi danymi klucz-warto oraz danymi w formatach Mandiant Intelligent Response
i Redline Collector.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 365
shellbags.py github.com/williballenthin/shellbags
Skrypt w jzyku Python do analizowania artefaktw shellbag powstaych podczas
interaktywnego korzystania z Eksploratora Windows. Przetwarza tylko martwe
i pobrane w obrazach gazie rejestru.
sbag www.tzworks.net/prototype_page.php?proto_id=14
Kolejne narzdzie do analizy kluczy shellbag. Naley wiedzie, e na razie licencja narzdzi
TZWorks pozwala tylko na uywanie ich do niekomercyjnych celw osobistych.
UserAssist Didiera Stevensa blog.didierstevens.com/2012/07/19/
userassist-windows-2000-thru-windows-8/
Narzdzie do analizowania klucza rejestru UserAssist z gazi uytkownika.
Nirsoft Registry Analysis Tools
www.nirsoft.net/windows_registry_tools.html
www.nirsoft.net/utils/muicache_view.html
www.nirsoft.net/utils/shell_bags_view.html
www.nirsoft.net/utils/userassist_view.html
www.nirsoft.net/utils/iecompo.html
Firma NirSoft udostpnia duy pakiet darmowych narzdzi do przeprowadzania ekspertyz.
Ich programy do pracy z rejestrem umoliwiaj analizowanie kluczy MUICache, ShellBags oraz
UserAssist, jak rwnie obiektw COM Internet Explorera. Wszystkie te aplikacje dziaaj tylko
w systemie Windows oraz wywietlaj informacje wycznie z gazi rejestru biecego systemu,
tzn. nie przetwarzaj martwych gazi rejestru.
identyfikatorem SID ktre s wykorzystywane przez rne funkcje systemu operacyjnego. Jeeli
haker zdobdzie interaktywny dostp do systemu, artefakty te pomog nam lepiej zorientowa si,
jakie byy jego poczynania.
Pliki LNK
Pliki skrtw systemu Windows, zwane te plikami czy ze wzgldu na rozszerzenie .lnk, peni rol
wskanikw do innych plikw lub folderw w systemie. Rni si one od dowiza symbolicznych
tym, e su tylko jako rozszerzenia dla Eksploratora Windows, podczas gdy dowizania symboliczne
s niewidoczne dla aplikacji i mog by traktowane przez programy jak pliki docelowe.
Pliki czy mog zosta utworzone na kilka sposobw, np. przez uytkownika korzystajcego
z opcji Utwrz skrt w menu kontekstowym wywietlanym po klikniciu pliku prawym przyciskiem
myszy. Czynno ta powoduje wygenerowanie pliku cza o nazwie [nazwa pliku oryginalnego]
skrt.lnk w tym samym katalogu. Ponadto system Windows moe automatycznie generowa
skrty, ktre zapisuje w katalogu profilu uytkownika, gdy plik zostanie otwarty w Eksploratorze.
W kocu pakiet Microsoft Office tworzy wasny zestaw plikw czy do ostatnio otwieranych
dokumentw w profilu uytkownika.
Dowody
Pliki czy zawsze maj rozszerzenie .lnk i mona je znale w nastpujcych miejscach.
Windows Vista, 7 i 2008
C:\Documents and Settings\%USERNAME%\Recent\
C:\Documents and Settings\%USERNAME%\Application Data\Microsoft\Office\Recent\
Windows XP i 2000
C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Recent\
C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Office\Recent\
Analiza
Pliki czy nie s tylko prostymi odnonikami do innych plikw znajdujcych si na dysku.
Zawieraj dodatkowo due iloci informacji przydatnych w ledztwie. W kadym takim pliku
znajduj si nastpujce metadane dotyczce pliku, ktry wskazuje:
pena cieka do pliku (z czasu, gdy by tworzony odnonik);
nazwa udziau sieciowego (jeli plik docelowy pochodzi z takiego rda);
numer seryjny woluminu docelowego;
atrybuty i rozmiar logiczny;
standardowe znaczniki czasu modyfikacji, dostpu i utworzenia wskazywanego pliku
z chwili jego ostatniego otwarcia;
identyfikator obiektu (ObjectID), przechowywany take w rekordzie MFT pliku docelowego
i wykorzystywany przez usug ledzenia czy rozproszonych.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 367
Dane te pozwalaj dowiedzie si, co uytkownik (lub haker) robi podczas interaktywnej sesji
szczeglnie, gdy poczy si je z innymi rdami dowodw i osi czasu. Przykadowo niedawno
pracowalimy przy sprawie wamania, w ktrej haker uzyska dostp do serwera przez Pulpit zdalny
i za pomoc przegldarki Internet Explorer dosta si do wewntrznego portalu firmy. W cigu kilku
godzin intruz pobra i zbada rne dokumenty programw Word i Excel z witryny. Otwarcie kadego
z tych plikw pozostawio lad w postaci pliku cza. Wszystkie te lady stanowiy swoisty zapis
jego aktywnoci. Mona byo sprawdzi, co haker oglda, kiedy pobrane pliki zostay utworzone
i otwarte oraz gdzie pliki te byy tymczasowo przechowywane. Pliki czy pozostay w systemie
nawet mimo wysiku, jaki haker woy w zacieranie ladw poprzez skasowanie historii
przegldarki internetowej i usunicie skopiowanych i pobranych plikw przed wylogowaniem.
Cho pliki LNK zawieraj czytelne dla czowieka acuchy tekstu i mog by analizowane
w edytorze szesnastkowym, zalecamy korzystanie ze specjalnych narzdzi rozpoznajcych ich
format i wywietlajcych zdekodowane informacje. Jest kilka komercyjnych programw, ktre
potrafi to robi, np. AccessData FTK i EnCase firmy Guidance. A to darmowe aplikacje tego typu.
W INTERNECIE
TZWorks lp tzworks.net/prototype_page.php?proto_id=11
Simple File Parser code.google.com/p/simple-file-parser/
Dowody
Dane list szybkiego dostpu s przechowywane w plikach z rozszerzeniami .automaticDestinations-ms
i .customDestinations-ms w nastpujcych katalogach:
C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations,
C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Recent\CustomDestinations.
368 INCYDENTY BEZPIECZESTWA
RYSUNEK 12.27. Wynik analizy listy szybkiego dostpu przez program JumpLister
Szesnacie pierwszych znakw nazwy pliku listy szybkiego dostpu moe odpowiada
identyfikatorowi aplikacji. Jako e wikszo z tych identyfikatorw oblicza system operacyjny,
s one takie same we wszystkich systemach. Na stronach Forensics Wiki mona znale listy
identyfikatorw popularnych aplikacji www.forensicswiki.org/wiki/List_of_Jump_List_IDs.
Analiza
Listy szybkiego dostpu mog by kolejnym rdem informacji o obiektach ostatnio uywanych
przez uytkownika zalogowanego interaktywnie w systemie. Podczas prowadzonych ledztw czsto
szukamy ladw ostatnio otwieranych katalogw wanie na listach szybkiego dostpu Eksploratora
Windows. Lista szybkiego dostpu Pulpitu zdalnego zawiera dane o ostatnich poczeniach, ktre
pozwalaj odtworzy ewentualn aktywno poziom hakera z systemu, ktrego zabezpieczenia udao
mu si zama. Natomiast z list szybkiego dostpu aplikacji uywanych do pracy, takich jak np.
pakiet Microsoft Office (a nawet Notatnik), mona dowiedzie si, jakie pliki byy otwierane
w czasie aktywnoci hakera. Informacje te mona porwna (lub uzupeni) z dodatkowymi
rdami, takimi jak klucze shellbag, klucze rejestru z rejestrem ostatnio uywanych elementw
oraz pliki LNK.
Nie mamy miejsca na dokadny opis struktury list szybkiego dostpu, ale istnieje kilka darmowych
narzdzi, za pomoc ktrych mona je przetwarza i dekodowa. Poniej przedstawiamy dwa z nich.
W INTERNECIE
JumpLister firmy WoanWare www.woanware.co.uk/forensics/jumplister.html
JumpListParser (jmp) firmy TZWorks tzworks.net/prototype_page.php?proto_id=20
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 369
Kosz
Kosz to magazyn do tymczasowego przechowywania plikw usunitych przez uytkownika za
pomoc Eksploratora Windows. Ta wprowadzona w systemie Windows 95 funkcja umoliwia
uytkownikowi, ktry zmieni zdanie, przywrcenie usunitego pliku, zanim zostanie
bezpowrotnie skasowany z dysku. Istnieje jednak moliwo pominicia Kosza. Wystarczy przed
naciniciem klawisza Del nacisn i przytrzyma klawisz Shift, aby plik zosta od razu usunity
naprawd. Jako e Kosz to tylko zbir katalogw o specyficznych uprawnieniach i prawach
dostpu, odtworzenie jego zawartoci nie sprawi analitykowi adnego problemu.
Dowody
W systemach plikw NTFS Kosz jest tworzony dla kadego woluminu osobno w nastpujcych
lokalizacjach:
Windows XP i Server 2003 \Recycler
Windows Vista, 7 i Server 2008 \$Recycle.Bin
System Windows nie wcza funkcji Kosza dla urzdze wymiennych, do ktrych zaliczaj si
m.in. pamici USB, ale zewntrzne dyski twarde maj wasny kosz w katalogach wymienionych
powyej (pod warunkiem, e s sformatowane w systemie plikw NTFS).
W systemie Windows Vista i nowszych struktura Kosza ulega znacznym modyfikacjom,
ale niektre cechy s niezmienne we wszystkich wersjach tego systemu operacyjnego. Zarwno
\Recycler\, jak i \$Recycle.Bin\ to katalogi ukryte, z ktrych kady ma podkatalogi odpowiadajce
kademu identyfikatorowi SID konta, ktre korzystao z Kosza. Uprawnienia NTFS tych folderw
mog uniemoliwia uytkownikom przegldanie usunitych plikw innych uytkownikw.
Gdy kto otwiera Kosz za pomoc Eksploratora Windows lub przez kliknicie ikony kosza na
pulpicie, w rzeczywistoci przechodzi do podkatalogu powizanego ze swoim identyfikatorem SID,
a nie gwnego. Na rysunku 12.28 przedstawiono zestawienie rnic midzy ciekami i stosowanymi
nazwami w Koszach w rnych wersjach systemu Windows.
Analiza
Aby przeanalizowa materia dowodowy z Kosza, naley wiedzie, co si dzieje w systemie,
w momencie gdy uytkownik usunie plik, ktry trafia do Kosza. W tym miejscu dowiesz si, jak
odzyska rne artefakty i metadane dostpne w Koszu w systemach Windows XP i Server 2003
oraz nowszych. Na koniec opisujemy metody, jakie hakerzy stosuj w celu wykorzystania Kosza
jako katalogu przerzutowego oraz przedstawiamy krtk list narzdzi polecanych do analizy
artefaktw z Kosza.
370 INCYDENTY BEZPIECZESTWA
RYSUNEK 12.28. Porwnanie Kosza w systemach Windows XP i Server 2003 (na grze) z Koszem w systemach
Windows Vista, 7 i Server 2008
Dziki temu wystarczy szybko przejrze plik INFO2, aby pozna zawarto Kosza na dowolnym
woluminie NTFS. Dalej przedstawilimy kilka narzdzi sucych do pobierania i analizowania
tych plikw.
Co w takim razie si stanie, gdy uytkownik wyle do Kosza katalog z plikami? Wwczas
system Windows utworzy folder o nazwie \Recycler\<SID>\DC#, gdzie # reprezentuje aktualn
warto indeksow Kosza. Zawarto oryginalnego katalogu zostanie przeniesiona w to miejsce,
ale zachowa oryginalne nazwy plikw i nie zostanie uwzgldniona w pliku INFO2. Wracajc do
poprzedniego przykadu, jeeli Bartek usunie folder C:\secrets\ zawierajcy plik MyPasswords.xlsx,
system Windows utworzy plik \Recycler\<SID Bartka>\DC3\MyPasswords.xlsx.
PAMI
Do tej pory koncentrowalimy si na dowodach nieulotnych, czyli takich, ktre mona pobra
zarwno z obrazw dyskw, jak i dziaajcych systemw. Jednak system Windows zapisuje te
wiele cennych artefaktw w pamici, wic ich pobranie moliwe jest wycznie w czasie jego
dziaania. Wprawdzie do wielu z tych ladw mona si dosta za pomoc API systemu Windows,
jednak najbardziej niezawodnym i najbezpieczniejszym sposobem jest ich bezporednie
przeanalizowanie i odtworzenie z pamici.
Jakiego rodzaju informacje zawiera pami? Lista przydatnych rzeczy jest duga i wraz z rozwojem
metod informatyki ledczej cigle dodawane s do niej nowe pozycje. Oto niektre z nich:
dziaajce procesy oraz obiekty i zasoby systemowe, z ktrymi procesy te wsppracuj;
aktywne poczenia sieciowe;
zaadowane sterowniki;
dane powiadczajce tosamo uytkownikw (mog by zaszyfrowane, zaciemnione albo
mog wystpowa w postaci zwykego tekstu);
fragmenty nieulotnych rde danych, takich jak rejestr, dzienniki zdarze i tabela MFT;
pozostaoci wczeniej wykonywanych polece konsoli;
resztki danych tekstowych, ktre na dysku wystpuj w formie zaszyfrowanej;
wane struktury danych w obrbie jdra, dziki ktrym mona uzyska wgld w obsug,
zachowanie i wykonywanie procesw.
Analiza ledcza pamici, podobnie jak systemu plikw NTFS i rejestru systemu Windows, to
skomplikowany temat, o ktrym bez trudu mona by napisa ca ksik. Dlatego w podrozdziale
tym opisujemy najwaniejsze skadniki pamici oraz to, co naley pobra do analizy. Pniej
przedstawiamy kilka artefaktw, ktre mona wydoby z pamici, np. dziaajce procesy, uchwyty
i sekcje pamici. Na koniec opisujemy pewne zaawansowane techniki hakerskie, takie jak
wstrzykiwanie procesw, ktre mona skutecznie przeanalizowa, tylko badajc pami.
Dowody
Tak jak wikszo nowoczesnych systemw operacyjnych, system Windows zawiera podsystem
pamici wirtualnej, ktry moe wykorzystywa zarwno pami RAM, jak i dysk twardy jako jedno
rdo pamici dla uruchamianych przez siebie procesw. Pami w systemie Windows jest wic
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 373
kompozycj dwch skadnikw pamici fizycznej i pliku stronicowania. Najpierw wic opisujemy
struktur kadego z tych wanych rde i sposb pobierania z nich danych. Ponadto powicamy
nieco miejsca jeszcze dwm innym rdom zwizanym z pamici zrzutom awaryjnym
i plikowi hibernacji ktre rwnie mona spotka podczas analizowania systemw Windows.
Pami fizyczna
Termin pami fizyczna oznacza po prostu zawarto pamici RAM. Mona j zdoby przez
utworzenie jej obrazu zasadniczo chodzi o to samo, co przy tworzeniu obrazu dysku twardego
(cho robi si to cakiem inaczej). Jeli w komputerze znajduj si 4 GB pamici RAM, obraz
pamici fizycznej bdzie mia dokadnie taki rozmiar.
Do pobierania pamici z systemu Windows najczciej uywa si specjalnych programw,
podobnie jak przy szukaniu danych podczas analizy na ywo i innych czynnoci ledczych.
Wikszo aplikacji z dziedziny informatyki ledczej mona uruchamia w trybie przenonym
(tzn. na napdzie USB), a nawet przez sie przy uyciu wczeniej zainstalowanego agenta. Niektre
pakiety umoliwiaj te pobieranie zawartoci pamici fizycznej przez poczenie Firewire
(IEEE 1394), ktre ma bezporedni dostp do pamici. Niestety popularno portw Firewire
wrd uytkownikw komputerw z systemem Windows stale spada.
Powiedzmy, e mamy ju obraz pamici. Co dalej? Kilkanacie lat temu najbardziej
zaawansowan technicznie metod byo poszukanie w obrazie acuchw tekstu w nadziei,
e uda si co wykry.
Na szczcie od tamtej pory techniki ledcze znacznie si rozwiny. Teraz mamy do dyspozycji
takie narzdzia jak Volatility Framework i Redline, za pomoc ktrych mona analizowa obrazy
pamici, rozpracowywa wewntrzne struktury zwizane z procesami obszaru uytkownika i jdra
oraz zapisywa je w formacie czytelnym dla czowieka. Na rysunku 12.29 przedstawiono te moliwoci
w postaci schematu. Moemy przeglda wiele artefaktw, np. szczegowe listy procesw i obiektw
adowanych przez kady proces. W punkcie Analiza pamici opisalimy, jak przeglda te
przetworzone struktury oraz narzdzia, ktre do tego su.
RYSUNEK 12.29. Narzdzia do analizy pamici umoliwiaj przetwarzanie zawartoci pamici fizycznej
i wydobywanie z niej takich struktur jak dziaajce procesy oraz wspierajce je zasoby z przestrzeni
uytkownika i jdra
374 INCYDENTY BEZPIECZESTWA
Plik stronicowania
Plik stronicowania to podstawowy skadnik architektury pamici w wikszoci nowoczesnych
systemw operacyjnych. Stanowi on zapasowe miejsce do przechowywania danych i z reguy
jest umiejscowiony na wolniejszym staym dysku. W pliku tym przechowywane s potrzebne
dziaajcym procesom dane, ktre nie zmieciy si w pamici fizycznej. Na szczcie dla
programistw aplikacji wszystkie zwizane z tym czynnoci s wykonywane bez ich wiedzy przez
procedury obsugi pamici jdra. Kademu procesowi uruchomionemu przez uytkownika
przydzielana jest pewna ilo pamici wirtualnej (przedzia adresw) do dyspozycji. Jdro
prowadzi tabel, w ktrej rejestruje, gdzie znajduje si kada strona pamici wirtualnej adres
prawdziwej pamici lub w obrbie pliku stronicowania oraz przesya dane w t i z powrotem,
zgodnie z zapotrzebowaniem. Gdy koczy si pami RAM, zwiksza si czstotliwo wykonywania
czynnoci zwizanych ze stronicowaniem, co niekorzystnie wpywa na szybko dziaania systemu.
Plik stronicowania jest wykorzystywany nie tylko przez aplikacje uytkownika, poniewa take
cz pamici wirtualnej jdra moe podlega stronicowaniu. Na rysunku 12.30 przedstawiono
bardzo oglny przegld relacji czcych pami wirtualn, plik stronicowania oraz pami
fizyczn. Naley podkreli, e dane nalece do przestrzeni pamici wirtualnej dowolnego
procesu nie musz zajmowa cigego obszaru pliku stronicowania lub pamici fizycznej.
Zrzuty awaryjne
Gdy dojdzie do awarii, system Windows automatycznie tworzy pliki zrzutu awaryjnego
zawierajce cz lub ca zawarto pamici. Mona je wykorzysta jak rodzaj czarnej skrzynki
pomocnej programistom do znalezienia bdu i rozwizania problemu, ktry spowodowa awari.
Czasami do destabilizacji systemu doprowadzaj le napisane wirusy, zwaszcza szkodliwe
sterowniki urzdze.
System Windows rejestruje dane awaryjne na trzech rnych poziomach. Do dotyczcych ich
ustawie mona dosta si przez skrt Zaawansowane ustawienia systemu w Panelu sterowania
naley przej na kart Zaawansowane, a nastpnie w czci Uruchamianie i odzyskiwanie
klikn przycisk Ustawienia. Ewentualnie modyfikacj tych ustawie mona te wykona
w kluczach rejestru, co opisano poniej.
Zrzut pamici jdra jest to domylne ustawienie w systemach Windows, Vista, 7,
Server 2008 i nowszych. Obejmuje ono wszystkie strony odczytu i zapisu jdra istniejce
w czasie awarii oraz list procesw i zaadowanych sterownikw. Rozmiar tego pliku moe
si zmienia w zalenoci od iloci pamici w systemie, ale zazwyczaj waha si w granicach
od kilkudziesiciu do kilkuset megabajtw.
May zrzut pamici ustawienie to obejmuje ograniczon ilo danych, takich jak
zaadowane sterowniki, kontekst procesora, stos wywoa jdra oraz metadane dotyczce
zatrzymanego procesu i wtku. Pliki te najczciej maj rozmiar poniej 5 MB i domylnie s
zapisywane w katalogu %SYSTEMROOT%\Minidump\. ciek t mona zmieni w wartoci
rejestru HKLM\SYSTEM\CurrentControlSet\Control\CrashControl\MinidumpDir.
Peny zrzut pamici ta opcja powoduje utworzenie kompletnego obrazu pamici fizycznej.
Pliki powinny mie rozmiar odpowiadajcy iloci pamici zamontowanej w komputerze.
Ustawienie to jest niedostpne w oknie dialogowym Uruchamianie i odzyskiwanie, ale mona
je wczy przez ustawienie wartoci rejestru HKLM\SYSTEM\CurrentControlSet\Control\
CrashControl\CrashDumpEnabled na 1. Pene zrzuty pamici domylnie s zapisywane
w pliku %SYSTEMROOT%\memory.dmp, ale mona to zmieni w wartoci rejestru
HKLM\SYSTEM\CurrentControlSet\Control\CrashControl\DumpFile.
Uwaga W systemach Windows Vista i Server 2008 oraz nowszych zrzuty awaryjne dotyczce aplikacji
uytkownika moe zapisywa funkcja Raportowanie bdw systemu Windows. Pliki te s
przechowywane w katalogu %LOCALAPPDATA%\CrashDumps oraz mog by konfigurowane
za pomoc klucza rejestru HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting\
LocalDumps.
376 INCYDENTY BEZPIECZESTWA
Wykonywanie penych zrzutw awaryjnych pamici wcza si rzadko, ale kady, kto trafi
na taki zrzut, moe uwaa si za szczciarza. Narzdzia do analizy pamici, np. Volatility
Framework i Moonsols Windows Memory Toolkit, potrafi przetwarza te zrzuty tak, jak
normalne obrazy pamici. Dysponujc plikami jdra i maych zrzutw, mamy znacznie bardziej
ograniczone moliwoci. Programici i analitycy wirusw najczciej do przegldania tych plikw
wykorzystuj macierzysty debugger systemu Windows o nazwie WinDbg.
Pliki hibernacji
Firma Microsoft wprowadzia funkcj hibernacji systemu w systemie Windows 98. Suy ona
do zachowywania stanu dziaajcego systemu przy jednoczesnym zmniejszeniu zuycia energii
do minimum. Jej dziaanie polega na tym, e najpierw zapisuje ca zawarto pamici na dysku,
a nastpnie wycza system. Przy wczaniu systemu plik hibernacji zostaje odczytany i jego
zawarto przeniesiona z powrotem do pamici, dziki czemu uytkownik otrzymuje z powrotem
nienaruszon poprzedni sesj. Domylna cieka do pliku hibernacji to
%SYSTEMDRIVE%\Hiberfil.sys.
Jeli wyglda Ci to na wykonywanie obrazu pamici, masz dobre przeczucie! Nie naley jednak
sdzi, e plik hibernacji to to samo, co surowa pami fizyczna jest skompresowany i zawiera
troch dodatkowych metadanych. W efekcie, jeli pobierze si plik hibernacji z systemu, naley go
potem przekonwertowa na format czytelny dla narzdzi ledczych. Mona do tego uy np. wtyczki
imagecopy do programu Volatility Framework, ktra zamienia pliki hibernacji na standardowe
obrazy pamici.
Analiza pamici
Opisalimy rda dowodw pamiciowych dostpne w systemie Windows, wic teraz moemy
przyjrze si metodom ich analizy. Najpierw przedstawiamy kilka najwaniejszych technikach
analitycznych, a nastpnie opisujemy niektre metody ataku z wykorzystaniem pamici stosowane
przez programistw wirusw.
Procesy
Mwic najprociej, z listy procesw mona si dowiedzie, co dziaa w systemie. Kady, kto
kiedykolwiek korzysta z Menedera zada lub narzdzi SysInternals Process Explorer i pslist,
widzia list procesw pobran za pomoc interfejsu API systemu Windows. Analizujc pami,
mona odtworzy te same dane poprzez zbadanie struktur danych jdra zwanych blokami
EPROCESS, ktre zawieraj informacje o wszystkich procesach uruchomionych w systemie.
Jeeli haker zastosowa technik typu rootkit, np. przechwytywanie (ang. hooking) lub szperanie
w obiekcie jdra w celu ukrycia procesu przed normalnymi funkcjami interfejsu API Windows,
z listy procesw odtworzonej w ten sposb mona otrzyma pene informacje o procesach.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 377
W INTERNECIE
moyix.blogspot.com/2008/08/linking-processes-to-users.html
RYSUNEK 12.31. Wyniki zwrcone przez wtyczk pslist programu Volatility Framework
Naley pamita, e procesy rejestruj tylko identyfikator PID procesu nadrzdnego, bez nazwy
i cieki. To narzdzie analityczne musi przejrze wszystkie identyfikatory i okreli relacje
hierarchiczne midzy procesami. Dlatego wanie te nie da si okreli rodzica procesu, ktry
zakoczy dziaanie identyfikator procesu nadrzdnego nie da si powiza z niczym,
co aktualnie dziaa.
378 INCYDENTY BEZPIECZESTWA
Uchwyty
Kady programista wie, e uchwyty su jako warstwa abstrakcji umoliwiajca aplikacjom
uytkownika uzyskiwanie poredniego dostpu do obiektw systemu Windows (np. plikw,
kluczy rejestru, tokenw zabezpiecze, wtkw itd.). Gdy aplikacja wywouje funkcj z API
Windows w celu interakcji z jakim obiektem np. aby otworzy plik wcza si meneder
obiektw jdra, ktry nadzoruje t operacj. Kady dziaajcy proces ma przechowywan w pamici
jdra tablic uchwytw, w ktrej zapisywane s wszystkie aktualnie posiadane przez niego uchwyty.
Przegldajc zawarto tej tablicy, mona wic odkry wszystkie uchwyty, ich typy oraz
odpowiadajce im obiekty.
Uwaga Popularny pakiet narzdzi dla systemu Windows o nazwie SysInternals zawiera prost aplikacj
o nazwie handle, za pomoc ktrej mona wywietli list wszystkich otwartych uchwytw
wszystkich dziaajcych procesw. Jest to szybki program, ktry do dziaania potrzebuje tylko
wiersza polece z uprawnieniami administratora. Take aplikacja SysInternals Process Explorer
umoliwia wywietlenie listy uchwytw w dziaajcym systemie. Naley jednak podkreli, e oba
te narzdzia wykorzystuj interfejs API systemu Windows, a nie pobieraj danych z surowej pamici.
Oczywicie aplikacja nie musi cay czas trzyma otwartego uchwytu do wykorzystywanego
przez siebie zasobu. Przykadowo programy rejestrujce naciskane klawisze mog buforowa
zdobyte dane w pamici i tylko co pewien czas przesya je do pliku. Dlatego list uchwytw,
tak jak kade inne ulotne rdo dowodw, naley traktowa jako wgld w wybrany moment
dziaalnoci pliku wykonywalnego.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 379
Sekcje
Kady znajdujcy si w pamici proces posiada wasn wirtualn przestrze adresow, ktra
zasadniczo jest przedziaem adresw przydzielonym przez menedera pamici na potrzeby odczytu
i zapisu danych oraz wykonywania kodu przez proces. Przypominamy, e przestrze t nazywamy
wirtualn dlatego, e kada jej cz moe by zlokalizowana zarwno w pamici fizycznej, jak
i w stronie na dysku. Z perspektywy procesu nie ma to znaczenia jest to tylko cigy szereg adresw.
System operacyjny zajmuje si przesyaniem danych do i z pamici fizycznej i udostpnianiem
odpowiednich stron pamici na danie.
380 INCYDENTY BEZPIECZESTWA
W INTERNECIE
www.dfrws.org/2007/proceedings/p62-dolan-gavitt.pdf
Na rysunku 12.34 pokazano list sekcji pamici procesu w programie Redline. Do czego mona
wykorzysta te informacje? Przykadowo do zidentyfikowania wszystkich bibliotek DLL zaadowanych
przez dziaajcy w pamici proces. Na podstawie przegldu tych bibliotek i importowanych przez
nie funkcji mona wycign wstpne wnioski na temat moliwoci pliku wykonywalnego. Ponadto
mona zbada metadane dyskowe kadego pliku DLL adowanego do pamici, sprawdzi podpisy
cyfrowe, zweryfikowa sumy kontrolne itd. W ten sposb mona wykry szkodliwe biblioteki DLL.
Wiele narzdzi potrafi wydoby lub zrzuci zawarto wybranych sekcji, umoliwiajc analitykowi
odzyskanie czci zmapowanych plikw, bibliotek DLL lub plikw wykonywalnych ze zrzutu
pamici. W kocu analiza sekcji czasami pozwala wykry prby szperania w procesach, takie jak
ukradkowe adowanie bibliotek DLL albo wykonywanie kodu w pamici. Nieco dalej piszemy
szerzej o tych technikach.
RYSUNEK 12.34. Lista sekcji w przestrzeni pamici procesu utworzona i wywietlona w programie Redline
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 381
W INTERNECIE
blog.gentilkiwi.com/mimikatz
Uwaga Nie naley wyciga pochopnych wnioskw na podstawie samych dowodw anomalii wykrytych
w pliku stronicowania. W wynikach przeszukiwania tego pliku pod ktem wystpowania okrelonych
acuchw czsto mona znale pozostaoci sygnatur programw antywirusowych i hostowych
systemw zapobiegania wamaniom. Mog wrd nich znajdowa si podejrzane adresy IP,
nazwy domen oraz nazwy szkodliwych plikw, ktrych nigdy nie byo w badanym systemie.
System Windows domylnie nie kasuje zawartoci pliku stronicowania przy zamykaniu, ale
mona to zmieni. W tym celu naley ustawi warto rejestru KLM\SYSTEM\CurrentControlSet\
Control\Session Manager\Memory Management\ClearPageFileAtShutdown na 1.
Wstrzykiwanie procesw
Technika wstrzykiwania procesw polega na tym, e szkodliwy proces wstrzykujcy zmusza
legalny proces do zaadowania i wykonania pewnego kodu. Gdy to si uda, proces wstrzykujcy
moe zakoczy dziaanie, poniewa jego zoliwy kod od tej pory bdzie wykonywany przez
zmodyfikowany legalny proces. Jako e jest to atak na pami, plik wykonywalny odpowiadajcy
procesowi, do ktrego wstrzyknito kod, na dysku pozostaje niezmieniony. Co wicej, szkodliwie
zmodyfikowany proces zazwyczaj nie zawiera adnych informacji pozwalajcych sprawdzi, ktry
proces wykona wstrzyknicie. Mona sobie wyobrazi, jak trudno rozpracowywa takie przypadki.
Do przeprowadzenia ataku wstrzykiwania kodu mona wykorzysta wiele rnych interfejsw
API i mechanizmw systemu Windows dysponujcych odpowiednimi uprawnieniami (najczciej
dziaajcych jako administrator lub system). Jest wiele rodzajw wstrzykiwania kodu, od zmuszania
procesu do zaadowania szkodliwego pliku DLL z dysku po bezporednie wpisanie szkodliwego
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 383
kodu do pamici procesu i wywoanie zdalnego wtku w celu jego wykonania. Istnieje te inna
technika polegajca na podmianie procesw. W metodzie tej szkodliwy program moe uruchomi
legalny plik wykonywalny w stanie zawieszenia, a nastpnie zapisa w pamici jego procesu szkodliwy
kod, ktry bdzie wykonywany po wznowieniu wykonywania tego zawieszonego procesu.
Na szczcie techniki analizy pamici pozwalaj wykry lady wstrzykiwania procesw.
Wiele najczciej stosowanych metod wstrzykiwania procesw pozostawia anomalie w przestrzeni
pamiciowej procesw, ktre mona wykry za pomoc specjalnych programw. Przykadowo
wtyczka dlllist do programu Volatility Framework znajduje pliki DLL adowane przez proces
podstawowymi technikami CreateRemoteThread i LoadLibrary, a wtyczka malfind wykrywa
lady bardziej zaawansowanych rodzajw wstrzykiwania. Take program Redline moe wykrywa
i oznacza sekcje pamici, w ktrych znajduj si lady zastosowania podstawowych technik
wstrzykiwania procesw. Na rysunku 12.35 przedstawiono przykad sekcji pamici oznaczonej
jako Injected (zaatakowanej technik wstrzykiwania) przez program Redline.
RYSUNEK 12.35. Dowody wstrzykiwania do sekcji pamici programw Explorer.exe i AcroRd32.exe wywietlone
w programie Redline
Jest jeszcze jeden sposb na wykrycie ladw wstrzykiwania procesw znalezienie programu
wstrzykujcego i ustalenie, jak on dziaa w systemie. Jeeli haker chce, aby wstrzyknity szkodliwy
kod przetrwa wylogowanie uytkownika lub ponowne uruchomienie systemu, jego program
wstrzykujcy musi zosta gdzie zapisany na stae. Oznacza to, e mona posuy si wszystkimi
technikami opisanymi wczeniej w tym rozdziale, takimi jak analiza kluczy automatycznego
uruchamiania, zmienianie kolejnoci wczytywania bibliotek DLL itd., aby zidentyfikowa zapisane
wirusy wykonujce wstrzykiwanie. Taki skadnik w czasie analizy moe by nieaktywny, ale jeli
uda si odkry jego mechanizm utrwalania i zdoby jego plik, fakt ten nie ma ju adnego znaczenia.
Przykadowo backdoor Poison Ivy moe stosowa technik wstrzykiwania procesw w celu
384 INCYDENTY BEZPIECZESTWA
Przechwytywanie zdarze
Oglnie rzecz biorc, przechwytywanie zdarze to technika umoliwiajca kodowi dziaajcych
procesw przechwytywanie, przegldanie i modyfikowanie zdarze, np. wywoa funkcji
i zwracanych przez nie danych. W systemie operacyjnym Windows znajduje si wiele
mechanizmw API, za pomoc ktrych procesy mog przechwytywa zdarzenia i odbiera
powiadomienia o ich wystpowaniu. Wykorzystuje je wiele legalnych aplikacji (wcznie
z antywirusami, systemami zapobiegania wamaniom i aplikacjami). Oczywicie twrcy wirusw
mog wykorzystywa te same mechanizmy lub stosowa mniej widoczne metody do wstawiania
szkodliwego kodu do strumienia wywoa funkcji przepywajcego midzy legalnymi aplikacjami.
Wirusy typu rootkit czsto wykorzystuj przechwytywanie zdarze do ukrywania plikw, procesw,
kluczy rejestru oraz pocze sieciowych przed uytkownikami i specjalistami od informatyki
ledczej. Na szczcie lady takich dziaa mona wykry za pomoc technik analizy pamici.
RYSUNEK 12.36. Wyniki zwrcone przez wtyczk apihooks programu Volatility Framework w systemie
zainfekowanym wirusem Zeus
Narzdzia analityczne
Za pomoc wymienionych poniej darmowych narzdzi mona przeanalizowa i zrekonstruowa
zawarto obrazu pamici oraz zidentyfikowa wskaniki szkodliwej aktywnoci w przestrzeni
pamiciowej procesu lub jdra.
Memoryze i Redline firmy Mandiant www.mandiant.com/resources/download/memoryze,
www.mandiant.com/resources/download/redline
Te darmowe programy firmy Mandiant su zarwno do robienia obrazw pamici,
jak i ich analizowania. Memoryze to aplikacja konsolowa przeznaczona dla bardziej
dowiadczonych uytkownikw. Redline wykorzystuje ten sam podstawowy mechanizm,
ale ma graficzny interfejs uytkownika, za pomoc ktrego uytkownicy mog wygenerowa
kolektor pamici, zaimportowa posiadany obraz pamici oraz przejrze jego zawarto
(jak rwnie zbada wiele innych dowodw z analizy na ywo, np. z systemu plikw,
rejestru i dziennikw zdarze). Oba te programy analizuj dziaajce procesy, uchwyty,
sekcje pamici, zaadowane sterowniki oraz poczenia sieciowe w obrazach pamici. Jeli s
uywane do wykonywania obrazu pamici, mog dodatkowo pobra informacje z systemu
plikw, takie jak podpisy cyfrowe i skrty plikw PE zaadowanych do pamici, aby uatwi
pniejsz identyfikacj szkodliwych plikw binarnych.
Volatility Framework firmy Volatile Systems
code.google.com/p/volatility/
Volatility to popularny otwarty system do analizy pamici na potrzeby ledztw, ktry jest
najbardziej znany z duego zbioru wtyczek utworzonych przez czonkw skupionej wok
niego spoecznoci. Pakiet ten jest napisany w jzyku Python, ale mona go dosta take
w formie plikw wykonywalnych. Jest to aplikacja konsolowa obsugujca du liczb
polece i argumentw, wic nauka jego obsugi moe zaj nieco wicej czasu ni narzdzi
z graficznym interfejsem uytkownika. Jednak warto powici troch czasu, poniewa
dostpne wtyczki zapewniaj bardzo szerokie spektrum moliwoci analitycznych
wykraczajcych daleko poza podstawowe funkcje analizy pamici mona robi wszystko,
od wydobywania gazi rejestru z pamici, przez wykrywanie rnych form przechwytywania
zdarze i wstrzykiwania procesw, po szukanie sygnatur Yara i sekwencji bajtw.
Foldery startowe
Foldery startowe nale do najbardziej podstawowych mechanizmw utrwalania w systemie Windows.
Zasada ich dziaania jest bardzo prosta. Kady uytkownik ma w swoim profilu specjalny folder
startowy. Podczas logowania uytkownika system operacyjny uruchamiania wszystkie znajdujce si
w tym folderze programy. Ponadto istnieje jeszcze systemowy folder startowy, ktrego zawarto
jest uruchamiana podczas logowania kadego uytkownika.
W systemach 2000, XP i Server 2003 folder startowy dla wszystkich uytkownikw to
C:\Documents and Settings\All Users\Menu Start\Programy\Autostart, a foldery startowe
poszczeglnych uytkownikw to C:\Documents and Settings\[nazwauytkownika]\
Menu Start\Programy\Autostart.
W systemach Windows Vista i Windows 7 folderem startowym dla wszystkich uytkownikw
jest C:\ProgramData\Microsoft\Windows\Menu Start\Programy\Autostart, a dla poszczeglnych
uytkownikw przeznaczone s foldery C:\Users\[nazwauytkownika]\AppData\Roaming\
Microsoft\Windows\Menu Start\Programy\Autostart.
Naley wiedzie, e w folderze startowym mona zapisywa nie tylko pliki wykonywalne
widzielimy ataki oparte na umieszczeniu w tych folderach skryptw wsadowych, a nawet
plikw .lnk. Po co kto miaby uywa pliku .lnk? System Windows znajdzie wskazywany przez
niego plik i go uruchomi, gdziekolwiek si on znajduje. Kiedy wykrylimy szkodliw dziaalno
polegajc na wykorzystaniu pliku .lnk wskazujcego plik wscript.exe i adujcego osobny plik
JScript dostarczony w argumencie.
Zadania cykliczne
W podrozdziale Zadania zaplanowane opisalimy rne sposoby wykorzystania zada w celu
wykonania polece i aplikacji w zdalnych systemach. Ataki tego typu najczciej polegaj na
tworzeniu prostych zada do jednokrotnego wykonania w przyszoci za pomoc polecenia at.
388 INCYDENTY BEZPIECZESTWA
Jednak za pomoc polecenia at, jak rwnie przy uyciu jego bardziej zaawansowanego odpowiednika
schtasks, mona take tworzy zadania wykonywane cyklicznie co okrelony czas, np. co pewn liczb
minut lub godzin albo w wybrane dni tygodnia. Hakerzy wykorzystuj te moliwoci do zapewnienia
sobie nieprzerwanego wykonywania swoich szkodliwych programw w zdobytych systemach.
Uwaga Przykadowo robak Conficker tworzy nienazwane zadania cykliczne (At#.job) podczas
rozprzestrzeniania si w zdalnych systemach. Zadania te uruchamiaj funkcj eksportu
ze szkodliwego pliku DLL poprzez dostarczenie go jako argumentu do pliku rundll32.exe.
Szeroko znanym przykadem, opisanym na blogu firmy Mandiant, jest wykorzystanie plikw
ntshrui.dll i explorer.exe. Plik wykonywalny Eksploratora Windows znajduje si w katalogu %systemroot%,
natomiast legalna kopia pliku ntshrui.dll jest zlokalizowana w katalogu %systemroot%\system32.
Eksplorator automatycznie aduje plik ntshrui.dll przy uruchamianiu systemu, ale plik ten nie jest
chroniony za pomoc wpisu na licie KnownDLLs. W efekcie haker moe umieci w folderze
%systemroot% wasn kopi tego pliku i to ona zostanie zaadowana przez Eksplorator Windows,
poniewa bdzie znajdowa si w tym samym katalogu, co jego plik wykonywalny. W ten sposb
mona podrzuci do systemu zoliwy kod w kopii pliku ntshrui.dll bez modyfikowania
czegokolwiek w rejestrze, wstrzykiwania procesw itd.
Uwaga Technika ta nie ogranicza si tylko do pliku explorer.exe, cho jest on popularnym celem z powodu
duej liczby adowanych plikw DLL nieznajdujcych si pod ochron listy KnownDLLs i jego lokalizacji
poza katalogiem %systemroot%\system32. Spotykalimy take ataki tego typu skierowane na inne
pliki wykonywalne, take wykorzystywane przez aplikacje zewntrzne nienalece do samego
systemu Windows.
Jest to bardzo sprytna sztuczka pozwalajca zmusi legalny program do wczytania szkodliwego
kodu, cho haker musi uwaa, aby swoimi dziaaniami nie doprowadzi do niestabilnoci systemu
ani nie uszkodzi jakich funkcji. Dlatego te szkodliwe pliki DLL wykorzystywane w atakach
polegajcych na modyfikowaniu kolejnoci wczytywania bibliotek DLL z reguy zawieraj taki sam
zestaw funkcji eksportowanych jak ich legalne odpowiedniki. W razie wywoania wirus moe po
prostu przekaza te eksportowane funkcje do oryginalnego pliku DLL. W ten sposb aplikacja
wywoujca moe nadal dziaa prawidowo, a haker nie musi odtwarza funkcjonalnoci w swoim
pliku DLL.
Wykrycie ladw modyfikacji adowania plikw DLL w systemie moe by bardzo trudne.
Czsto wykorzystujemy w tym celu kombinacj metod analizy czasowej systemu plikw
(koncentrujc si na plikach DLL tworzonych w okresie aktywnoci hakera) i technik analizy
pamici (skupiajc si na niepodpisanych plikach DLL adowanych przez legalne aplikacje).
W ten sposb udaje nam si wykry szkodliwe programy wykorzystujce ten mechanizm
utrwalania. Ponadto analityk moe utworzy wskaniki zagroenia dotyczce wybranych plikw
DLL, ktre nigdy nie powinny by adowane z okrelonych miejsc (jak opisany w przykadzie
plik ntshrui.dll).
392 INCYDENTY BEZPIECZESTWA
POWTRZENIE ODPOWIEDZI
NA CZSTO POJAWIAJCE SI PYTANIA
Ostrzegalimy na pocztku tego rozdziau, e system Windows to skomplikowany program.
Opisalimy wiele rnych rde materiau dowodowego, ale moe by trudno poapa si, ktre
rda zawieraj okrelone informacje. Dlatego w ramach powtrzenia wiadomoci w podrozdziale
tym przedstawiamy zwize zestawienie czsto spotykanych pyta i scenariuszy oraz list typw
dowodw, ktre mog pomc w rozwizywaniu tych problemw. Oczywicie nie jest to wyczerpujca
lista wszystkich moliwych rde danych, ale od sprawdzenia wymienionych miejsc najczciej
zaczynamy prac w systemach Windows.
I CO Z TEGO
Windows jest najczciej uywanym w rodowiskach korporacyjnych systemem operacyjnym na
wiecie. Rzadko spotykamy si z przypadkami, w ktrych lady dziaalnoci hakera nie prowadz
przez przynajmniej kilka systemw Windows nawet jeli system wyjciowy (lub docelowy)
jest inny. Istnieje wiele specjalistycznych narzdzi uatwiajcych i automatyzujcych prac
informatykw ledczych w systemach Windows. Jednak znajomo podstawowych rde
dowodw istniejcych w tych systemach, jak rwnie sposobw ich powstawania i obsugi,
jest niezbdna kademu analitykowi. W rozdziale tym staralimy si pobienie przedstawi jak
najwicej takich rde materiau dowodowego mamy nadziej, e wykorzystasz te informacje
do dalszego rozwijania i pogbiania swojej wiedzy oraz umiejtnoci analitycznych.
ROZDZIA 12. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH WINDOWS 397
PYTANIA
1. Ktry atrybut tabeli MFT zawiera znaczniki czasu, ktrych nie mona modyfikowa
bezporednio za pomoc funkcji interfejsu API systemu Windows?
2. Jaki artefakt systemu plikw NTFS, dotyczcy katalogu, moe zawiera metadane dotyczce
usunitych plikw?
3. Jakie warunki musi spenia plik, aby by rezydentny w tabeli MFT?
4. W jaki sposb haker moe zaadowa i wykona szkodliwy kod z alternatywnego strumienia
danych w systemie Windows 7?
5. Jakie nazwy plikw mona zdoby dziki analizie zawartoci pliku pobierania
z wyprzedzeniem danej aplikacji?
6. Haker czy si z niechronion usug udostpniania ekranu WinVNC w stacji roboczej.
Aktualny uytkownik jest wylogowany, wic haker musi poda prawidowe dane
powiadczajce. Jaki typ logowania zostanie zarejestrowany w tym przypadku?
7. Haker montuje udzia ADMIN$ na zdalnym serwerze, aby zdalnie zaplanowa zadanie
za pomoc polecenia at. Jaki typ logowania zostanie zarejestrowany w tym przypadku?
8. Jakie rdo dowodw rejestruje nazw uytkownika, ktry utworzy zadanie zaplanowane?
9. Czym rni si dane z bufora danych o zgodnoci aplikacji (ShimCache) od danych
z plikw pobierania z wyprzedzeniem?
10. Jakie klucze rejestru mog zawiera informacje o katalogach uywanych poprzez
Eksploratora Windows podczas interaktywnej sesji? Jakie metadane s przechowywane
w wartociach tych kluczy?
11. Czym rni si dane z kluczy UserAssist od danych z kluczy MUICache?
12. Wymie dwa mechanizmy utrwalania niewymagajce uywania rejestru.
398 INCYDENTY BEZPIECZESTWA
ROZDZIA 13.
Prowadzenie
czynnoci ledczych
w systemach Mac OS X
400 INCYDENTY BEZPIECZESTWA
W
rozdziale 12. napisalimy, e prowadzenie czynnoci ledczych w systemach Windows
to trudne zadanie, ale analiza na ywo i badanie obrazw systemu Mac OS X wcale
nie jest atwiejsze. Na temat kadego z tych rodowisk mona napisa ca ksik.
Dlatego w rozdziale tym pragniemy przedstawi tylko podstawowe rda dowodw, ktre s
najczciej przydatne podczas dziaa zwizanych z reagowaniem na incydenty bezpieczestwa
komputerowego. Od czasu ukazania si poprzedniego wydania tej ksiki na pocztku XXI wieku
systemy firmy Apple znacznie zyskay na popularnoci w rnych organizacjach oraz przestay by
domen dziaw marketingu i artystycznych. Rwnolegle z t ekspansj nastpi rozwj narzdzi
ledczych.
Rozdzia ten podzielilimy na kilka podrozdziaw zawierajcych opisy niektrych najbardziej
wartociowych rde informacji. Z oczywistych powodw nie opisujemy wszystkich potencjalnych
rde danych w systemach Mac OS X, ale w kadym podrozdziale przedstawiamy nieco
podstawowych wiadomoci na wybrany temat. Oto lista omawianych przez nas tematw:
system plikw HFS+,
rdzenne systemowe dane operacyjne,
dane funkcji Spotlight,
kronikowanie systemu i aplikacji,
konfiguracja systemu i aplikacji.
Podobnie jak w rozdziale 12., w rozdziale tym opisujemy rol danych we wspomaganiu
funkcjonalnoci systemu operacyjnego, podpowiadamy, co jest potrzebne do ich pobrania oraz
jak interpretowa i analizowa zebrany materia dowodowy. Pod koniec rozdziau zamiecilimy
podsumowanie wiadomoci o wszystkich opisanych artefaktach wystpujcych w systemach
Mac OS X. Omwilimy metody pobierania danych w ramach analizy na ywo oraz wskazalimy,
czym informacje te rni si od tych, ktre mona zdoby drog normalnej analizy ledczej.
Zaczniemy od podstawowych wiadomoci o systemie plikw w Mac OS X.
szyfrowanie,
rozmiar plikw do okoo 8 EB,
rozmiar woluminw do okoo 8 EB,
moliwo zmieniania rozmiarw woluminw,
struktury atrybutowe.
Na licie tej w oczy rzuca si brak macierzystego wsparcia dla plikw rozrzedzonych. S one
powszechne w nowoczesnych systemach plikw, poniewa umoliwiaj efektywne przechowywanie
plikw zawierajcych pust przestrze. Implementacja tego rodzaju plikw w systemie Mac OS X
jest obsugiwana programowo, tzn. przez warstw sterownika wirtualnego systemu plikw systemu
operacyjnego.
Podrozdzia ten zaczynamy od zwizego wprowadzenia do ukadu systemu plikw, po czym
przechodzimy do opisu artefaktw, ktre mog by przydatne podczas czynnoci analitycznych.
Pokazujemy, jak dosta si do rnych struktur za pomoc niskopoziomowych narzdzi systemowych.
Z naszych dowiadcze wynika, e najnowsze wersje znanych pakietw oprogramowania ledczego
do nieprzewidywalnie interpretuj system plikw HFS+. Jeli trzeba tylko przejrze pliki, nie ma
problemu, ale jeeli chcesz zdoby szczegowe informacje, lepiej signij po specjalistyczne narzdzia.
Ukad woluminu
Wolumin HFS+ skada si z dziewiciu struktur blokw rozruchowych, nagwka, pliku alokacji,
pliku przepenie, pliku katalogowego, pliku atrybutw, pliku startowego, alternatywnego nagwka
woluminu oraz blokw zarezerwowanych. Rozmiar blokw alokacji jest okrelany w czasie tworzenia
systemu plikw. Na rysunku 13.1 pokazano ukad elementw wieo sformatowanego dysku.
Ukad ten znacznie rni si od ukadu systemw FAT i NTFS, wic musimy wyjani w nim
kilka rzeczy. Jeli potrzebujesz szczegowych informacji na ten temat, przeczytaj notk techniczn
Apple 1150 pt. HFS Plus Volume Format.
Bloki rozruchowe
Pierwsze 1024 bajty woluminu s zarezerwowane dla blokw rozruchowych, ktre mog zawiera
informacje potrzebne do uruchomienia systemu. Nowoczesne systemy nie wymagaj tych blokw,
wic obejmowana przez nie przestrze jest z reguy pusta, cho program Mac OS Finder moe
zapisa w niej informacje, gdy zmieni si folder systemowy.
Zwr uwag na pi ostatnich pozycji nagwka woluminu. Zawieraj one informacje o pooeniu
i rozmiarze piciu specjalnych plikw ukazanych na rysunku 13.1. Za pomoc programu iBored,
wieloplatformowej przegldarki danych z funkcj interpretacji i reprezentacji struktur na podstawie
szablonw, mona atwo przejrze te struktury.
Rysunek 13.2 przedstawia zawarto drugiego bloku zawierajcego nagwek woluminu. Dysk
ten zosta utworzony 1 sierpnia 2012 roku oraz by ostatnio modyfikowany 12 kwietnia 2014 roku.
Daty w systemie plikw HFS+ s reprezentowane w postaci liczby sekund, jaka upyna od
pnocy 1 stycznia 1904 roku GMT. Naley te pamita, e zapisana w nagwku data utworzenia
woluminu jest podawana w czasie lokalnym, nie GMT. Wolumin HFS+ moe mie cztery daty:
utworzenia, modyfikacji, utworzenia kopii zapasowej oraz sprawdzenia.
Skoro mowa o znacznikach czasu, system HFS+ zapisuje po cztery daty dla kadego pliku
dat normalnego dostpu, dat modyfikacji oraz daty zmian i-wza. Ponadto rejestrowany
jest czas utworzenia i-wza oznaczajcy czas utworzenia pliku. Podczas analizy systemu na ywo
informacje z tych znacznikw czasu mona wydoby za pomoc polecenia stat. Pamitaj, e czasami
do uzyskania dostpu do danych za pomoc polece potrzebne s zwikszone uprawnienia.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 403
W INTERNECIE
iBored apps.tempel.org/iBored
Plik alokacji
Przeznaczenia tego pliku mona domyli si po nazwie jest to rejestr dostpnych blokw
alokacji. Zawiera bit dla kadego bloku. Jeli bit ten jest nieustawiony, znaczy to, e dana
przestrze jest dostpna do uytku.
Plik przepenie
Z kadym plikiem w systemie plikw HFS+ jest zwizana lista rozszerze (ang. extent) czy te
cigych blokw alokacji nalecych do jego podplikw (ang. fork). Kade rozszerzenie definiuje
para liczb pierwsza oznacza blok alokacji rozszerzenia, a druga okrela liczb blokw alokacji
przypisanych do tego rozszerzenia. B-drzewo katalogowe zawiera rejestr omiu pierwszych
rozszerze. Jeli w podpliku jest wicej ni osiem rozszerze, pozostae s przechowywane w pliku
przepenie. Bardziej szczegowy opis podplikw znajduje si w podpunkcie Plik atrybutw.
Plik katalogowy
Plik katalogowy zawiera szczegowe informacje o hierarchii plikw i folderw w woluminie.
Kady plik i folder w woluminie maj wasny katalogowy identyfikator wza (CNID). W przypadku
folderw CNID nazywa si identyfikatorem folderu lub katalogu. W przypadku plikw jest to
identyfikator pliku. Dla kadego folderu i pliku istnieje identyfikator nadrzdny CNID folderu
zawierajcego ten folder lub plik. Pierwszych szesnacie identyfikatorw CNID jest zarezerwowanych
przez firm Apple dla wanych plikw woluminu.
Plik atrybutw
Plik atrybutw to opcjonalna cz standardowego systemu plikw. Jest przeznaczony do uytku
przez podpliki nazwane, ktre mona traktowa jak dodatkowe metadane przypisane do pliku,
nieprzechowywane jako cz samego wpisu pliku. Jest to ten rodzaj funkcjonalnoci, o ktry
chodzio firmie Microsoft przy wprowadzaniu alternatywnych strumieni danych.
Rozszerzone informacje o pliku mona odczyta za pomoc polecenia xattr. W poniszym
przykadzie plik /Users/mpepe/Mail Downloads/geocities_mpepe.pem zosta odebrany przez
uytkownika w zaczniku do poczty elektronicznej wysanej przez Kevina Mandi. Informacje te
zostay zapisane w metadanych przez do niedawno wprowadzon do systemu Mac OS X funkcj
zapisywania miejsca pochodzenia plikw w binarnym formacie plist. Jeli nastpnym razem przy
otwieraniu pliku pobranego za pomoc przegldarki Safari zobaczysz okno, to wanie stamtd
Finder pobiera informacje rdowe.
planck:~ mpepe$ xattr /Users/mpepe/Mail\ Downloads/*.pem
geocities_mpepe.pem: com.apple.metadata:kMDItemWhereFroms:
0000000 62 70 6c 69 73 74 30 30 a3 01 02 03 5f 10 2f 4b |bplist00?..._./K|
0000020 65 76 69 6e 20 4d 61 6e 64 69 61 20 3c 6b 65 76 |evin Mandia <kev|
0000040 69 6e 6d 61 6e 64 69 61 40 40 6d 61 6e 64 69 61 |inmandia@@mandia|
0000060 6e 74 2e 63 6f 6d 3e 5f 10 10 52 65 3a 20 50 6c |nt.com>_..Re: Pl|
406 INCYDENTY BEZPIECZESTWA
Tylko nieliczne usugi systemu Mac OS X zapisuj dane w podplikach nazwanych. Aby
zobaczy, czego mona si spodziewa po normalnym obrazie systemu plikw, wykonaj polecenie
xattr -lr * w wieej instalacji systemu. Spowoduje to wywietlenie wszystkich rozszerzonych
atrybutw wraz z nazw ich twrcy. Wikszo par klucz-warto, ktre zobaczysz, bdzie
wygenerowana przez com.apple.metadata oraz bdzie zawiera kMDItemDownloadedDate,
kMDItemWhereFroms, kMDItemFinderComment i kMDItemUserTags. Waciciel com.apple.metadata
utrzymuje pewn liczb gotowych obiektw metadanych, ale programici mog te generowa
wasne. Naley zauway, e nazwa twrcy suy gwnie do celw klasyfikacyjnych, a nie okrela
jakiego procesu lub jakiej aplikacji. W prezentowanych przykadach com.apple.metadata
reprezentuje dane pochodzce z aplikacji Safari i Finder. Gdyby kto zmodyfikowa znaczniki pliku
w Finderze, np. zmieniby kolor elementu na zielony albo oznaczy go jako wany w okienku
informacji o pliku, to znaczniki te zostayby zapisane w opisanych wczeniej podplikach nazwanych.
Plik startowy
W pliku startowym przechowywane s informacje potrzebne podczas uruchamiania systemu
niemajcego wbudowanych mechanizmw obsugi (ROM) systemu plikw HFS+. System Mac OS X
nie korzysta z tego pliku i w wikszoci przypadkw rozmiar tego pliku wynosi zero bajtw.
Spotlight
Spotlight to usuga indeksowania metadanych i wyszukiwania w systemie Mac OS X. Gdy
tworzony jest nowy plik, system szkieletowy Metadata przyjmuje go i indeksuje na podstawie
aktualnie dostpnych wtyczek. Podstawowa instalacja systemu Mac OS X 10.9 zawiera okoo
dwudziestu trzech importerw przetwarzajcych rne formaty plikw, od paczek aplikacji
(ang. application bundles) po poczt. Podczas instalowania nowych programw mog by adowane
nowe importery rozszerzajce moliwoci szkieletu Metadata o funkcje rozpoznawania kolejnych
formatw. Niektre rodzaje importerw importuj tylko metadane, a inne indeksuj cay tekst
przychodzcego pliku. Przykadem tego drugiego rodzaju jest wtyczka importu mail.mdimporter.
W dziaajcym systemie Mac OS X wykonaj polecenie mdfind z acucha do wyszukania. Jeeli
acuch ten znajduje si w pliku, ktrego tre zostaa zaindeksowana, aplikacja mdfind zwrci
kompletn ciek do tego pliku. Indeksy nielokalnych systemw plikw, np. nonikw wymiennych
i udziaw sieciowych, s przechowywane z samymi danymi. Jeeli wolumin jest niepodczony,
program mdfind nie zwrci danych z tego rda.
Oczywicie dla nas najwaniejsze jest to, czy da si jako wykorzysta artefakty przechowywane
lub pozostawione przez system Metadata. Kasowanie starych danych z usunitych plikw to bardzo
szybki proces. Z przeprowadzonych przez nas testw wynika, e wzy w indeksie korespondujce
z usunitym plikiem s usuwane natychmiast. Niestety nie ma aktualnie narzdzi, ktre potrafiyby
niezawodnie przetwarza dane zapisywane przez indekser Spotlight, a pobrane z obrazu dysku.
Aktualnie dane funkcji Spotlight s uyteczne tylko podczas analizy na ywo.
Magazyn zarzdzany
W systemie Mac OS X Lion (10.7) firma Apple wprowadzia nowy system szkieletowy dla
programistw umoliwiajcy aplikacjom utworzonym dla tego systemu i jego nowszych wersji
zaadaptowanie modelu cigego zapisywania dokumentw i plikw zamiast tradycyjnej operacji
zapisywania uruchamianej przez uytkownika. Efektem ubocznym tej decyzji jest pozostawanie
408 INCYDENTY BEZPIECZESTWA
w systemie plikw duej iloci danych zwizanych z modyfikowaniem plikw. Demon zarzdzajcy
t funkcj nazywa si revisiond i przechowuje dane na woluminach w ukrytym katalogu
/.DocumentRevisions-V100.
W katalogu tym usuga zapisuje dane plikowe w katalogu PerUID i bazie danych w db-V1.
Aby przejrze pliki zapisane w systemie wersjonowania, naley otworzy baz danych SQLite
/.DocumentRevisions-V100/db-V1/db.sqlite. W czterech tabelach tej bazy zawarte s informacje
o pliku, wersjach pliku oraz miejscach jego przechowywania. Jeli kto pobiera pliki do przegldu,
musi te skopiowa plik z przyrostkiem w nazwie -wal, ktry jest dziennikiem zapisu z wyprzedzeniem
zawierajcym istotne dane.
W ramach przykadu zbadamy zawarto aktywnego pliku db.sqlite przedstawionego
na rysunku 13.3. Bardziej szczegowy opis metod analizy baz danych SQLite zamiecilimy dalej
w tym rozdziale. Aby dosta si do tej bazy danych, uruchomilimy powok z uprawnieniami root
za pomoc polecenia sudo bash i skopiowalimy pliki do tymczasowego katalogu (~/book_tmp),
aby unikn wycigw do danych spowodowanych otwarciem bazy danych przez wiele procesw.
W INTERNECIE
Do szybkiego przegldania zawartoci baz danych SQLite mona uywa wtyczki do Firefoksa o nazwie
SQLite Manager. Poszukaj jej w menu dodatkw.
Uwaga Przypominamy, e system Mac OS X powsta na bazie systemu BSD, wic wszelkie uywane w nim
znaczniki czasu oznaczaj liczb sekund, jaka upyna od epoki Uniksa (00:00:00 UTC, 1 stycznia
1970 roku). Znaczniki te mona konwertowa za pomoc uniksowego polecenia date z opcjami
-j -u -r (sekundy). Istnieje te wiele internetowych kalkulatorw, za pomoc ktrych mona
wykona tak sam konwersj.
Drc rekord, mona przeanalizowa nazw pliku wybranej wersji, co pokazano w polu
generation_path ukazanym na rysunku 13.5.
pakietw z drzewa BSD Ports do swojego systemu. Pamitaj, e aby uzyska dziaajce drzewo
Ports w swoim rodowisku, musisz zainstalowa programistyczne narzdzia wiersza polece.
Najprostszym sposobem na zapocztkowanie tego procesu jest wykonanie polecenia gcc w wierszu
polece. System dowie si, e narzdzi tych brakuje, i uruchomi odpowiedni instalator. Gdy
znajdziesz narzdzia przydatne w ledztwie, zamiast od razu kompilowa je ze rda, sprawd,
czy kto ju wczeniej nie utworzy pakietu w MacPorts. Jeli tak, zaoszczdzisz troch czasu.
W INTERNECIE
MacPorts www.macports.org
Uwaga Wicej informacji o rodowisku plikowym systemu Mac OS X mona znale w portalu Apple Mac
Developer. Zauwaylimy, e z biegiem lat informacje byy przenoszone midzy rnymi czciami
przewodnika dla programistw. Dlatego poszukaj na stronie http://developer.apple.com dokumentu
zatytuowanego File System Programming Guide dla systemu OS X.
Dalej opisujemy trzy gwne domeny lokaln, systemow i uytkownika oraz rodzaje
danych, jakie mona w nich znale. Pniej omawiamy metody zdobywania i analizy wybranych
artefaktw. Domen sieciow pomijamy, poniewa jest rzadko obecna i podobna do domeny lokalnej.
Domena lokalna
W domenie lokalnej s trzy katalogi, ktre naley zna. Pierwszy to katalog /Applications. S w nim
zainstalowane prawie wszystkie aplikacje (przez uytkownika lub App Store). Nieco dalej opisujemy
sposoby sprawdzania, jakie aplikacje s zainstalowane w systemie, ale najpierw krtka dygresja
na temat paczek aplikacji (ang. Application Bundles).
Paczki aplikacji to struktury katalogowe w standardowym formacie i ze standardowym
rozszerzeniem. Zawieraj prawie wszystko, co jest potrzebne aplikacji do dziaania, tj. kod
wykonywalny, grafiki, pliki konfiguracyjne, biblioteki oraz aplikacje i skrypty pomocnicze.
S bardzo ciekawym sposobem dystrybucji aplikacji, poniewa Finder traktuje te struktury jak
pojedynczy plik z interfejsem, chyba e zaznaczy si inaczej. Najczciej spotykane rozszerzenia
paczek aplikacji to:
.app aplikacje z moliwoci uruchamiania,
.framework dynamiczne biblioteki wsplne i ich zasoby,
.plugin aplikacje pomocnicze lub sterowniki dla innych aplikacji,
.kext dynamicznie adowane moduy jdra.
Gdyby otworzono paczk aplikacji za pomoc opcji Show Package Contents (poka zawarto
pakietu) w Finderze lub podczas przegldania katalogw w terminalu, znaleziono by folder
Contents z kilkoma podkatalogami. Podkatalogi te MacOS i ewentualnie Resources, Library,
Frameworks, Plugins oraz SharedSupport zawieraj wymienione wczeniej elementy.
Programista moe w nich umieci wszystko i najczciej s to przydatne narzdzia oraz pliki.
412 INCYDENTY BEZPIECZESTWA
Przykadowo w folderze Library w paczce VMWare Fusion znajduj si wszystkie narzdzia wiersza
polece do zarzdzania hiperwizorem VMWare. Na rysunku 13.6 przedstawiono przykadow
zawarto paczki aplikacji Console doczanej do systemu Mac OS X, ktr wcza si przez
kliknicie z przytrzymaniem klawisza Control pliku i wybranie opcji Show Package Contents
z menu kontekstowego.
Na rysunku tym wida, e Console.help to paczka pomocnicza (ang. Help Bundle), czyli paczka
umieszczona w innej paczce. Jeli trzeba, mona przejrze take jej zawarto, ktra ma tak sam
struktur jak kada inna paczka aplikacji.
Czemu o tym wszystkim piszemy? W paczce mog znajdowa si dodatkowe metadane
przydatne w ledztwie. Ze znacznikw czasu mona si dowiedzie, kiedy dany program zosta
zainstalowany. Ponadto programy pomocnicze pozwalaj zorientowa si, jak dziaa dana
aplikacja. Poza tym jest to doskonae miejsce do ukrywania danych.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 413
Wracamy do domeny lokalnej: w katalogu Applications mona znale jeszcze dwa inne
katalogi. rodowisko programistyczne firmy Apple wykorzystuje folder Developer. Do niedawna
w katalogu tym na dysku gwnym przechowywane byy wszystkie narzdzia programistyczne,
pakiety SDK, dokumentacja i narzdzia diagnostyczne. W nowszych wersjach XCode miejsce
przechowywania narzdzi zmienio si, cho nadal mona jeszcze spotka ten folder.
Ostatni interesujcy nas w domenie lokalnej katalog to /Library. Podczas badania systemu
plikw mona go znale w rnych miejscach. Generalnie w jego podkatalogach przechowuje si
rne zasoby aplikacji, zalene od zakresu, np. ustawienia aplikacji dla systemu operacyjnego
(/System/Library), ustawienia wsplne uytkownikw (/Library) oraz ustawienia indywidualne
uytkownikw (/Users/nazwautykownika/Library). Naley o tym pamita podczas rozszyfrowywania
konfiguracji programu. W tabeli na nastpnej stronie wypisano podkatalogi, ktre czsto zawieraj
istotne informacje.
Na uwag zasuguje take wiele innych katalogw zwaszcza wtedy, gdy rozpoczyna si analiz
systemu pod ktem zada startowych. Wrcimy jeszcze do nich po omwieniu tematw
interesujcych analityka podczas reakcji na incydent.
Uwaga Aplikacje mog korzysta z katalogw buforowych i pomocniczych w dowolny sposb, chocia mona
wyrni kilka charakterystycznych typw plikw, ktrych uywaj prawie wszystkie programy.
Wszechobecne s pliki plist i bazy danych SQLite. Cho moliwoci s due, do przegldania danych
w tych formatach najczciej uywamy tylko trzech programw. Bazy danych z reguy otwieramy
we wtyczce SQLite Manager do przegldarki Firefox, a do otwierania plikw plist najczciej
wykorzystujemy program plutil (Max OS X) lub pslist Explorer (Windows).
Domena systemowa
Domena systemowa na pierwszy rzut oka moe si wydawa fascynujca. Zawiera wszystkie
tradycyjne uniksowe cieki i dzienniki systemu Mac OS X dotyczce aplikacji, wic w niektrych
przypadkach cae ledztwo mona oprze tylko na odkryciach poczynionych w tym miejscu.
Struktura katalogu /System jest bardzo podobna do struktury folderu /Library. Znajduje si w nim
wiele miejsc, w ktrych aplikacje mog zapisywa dane. Opisujemy je dalej, ale ju w tym miejscu
warto nadmieni, e do tworzenia i modyfikowania plikw w domenie systemowej potrzebne s
uprawnienia administratora.
W domenie systemowej znajduje si wiele doskonaych rde materiau dowodowego.
Tradycyjne katalogi do przechowywania plikw binarnych i bibliotek aplikacji zawieraj dane,
ktre z reguy nie rni si midzy rnymi instalacjami tej samej wersji systemu operacyjnego.
Wyjtkiem jest sytuacja, gdy zaawansowany uytkownik rcznie skompiluje jakie narzdzia albo
uyje dystrybucji MacPorts lub Fink najczciej instalowanych w katalogu /opt. Pord licznych
artefaktw mona znale m.in. dzienniki systemowe w katalogu /var/log, bazy danych w katalogu
/var/db, rejestr drukowanych danych w katalogu dziennikw CUPS oraz obraz upienia systemu.
414 INCYDENTY BEZPIECZESTWA
cieka Opis
/Library/Application Support Katalog, w ktrym aplikacje przechowuj ustawienia, bufory,
/User/nazwauytkownika/ informacje o licencjach i prawie wszystko, co moe by potrzebne
Library/Application Support programicie. Korzystaj z niego aplikacje firmy Apple, cho nie
wszystkie. Przykadowo wikszo aplikacji Apple przechowuje
zasoby w systemowym katalogu Library w podkatalogach
Library/Apple/nazwaaplikacji. Do wyjtkw nale
CrashReporter, aplikacje Apple Pro (np. Final Cut) i App Store.
/Library/Caches W katalogu tym aplikacje przechowuj dane tymczasowe, ktre
/System/Library/Caches mog by bardzo przydatne. W rozdziale 14. opisujemy kilka
aplikacji, ktre z niego korzystaj.
/User/nazwauytkownika/
Library/Caches
/Library/Frameworks Ten katalog jest wykorzystywany przez aplikacje, ktre musz
/System/Library/Frameworks przechowywa sterowniki lub aplikacje pomocnicze. Generalnie
folder ten moe zawiera istotne dane tylko wtedy, jeli w systemie
dziaa szkodliwe oprogramowanie albo uytkownik zainstalowa
specjaln aplikacj.
/Library/Keychains W tym katalogu aplikacje przechowuj pliki danych pku kluczy
/System/Library/Keychains uytkownika. W miejscu tym zapisuje hasa i certyfikaty wiele
aplikacji. Aby uzyska do niego dostp, naley zna haso.
/User/nazwauytkownika/
Library/Keychains
/Library/Logs Katalog do przechowywania rnych dziennikw aplikacji.
/User/username/Library/Logs Jest to jeden z najwaniejszych folderw do przejrzenia.
/Library/Preferences W katalogu tym aplikacje przechowuj preferencje, jeli systemowy
/User/nazwauytkownika/ interfejs API ma moliwo zarzdzania nimi. Pliki z danymi s
Library/Preferences zapisywane w formacie plist, co znacznie uatwia ich analizowanie.
Katalog ten mona (bardzo) luno porwna do gazi Software
rejestru systemu Windows.
/Library/Receipts Gdy do systemu dodawana jest aplikacja, aktualizowane s pliki
/User/nazwauytkownika/ znajdujce si w folderze /Library/Receipts. Plik o nazwie
Library/Receipts InstallHistory.plist zawiera informacje o wszystkich aplikacjach
zainstalowanych przy uyciu instalatora systemowego
i mechanizmu aktualizacji.
/Library/WebServer Serwer Apache, zainstalowany w kadym systemie Mac OS X,
jest uruchamiany, gdy uytkownik wcza funkcj udostpniania
danych w internecie (Web Sharing). Folder ten jest katalogiem
gwnym dokumentw tego serwera.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 415
Domena uytkownika
W domenie przechowywana jest wikszo (a moe nawet cao) treci tworzonej przez uytkownika.
W katalogu /Users mona znale po jednym folderze dla kadego konta utworzonego w systemie
oraz katalog wsplny. Gdy zostaje utworzone nowe konto uytkownika, w katalogu uytkownika
powstaj podkatalogi opisane w tabeli 13.2.
Katalog Opis
Applications W katalogu tym zapisywane s wszystkie aplikacje instalowane przez uytkownika
Desktop Katalog ten przechowuje zawarto pulpitu uytkownika
Documents Domylne miejsce przechowywania treci tworzonej przez uytkownika
Library Dane konfiguracyjne i bufory uytkownika
Movies Pliki wideo uytkownika
Music Pliki muzyczne uytkownika
Pictures Zdjcia i inne grafiki uytkownika
Public Miejsce do przechowywania plikw wsplnych, do ktrego dostp mona uzyska
bez logowania, jeli wczona jest funkcja udostpniania plikw
Sites Miejsce wsplnie uytkowane przez serwer Apache, jeli wczona jest funkcja
udostpniania treci przez sie
.Trash Katalog do przechowywania plikw usunitych przez uytkownika
Dowody
Usuga katalogowa zapisuje dane w katalogu /private/var/db/dslocal. W katalogu tym przechowywane
s bazy danych (wzy) systemu lokalnego w wzach /Default. Przegldajc jego zawarto, mona
znale katalogi i pliki plist odpowiadajce wielu opcjom konfiguracyjnym rodowiska Unix.
Oprcz kont i grup uytkownikw, usuga katalogowa nadzoruje te kilka innych elementw
konfiguracyjnych; oto one:
aliases lokalne trasowanie poczty wewntrznej,
computers informacje Kerberos dla systemu lokalnego,
config informacje Kerberos i Share,
network informacje sieci sprzonej,
sharepoints katalogi udostpniane innym systemom poprzez SMB lub AFP.
Ponadto w strukturze katalogw /private/var/db/dslocal znajduje si baza danych SQLite o nazwie
sqlindex. Zapisywane s w niej czasy utworzenia i modyfikacji plikw plist znajdujcych si w strukturze
katalogw oraz dodatkowe informacje na temat relacji wystpujcych midzy danymi.
Co pewien czas zadanie CRON tworzy kopi zapasow tego caego katalogu. Plik tej kopii
zapasowej to /private/var/db/dslocal-backup.xar jest to normalny plik tar gzip.
Analiza
Z danych usugi katalogowej mona si dowiedzie, jakie byy jej ustawienia konfiguracyjne
w czasie tworzenia obrazu, co pomaga w ustaleniu czasu wystpienia pewnych zdarze
konfiguracyjnych. Czasami w trakcie procesu RI trzeba sprawdzi, kiedy zosta utworzony
wybrany udzia albo czy dane konto istniao i miao okrelone uprawnienia. Wszystkie rda
danych z usugi katalogowej mog zawiera istotne informacje.
Konta uytkownikw
W wle users znajduje si po jednym binarnym pliku plist dla kadego konta uytkownika.
Plik ten zazwyczaj zawiera wasnoci opisane w tabeli 13.3. Naley jednak pamita, e kolejno
i obecno poszczeglnych wasnoci zaley od konfiguracji systemu.
Najbardziej przydatne s pola jpegphoto, picture, realname, name, home, generateduid oraz uid.
Dodatkowo w bazie danych sqlindex czasami sprawdzamy tabel rec:users. Warto pola filetime
umoliwia odkrycie oryginalnej daty instalacji i czasu ostatniej modyfikacji rekordu przez uytkownika.
Pola dotyczce fotografii w ledztwach s mao przydatne, cho moesz si zdziwi, jak czsto
zdjcia wykonywane za pomoc wbudowanej kamery s wykorzystywane jako obrazy kont.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 417
Punkty udostpniania
Wze sharepoints zawiera binarny plik plist dla kadego wsplnego katalogu. Gdy uytkownik wczy
udostpnianie plikw w folderze, system tworzy binarny plik plist zawierajcy trzynacie atrybutw
z informacjami o statusie udziau dla AFP, SMB i FTP, z nazwami punktw udostpniania dla kadej
usugi i ze wspdzielon ciek. Na rysunku 13.7 przedstawiono przykad wasnoci udziau o nazwie
Internal Documents i ciece /Volumes/HR/Payroll/Internal Documents.
Podobnie jak w przypadku wza users, czas utworzenia punktu udostpniania mona
sprawdzi w pliku bazy danych sqlindex. Na rysunku 13.8 wida t wanie informacj.
Warto 1382822698 oznacza sobot, 26 padziernika 2013 roku, 21:24:58 GMT.
Dowody
Na woluminach wymiennych, np. napdach USB, folder oglny (przykadowo /Volumes/
USBDRIVE/.Trashes) tworzony jest w chwili zamontowania woluminu. Gdy uytkownik usunie
z tego napdu plik, system Mac OS X utworzy w tym folderze katalog dla identyfikatora tego
uytkownika (np. /Volumes/USBDRIVE/.Trashes/501, jeli uytkownik ma identyfikator 501).
W folderze tym zapisywane s kopie wszystkich plikw usunitych przez uytkownika
o okrelonym identyfikatorze.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 419
Istnieje moliwo zwikszenia dokadnoci danych rejestrowanych przez auditd przed wystpieniem
incydentu. W tym celu naley wprowadzi ponisze zmiany w pliku konfiguracyjnym auditd
/etc/security/audit_control, a nastpnie ponownie uruchomi komputer:
flags:all
naflags:lo,aa,pc,nt
policy:cnt,argv
filesz:1G
expire-after:10G
szczegy, mona sprawi, e narzdzie bdzie zachowywa zmienne rodowisk dla kadego
procesu. Naley jednak wiedzie, e spowoduje to znaczne zwikszenie objtoci dziennikw.
Najbardziej przekonujcy powd do wczenia tych opcji przedstawiono na rysunku 13.9.
Jest to okno narzdzia Audit Explorer z wykazem wszystkich polece wykonanych podczas
krtkiej sesji SSH. Jak wida, wczenie kompletnej inspekcji znacznie uatwia odtworzenie
poczyna hakera.
W ten sposb da si wykry nawet aktywno ukryt za pomoc starej sztuczki polegajcej
na wykorzystaniu do uruchamiania kodu aplikacji vi. Na rysunku 13.10 wida, e z poleceniem !
edytora vi kto wykona polecenie cp /etc/passwd ~. Zwr uwag, e PID rodzica to vim.
System Mac OS X zawiera wiele usug pomocniczych dziaajcych w tle. Usugi te wspomagaj
system i aplikacje uytkownika, nadzorujc zdarzenia i wsplne dane. Wikszo aplikacji pomocniczych
zapisuje informacje o stanie w plikach bazy danych SQLite i plikach list wasnoci. W kadej chwili
liczba uruchomionych usug systemowych moe przekroczy czterdzieci niezalenych procesw.
Niektre z nich s dla nas interesujce, poniewa peni wan funkcj lub zapewniaj usugi
pomocnicze dla innych aplikacji. Oto kilka przykadw tych usug pomocniczych:
airportd zarzdza poczeniami z sieciami bezprzewodowymi,
aosnotifyd demon usugi Znajd mj Mac,
pboard systemowa tablica nadzorujca operacje kopiowania, wycinania i wklejania,
sharingd zarzdza udostpnianiem danych i napdw innym systemom,
spindump_agent wspomaga monitor Spindump oraz raportowanie bdw i zawiesze
aplikacji.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 421
Niektre z tych usug zapisuj dane, ktre mog by przydatne w pewnych rodzajach ledztw.
Wemy np. informacje zapisywane przez usug airportd.
Wiele usug, wcznie z airportd, dziaa w piaskownicy, wic wymaga do tego celu odpowiedniego
profilu. W informacjach tych moemy odkry rne miejsca przechowywania danych wykorzystywane
przez aplikacj. Firma Apple zapisuje pliki konfiguracyjne aplikacji dziaajcych w piaskownicy
w katalogu /usr/share/sandbox. Poniej pokazano fragment kodu konfiguracyjnego usugi airportd:
(allow file*
(literal "/dev/io8log")
(literal "/dev/io8logmt")
(literal "/dev/io8logtemp")
(regex #"^/dev/pf")
(regex #"^/dev/bpf")
(regex #"^/Library/Preferences/SystemConfiguration/preferences\.plist")
(regex #"^/Library/Preferences/SystemConfiguration/com\
.apple\.airport\.preferences\.plist")
(regex #"^/Library/Preferences/SystemConfiguration/com\
.apple\.wifi\.message-tracer\.plist")
)
422 INCYDENTY BEZPIECZESTWA
Ze zwrconych danych wynika, e w pliku tym usuga airportd przechowuje list punktw
dostpowych i sieci, z ktrymi si czy. Przykadowe wyniki pokazalimy dalej w ramach
opisywanego zdarzenia.
Dowody
Demony syslog i ASL to procesy odpowiedzialne za wikszo danych znajdujcych si w dziennikach
w systemie Mac OS X. Najwicej informacji dziennikowych mona znale w katalogu /private/var/log,
wic zaczniemy od niego.
Jeli kto korzysta z narzdzi obsugi dziennikw w nowoczesnych dystrybucjach Linuksa,
z pewnoci rozpozna wiele z opisywanych tu plikw, cho oczywicie s wrd nich take pliki
charakterystyczne tylko dla systemu Mac OS X. W trakcie prowadzenia czynnoci ledczych
w systemach uniksowych jednym z pierwszych plikw, jakie badamy, jest plik konfiguracyjny syslog.
W pliku tym okrelone jest miejsce zapisu lub przekierowania wiadomoci przez demony obsugujce
syslog. Firma Apple dodaa jeszcze jedn warstw o nazwie ASL (ang. Apple System Log). Plik
konfiguracyjny usugi ASL zawiera informacje, ktre tradycyjnie definiuje si w pliku /etc/syslog.conf.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 423
Usuga ASL zapewnia aplikacjom dziaajcym w systemie Mac OS X take dodatkowe funkcje,
ktre umoliwiaj skuteczniejsze przechowywanie i obsugiwanie dziennikw. Normalne
komunikaty syslog maj prost struktur:
czas nadejcia wiadomoci do demona syslog,
rdo wiadomoci,
wano i typ wiadomoci,
tre wiadomoci.
Usuga ASL jest bardziej elastyczna. Gdy programista przesya dzienniki przez t usug, moe
oprcz standardowych pl syslog zdefiniowa wasne pary klucz-warto. W parach tych mona
zapisa cza do plikw zewntrznych, okreli uytkownikw lub identyfikatory grup, ktre powinny
otrzyma dan wiadomo, oraz ustawi czas wyganicia wiadomoci. W opublikowanych niedawno
dokumentach firma Apple zasugerowaa, aby programici zaczli uywa w wiadomociach hasztagw,
424 INCYDENTY BEZPIECZESTWA
Analiza
Analiza danych syslog i ASL z systemu Mac OS X jest atwa. Wikszo dziennikw jest w formacie
tekstowym, wic jako analityk masz szerokie pole dziaania. W zalenoci od objtoci danych i ich
formatu, do analizy wykorzystujemy rne narzdzia uniksowe, np. cat, grep czy awk. Czasami
najlepszym rozwizaniem jest zaimportowanie danych do arkusza kalkulacyjnego. Ponadto, jeli
dzienniki s due, a chcemy obejrze dzienniki w kilku rnych formatach naraz, moemy
zaimportowa dane do narzdzia zarzdzania dziennikami, takiego jak np. Sawmill, Splunk
lub Logstash. Wszystkie zawieraj funkcje przeksztacania danych i wyszukiwarki.
W INTERNECIE
Logstash www.logstash.net
Sawmill www.sawmill.net
Splunk www.splunk.com
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 425
Przyjrzymy si tym wpisom i zobaczymy, jakie informacje mona z nich wydoby. W pierwszej
linijce znajduje si powiadomienie z jdra, e interfejs przesta dziaa. Zdarzenie to spowodowao
kaskad innych zdarze, z ktrych pierwsze to aktualizacja konfiguracji sieci systemowej. Nazwa
domeny hosta zostaa zmieniona na .local przez proces o nazwie configd. Pniej ten sam proces
zapisa w dzienniku wydany przez siebie adres (10.1.4.105) oraz zanotowa, e usugi DNS, Proxy
i SMB (funkcja udostpniania plikw Samba) zostay dezaktywowane (zwr uwag na znak
minus w danych). Jeden z demonw odpowiedzialnych za cz protokou SMB netbiosd zgasza
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 427
zakoczenie dziaania. W pitej linijce proces iCloudHelper informuje, e nie udao si speni
dania konfiguracji. Dowiadujemy si, e istnieje konto iCloud powizane z systemem, cho do
tej pory i tak pewnie bymy o tym ju wiedzieli. Kolejnym wanym spostrzeeniem jest to, e wiele
usug i aplikacji wysya do syslog informacj o biecej wersji systemu operacyjnego. Moe to by
bardzo cenna informacja, gdy istnieje podejrzenie, e gwny uytkownik prbowa zmieni dane
w dzienniku lub sam system operacyjny. W kocu w ostatniej linijce znajdujemy informacj, e
proces AddressBookSourceSync nie mg poczy si z adresem 10.1.4.4. Jest to kolejny trop mogcy
wskazywa, e dane uytkownika mog znajdowa si na zdalnych serwerach.
Chwil pniej do dziennika systemowego zostay wysane nastpujce wiadomoci:
Jan 23 20:09:16 planck.local KernelEventAgent[99]: tid 54485244
received event(s) VQ_DEAD (32)
Jan 23 20:09:16 planck.local KernelEventAgent[99]: tid 54485244
type 'afpfs', mounted on '/Volumes/TMBackup', from
'//TimeMachine@nas0%28TimeMachine%29._afpovertcp._tcp.local/TMBackup',
dead
Jan 23 20:09:16 planck.local KernelEventAgent[99]: tid 54485244
force unmount
//TimeMachine@nas0%28TimeMachine%29._afpovertcp._tcp.local/TMBackup
from /Volumes/TMBackup
Jan 23 20:09:16 planck.local KernelEventAgent[99]: tid 54485244
found 1 filesystem(s) with problem(s)
Mamy tu kolejny trop. Okazuje si, e system ten wykorzystuje zdalny dysk do przechowywania
kopii zapasowych tworzonych przez program Time Machine. System by poczony za pomoc
protokou AFP (ang. Apple File Protocol) z punktem montau (ang. TimeMachine) w systemie
o nazwie nas0. Jeli przeszukujesz nieznany obszar roboczy, teraz powiniene poszuka w lokalnej
sieci LAN sieciowych urzdze magazynowych o nazwie nas0.
Po podczeniu kabla sieciowego z powrotem do komputera usugi wczaj si i nastpuje
odtworzenie przedstawionego procesu. Ponisze zapisy z dziennika ilustruj ponowne uruchamianie
usug (zwr uwag na znaki plus w drugim wpisie):
Jan 23 20:11:50 planck kernel[0]: Ethernet [AppleBCM5701Ethernet]:
Link up on en0, 1-Gigabit, Full-duplex, Symmetric flow-control,
Debug [796d,2321,0de1,0300,cde1,3c00]
Jan 23 20:11:50 planck.local configd[17]: network changed:
v4(en0+:10.1.4.105) DNS+ Proxy+ SMB+
Jan 23 20:11:50 planck.domainname.net configd[17]:
setting hostname to "planck.domainname.net"
Jan 23 20:12:42 planck.local com.apple.usbmuxd[77]:
SendAttachNotification Device
88:53:95:12:60:1c@fe80::8a53:95ff:fe12:601c._apple-mobdev2._tcp.local.
has already appeared on interface 5. Suppressing duplicate
attach notification.
Bardzo ciekawy jest ostatni wpis, przesany przez usug usbmuxd. Dowiadujemy si z niego,
e gdy laptop odzyska dostp do sieci, ponownie poczy si z urzdzeniem przenonym firmy
Apple, z ktrym by sparowany za pomoc iTunes. Adres MAC tego urzdzenia to 88:53:95:12:60:1c.
428 INCYDENTY BEZPIECZESTWA
Dziennik ten zosta utworzony w 2014 roku i przedstawia sekwencj zdarze, w ktrej uytkownik
by poczony z punktem dostpowym driver8 w pitek, Aloft_guest w sobot, znw z driver8
w poniedziaek, a potem z Mishas Coffee w czwartek.
Jak wspomnielimy ju wczeniej, jedn z wielkich zalet firmy Apple jest to, e doskonale
dopracowaa szczegy zwizane z wygod korzystania z jej produktw. Zatem teraz przyjrzymy si
innym plikom, aby dowiedzie si, czy airportd lub inny demon zarejestrowa informacje
zwizane z przedstawionymi wpisami z dziennika wifi.log. Wczeniej napisalimy, e airportd
prowadzi list skojarze protokou 802.11 w pliku
/Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist. Zajrzymy do tego
pliku, aby sprawdzi, czy zawiera dodatkowe informacje o poznanych przez nas punktach
dostpowych.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 429
W INTERNECIE
iSniff GPS github.com/hubert3/iSniff-GPS
Wireless Geographic Logging Engine wigle.net
Dowody
Wszystkie ustawienia konfiguracyjne launchd s przechowywane w formacie XML w piciu
katalogach, ktrych lista znajduje si poniej (lista ta pochodzi z dokumentacji programu).
~/Library/LaunchAgents Per-user agents provided by the user.
/Library/LaunchAgents Per-user agents provided by the administrator.
/Library/LaunchDaemons System-wide daemons provided by the administrator.
/System/Library/LaunchAgents Per-user agents provided by Mac OS X.
/System/Library/LaunchDaemons System-wide daemons provided by Mac OS X.
Ponadto polecenie, ktre steruje narzdziem launchd, czyli launchctl, prowadzi list polece
do wykonania przy starcie. Odpowiednie pliki konfiguracyjne to:
$HOME/.launchd.conf
/etc/launchd.conf
Katalogi LaunchDaemons zawieraj pliki definicji w formacie XML dla usug, np. sshd i Apache.
Katalogi LaunchAgent zawieraj pliki definicji dziaa typu CRON. Zadania zaadowane do launchd
s traktowane jako aktywne. Opcje zapisane w pliku XML okrelaj czas wykonania danych
czynnoci. Klucz StartCalendarInterval jest rwnowany z normalnym CRON. W dokumentacji
pliku launchd.pslist znajduje si lista wszystkich kluczy listy wasnoci. Poniej przedstawiamy
tylko kilka najbardziej interesujcych wasnoci dotyczcych LaunchAgents.
KeepAlive wasno ta nakazuje programowi launchd sprawdzenie, czy proces
jest utrzymywany w aktywnoci w okrelonych warunkach. Mona j wykorzysta
do ponownego uruchamiania zada, gdyby z jakiego powodu zostay wyczone.
WatchPaths launchd uruchomi zadanie, jeli zmieni si cieka.
StartOnMount zadanie jest uruchamiane po udanym zamontowaniu systemu plikw.
ExitTimeout launchd moe wymusi zakoczenie procesu, jeli przekroczy on okrelony
czas dziaania.
Demony LaunchDaemons s podobne do plikw kontroli wykonywania, tylko maj szerszy
wachlarz moliwoci. Oprcz wymienionych wasnoci, mona te ustawia opcje gniazdowe
oraz publikowa ogoszenia za pomoc usugi Bonjour.
Uwaga Bonjour to opracowana przez firm Apple implementacja technik Zero Configuration Networking
umoliwiajca systemom ogaszanie dostpnoci usug w lokalnej sieci. To wanie dziki temu
wiele aplikacji tej firmy wykrywa znajdujce si w pobliu urzdzenia i osoby, np. drukarki,
skanery i uytkownikw iChata.
Analiza
Pliki konfiguracji usug dla LaunchAgents i LaunchDaemons s w formacie XML, wic ich analiza
nie nastrcza adnych problemw. Podczas szukania w nich ladw utrwalenia szkodliwych
programw do sprawdzania legalnoci usug mona wykorzysta system plikw i pliki BOM.
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 431
Pamitaj, e zarwno LaunchAgents, jak i LaunchDeamons mog uruchamia powok tak samo
atwo jak aplikacje, wic przejrzyj wszystkie pary klucz-warto programu.
W ramach przykadu legalnej usugi LaunchDaemons przedstawiamy wycinek deklaracji
usugi sshd z folderu /System/Library/LaunchDaemons:
<dict>
<key>Disabled</key>
<true/>
<key>Label</key>
<string>com.openssh.sshd</string>
<key>Program</key>
<string>/usr/libexec/sshd-keygen-wrapper</string>
<key>ProgramArguments</key>
<array>
<string>/usr/sbin/sshd</string>
<string>-i</string>
</array>
<key>Sockets</key>
<dict>
<key>Listeners</key>
<dict>
<key>SockServiceName</key>
<string>ssh</string>
<key>Bonjour</key>
<array>
<string>ssh</string>
<string>sftp-ssh</string>
</array>
</dict>
</dict>
<key>inetdCompatibility</key>
<dict>
<key>Wait</key>
<false/>
</dict>
<key>StandardErrorPath</key>
<string>/dev/null</string>
<key>SHAuthorizationRight</key>
<string>system.preferences</string>
<key>POSIXSpawnType</key>
<string>Interactive</string>
</dict>
Powyszy plik XML informuje narzdzie launchd, e usuga sshd jest aktualnie wyczona.
Gdybymy jednak j wczyli, zostaaby ogoszona przez Bonjour jako sftp-ssh.
432 INCYDENTY BEZPIECZESTWA
Instalatory aplikacji
Gdy instalowane s aplikacje, system instalacyjny zapisuje informacje o dwch plikach, ktre
trafiaj na dysk. W katalogu /private/var/db/receipts tworzone s z reguy dwa pliki dla kadej
instalacji lista skadowa BOM (ang. bill of materials), czyli spis wszystkich plikw, oraz plist
zawierajcy dat instalacji, identyfikator pakietu oraz listy kontroli dostpu do cieek. Plik
magazynowy zawiera nazwy plikw, kompletne cieki, metadane systemu plikw oraz 32-bitow
sum kontroln. Poniszy wycinek przedstawia metadane niedawno przeprowadzonej instalacji
programu Autodesk AutoCAD WS:
Powysze dane z pliku BOM pobralimy za pomoc narzdzia o nazwie lsbom. Wywoalimy je
z opcjami f (nazwa pliku), M (tryb pliku), T (sformatowany czas modyfikacji), S (sformatowany
rozmiar) oraz C (suma kontrolna CRC32).
ROZDZIA 13. PROWADZENIE CZYNNOCI LEDCZYCH W SYSTEMACH MAC OS X 433
POWTRZENIE ODPOWIEDZI
NA CZSTO ZADAWANE PYTANIA
W tym podrozdziale zastanowimy si nad typowymi sytuacjami, jakie mona spotka podczas
prowadzenia ledztw typu RI. Podobnie jak w rozdziale 12., przedstawiamy kilka problemw i ich
moliwe rozwizania. Na wikszo pyta mona odpowiedzie na wiele sposobw, a metody mog
ulega zmianom wraz z pojawianiem si nowych wersji systemu Mac OS X.
Jakie usugi dziaay lub jakie udziay byy dostpne podczas tworzenia obrazu systemu?
Kto interaktywnie logowa si w systemie? Jakiego dnia i o ktrej godzinie dany uytkownik
logowa si w systemie?
I CO Z TEGO
System Apple Mac OS X sta si podstawowym rodowiskiem pracy w wielu organizacjach i cho
tylko sporadycznie spotyka si go w roli serwera, wiele organizacji korzysta z tej platformy zamiast
systemu Microsoft Windows. Znajdowalimy te komputery we wszystkich dziaach firm, od
tradycyjnego marketingu i sprzeday po inynieri oprogramowania i IT. Liczba niezawodnych
narzdzi do badania tej platformy jest bardzo skromna. Do najlepszych mona zaliczy produkty
firmy BlackBag Technologies, ale na razie najlepszym rozwizaniem jest korzystanie z mniejszych
narzdzi. W wikszoci przypadkw analiz obrazu systemu najlepiej prowadzi w rodowisku
macierzystym lub systemie Linux. W rozdziale tym opisalimy pobienie niektre najbardziej
przydatne rda dowodw; jest ich o wiele wicej, tylko wci czekaj na udokumentowanie.
436 INCYDENTY BEZPIECZESTWA
PYTANIA
1. Podczas ledztwa administrator sieci powiadamia Ci, e system Mac OS X generuje duy
ruch, ktry nie znajduje uzasadnienia w normalnej aktywnoci systemu. Jak zidentyfikujesz
rdo tego ruchu?
2. Jakie pliki pobraby najpierw podczas analizy systemu na ywo, aby wzbogaci rda
danych opisane w rozdziale 7.?
3. Uniksowe polecenie touch umoliwia aktualizowanie czasw dostpu do pliku i jego
modyfikacji. Jakie inne rda danych czasowych mona wykorzysta w celu ustalenia,
czy kto szpera w danych czasowych?
4. Wymie kilka mechanizmw podtrzymania obecnoci, ktre haker moe wykorzysta
w celu zachowania dostpu do zdobytego systemu Mac OS X. Jakich polece podczas
analizy na ywo uyby w celu automatycznego przejrzenia tych mechanizmw?
ROZDZIA 14.
Badanie aplikacji
438 INCYDENTY BEZPIECZESTWA
P
odczas analizowania materiau dowodowego czsto mona odkry lady nienalece do
systemu operacyjnego. W prawie kadym komputerze obecne s dane pozostawione przez
aplikacje uytkownika, takie jak przegldarki internetowe, klienty poczty elektronicznej,
pakiety biurowe i rnego rodzaju komunikatory. Istniej te aplikacje usugowe, takie jak serwery
internetowe, serwery baz danych i serwery poczty elektronicznej, ktre wspomagaj zarwno
aplikacje uytkownika, jak i infrastruktur informatyczn. Te dane czsto stanowi najwaniejsze
rdo dowodw w ledztwie. Dlatego umiejtno rozpoznawania i analizowania danych
z aplikacji jest niezwykle wana.
Jako e twrcy aplikacji maj du swobod w zakresie sposobu przechowywania informacji,
bdziesz mie styczno z wieloma rnymi formatami danych. Niektre aplikacje wykorzystuj
tylko jeden format, podczas gdy inne posuguj si wieloma formatami danych. Twrcy programw
z reguy wybieraj takie formaty, ktre najlepiej odpowiadaj ich potrzebom. Mona spotka
zarwno otwarte formaty darmowe, jak i formaty opracowane przez firmy na wasne potrzeby.
Niektry artefakty aplikacji s niezalene od systemu operacyjnego. Przykadowo pliki historii
niektrych przegldarek internetowych s takie same we wszystkich systemach operacyjnych,
w ktrych si je instaluje. Jest to dla nas korzystne, poniewa czasami moemy posugiwa si
podobnymi narzdziami i technikami do analizy danych aplikacji pochodzcych z rnych
systemw operacyjnych.
Dane aplikacji s bardzo wane, poniewa obok artefaktw systemu operacyjnego stanowi
dodatkowe rdo potencjalnego materiau dowodowego. Wrd aplikacji, ktre najczciej bada
si podczas ledztw, mona wymieni klienty poczty elektronicznej, przegldarki internetowe
i komunikatory internetowe. Oczywicie jest ich o wiele wicej cae ksiki pisze si na temat
analizowania materiau dowodowego pochodzcego tylko z jednej aplikacji. Informacje zdobyte
podczas badania aplikacji mog przyczyni si do rozwizania problemu. W rozdziale tym
opisujemy oglne metody analizowania aplikacji oraz przygldamy si dokadniej popularnym
rodzajom aplikacji i rozwiza. Tak jak w poprzednich rozdziaach, naszym celem nie jest
wyczerpujce opisanie tematu, tylko dostarczenie najbardziej potrzebnych informacji.
CO TO S DANE APLIKACJI
Dane aplikacji to dane tworzone, przechowywane i obsugiwane przez aplikacj. Istnieje wiele
sposobw przechowywania i reprezentacji danych, ktre cigle si zmieniaj. Niektre programy
s w miar stabilne, podczas gdy inne ulegaj radykalnym zmianom z miesica na miesic. Z tego
powodu narzdzia i metody badania aplikacji take mog znacznie si zmieni z czasem. Jako e
nie chcemy zgadywa, jak aplikacje bd wyglday w przyszoci, w rozdziale tym opisujemy nie
tylko konkretne aplikacje, ale i oglne metody ledcze. Najpierw jednak pokazujemy, gdzie programy
przechowuj swoje dane.
ROZDZIA 14. BADANIE APLIKACJI 439
System Windows
W systemach Microsoft Windows jest kilka dobrych miejsc, do ktrych mona zajrze, aby
sporzdzi list potencjalnych tropw. Wprawdzie kady program moe zapisywa swoje dane
w dowolnym miejscu, ale poniej przedstawiamy list miejsc, ktre s wg nas najbardziej warte
sprawdzenia. S to domylne lokalizacje, ktre mog zawiera artefakty nawet po tym, jak program
zostanie odinstalowany, czyli usunity z systemu operacyjnego. Wikszo aplikacji wykorzystuje
jedno, kilka lub wszystkie z wymienionych tu miejsc.
Domylny katalog instalacyjny aplikacji jest to folder, w ktrym podczas instalacji
programu umieszczany jest cay wykonywalny kod. Najczciej folderem tym jest
C:\Program Files. Dobrym pomysem jest posortowanie zawartoci tego katalogu wg daty
modyfikacji lub utworzenia, aby szybko si dowiedzie, kiedy ostatnio zainstalowano lub
zmieniono jak aplikacj. W systemach 64-bitowych istnieje jeszcze dodatkowo folder
C:\Program Files (x86), w ktrym domylnie instalowane s aplikacje 32-bitowe.
Domylne katalogi danych aplikacji aplikacje systemu Windows do przechowywania
danych, np. plikw konfiguracyjnych lub plikw tymczasowych, zazwyczaj wykorzystuj
wsplny katalog. W systemie Windows XP i starszych naley sprawdzi wszystkie
podkatalogi katalogu C:\Documents and Settings\{nazwauytkownika}\Application Data.
W systemie Windows Vista i nowszych naley sprawdzi wszystkie podkatalogi katalogu
C:\ProgramData and C:\Users\{nazwauytkownika}\AppData.
Informacje dotyczce dezinstalacji w rejestrze w rejestrze systemu Windows
znajduje si specjalne miejsce, w ktrym aplikacje mog zaznaczy si do odinstalowania
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Wikszo kluczy
ma warto o nazwie InstallLocation zawierajc ciek do folderu, w ktrym zostaa
zainstalowana aplikacja. W 64-bitowych wersjach systemu Windows naley sprawdzi
klucz HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall,
ktry zawiera informacje o zainstalowanych aplikacjach 32-bitowych.
Domylne miejsca do przechowywania danych konfiguracyjnych w rejestrze aplikacje
systemu Windows czsto zapisuj informacje konfiguracyjne we wsplnym kluczu rejestru.
Naley sprawdzi wszystkie podklucze klucza HKLM\SOFTWARE. W systemach 64-bitowych
naley te sprawdzi klucz HKLM\SOFTWARE\Wow6432Node, poniewa w nim znajduj
si informacje dotyczce aplikacji 32-bitowych.
440 INCYDENTY BEZPIECZESTWA
System OS X
W systemie Apple OS X aplikacji i ich danych naley szuka w dwch miejscach.
Domylny katalog instalacji aplikacji w systemie OS X programy s domylnie
instalowane w katalogu /Applications. Podobnie jak w systemie Windows, uytkownik
moe te instalowa aplikacje w dowolnie wybranym miejscu.
Dane aplikacji przyporzdkowane do poszczeglnych uytkownikw aplikacje OS X
z reguy zapisuj dane dotyczce poszczeglnych uytkownikw w katalogach znajdujcych si
w profilach tych uytkownikw. Domylna lokalizacja to /Users/{profil}/Library/Application
Support. W katalogu tym wikszo aplikacji tworzy dodatkowy katalog o nazwie takiej samej
jak nazwa aplikacji i zapisuje w nim dane.
System Linux
W systemie Linux miejsce przechowywania danych aplikacji zmienia si w zalenoci od dystrybucji
i zastosowanych w niej indywidualnych ustawie. W systemach tych dane aplikacji znajdujemy na
dwa sposoby. Po pierwsze, rcznie przegldamy system plikw. Po drugie, sprawdzamy meneder
pakietw. Przyjrzymy si obu tym rozwizaniom nieco dokadniej.
Rczne przegldanie systemu plikw moe by bardzo czasochonne i mudne, zwaszcza gdy
nie ma adnych wskazwek. Pomocna moe by znajomo pewnych konwencji przestrzeganych
w wikszoci dystrybucji Linuksa o nazwie FHS (ang. Filesystem Hierarchy Standard). Standard ten
okrela struktur katalogw, jak powinny mie dystrybucje systemu Linux. Dokument ten mona
znale na podanej poniej stronie internetowej.
W INTERNECIE
www.samba.org/~cyeoh
Wikszo dystrybucji przestrzega tylko czci tego standardu, wic dobre tropy powinno si
znale po przejrzeniu nastpujcych lokalizacji.
Systemowe dane konfiguracyjne w wikszoci dystrybucji Linuksa systemowe dane
konfiguracyjne przechowywane s gwnie w katalogach /etc i /usr/local/etc/.
Dane aplikacji poszczeglnych uytkownikw dane tego rodzaju najczciej mona
znale w podkatalogach katalogu gwnego uytkownika, ktrym domylnie jest default
/home/{nazwauytkownika}.
Lokalizacje plikw wykonywalnych standardowe katalogi, w ktrych mona znale
pliki wykonywalne to /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin oraz /usr/local/sbin.
Oprogramowanie dodatkowe niektre zewntrzne aplikacje i ich dane mona znale
w katalogu /opt.
ROZDZIA 14. BADANIE APLIKACJI 441
W niektrych dystrybucjach wraz z rpm uywany jest meneder yum (ang. Yellowdog
Updater, Modified). Systemy z yum zazwyczaj prowadz dziennik /var/log/yum.log,
w ktrym mona znale historyczny rejestr wszystkich zainstalowanych, zmienionych
i skasowanych pakietw.
Dystrybucje oparte na Debianie w tych dystrybucjach wykorzystywany jest meneder
pakietw dpkg, ktrego pakiety maj domylnie rozszerzenie .deb. Dwie popularne dystrybucje
z tym narzdziem to Ubuntu i Knoppix. Aby wywietli prost list zainstalowanych pakietw,
naley wykona nastpujce polecenie:
dpkg --get-selections
Jeli trzeba zbada obraz systemu wykonany na potrzeby dochodzenia, mona go uruchomi
za pomoc oprogramowania wirtualizacyjnego, np. VMware Workstation lub Oracle VirtualBox.
Pamitaj tylko, by nie podcza maszyny wirtualnej do swojej sieci, poniewa obraz moe zawiera
szkodliwe oprogramowanie.
dla konkretnych jednostek, ktre mona spotka tylko w wybranych dziaach jednej firmy. Dlatego
postanowilimy troch nauczy Ci owi ryby, a nie tylko da Ci gotow ryb na talerzu.
Co zatem mamy na myli, piszc badanie aplikacji na potrzeby ledztwa? W tym przypadku
chodzi o dowiedzenie si, jakie artefakty tworzone przez program mog by przydatne w dochodzeniu.
Jeeli brakuje dobrej dokumentacji programu, moe by konieczne przeprowadzenie wasnych
analiz w celu wykrycia istotnych artefaktw i okrelenia metod ich interpretacji. Jeli dokumentacji
jest bardzo mao albo nie ma jej w ogle, istnieje wiksze ryzyko, e dojdziemy do bdnych wnioskw.
Dlatego w powanych ledztwach, np. w sprawie zgoszenia przestpstwa, dobrym pomysem moe
by wynajcie eksperta od informatyki ledczej. W sprawach lejszej wagi czasami wystarczaj analizy
wykonywane we wasnym zakresie.
Prac najlepiej zacz od sprawdzenia w zasobach spoecznoci informatykw ledczych, co ju
wiadomo na dany temat. Bardzo dobrymi rdami takich informacji s portale Forensic Focus
i Forensics Wiki, a take rne tablice dyskusyjne prowadzone przez programistw aplikacji.
Jeli posiadasz patny program z dziedziny informatyki ledczej, wiele cennych informacji moesz
znale na prywatnych tablicach dyskusyjnych producenta.
W INTERNECIE
Forensics Wiki www.forensicswiki.org
Forensic Focus www.forensicfocus.com
W INTERNECIE
EnCase www.encase.com/products/Pages/encase-forensic/overview.aspx
FTK www.accessdata.com/products/digital-forensics/ftk
Jeli w tych zasobach nie znajdziesz potrzebnych informacji, moe pozosta Ci ju tylko
przeprowadzenie bada i testw na wasn rk. Miej tylko przez cay czas na uwadze, jakiego rodzaju
spraw si zajmujesz i jakie implikacje bdzie miao ewentualne niepowodzenie Twoich dziaa.
Czynnoci zwizane z badaniem aplikacji w pewnym stopniu pokrywaj si z procedurami
sortowania szkodliwego oprogramowania. Nie jest to chyba wielkim zaskoczeniem, poniewa
jednym z gwnych celw sortowania szkodliwych programw jest dowiedzenie si, co dokadnie
robi. Tylko w tym przypadku sprawa dotyczy legalnej aplikacji, a nie jakiego wirusa.
Zastosowanie ma tu wiele technik opisanych w rozdziale 15., w podrozdziaach rodowisko do
sortowania i Analiza dynamiczna. Jeli czytajc ten rozdzia, dojdziesz do wniosku, e brakuje
Ci szczegw, moesz poszuka szerszych informacji w rozdziale 15.
ROZDZIA 14. BADANIE APLIKACJI 443
Ostrzeenie Jeli uyjesz innej wersji aplikacji i systemu operacyjnego ni s w rodowisku bdcym
przedmiotem analizy, moesz przeoczy cenne artefakty albo wda si w poszukiwania ladw,
ktre nie maj zwizku z Twoj sytuacj. Jak ju wiesz, kada wersja programu moe pozostawia
w systemie inne artefakty. W zwizku z tym koniecznie trzeba prowadzi badania na wersji
aplikacji jak najbardziej zblionej do tej, ktra jest zainstalowana w rodowisku docelowym.
Ponadto take wersja systemu operacyjnego ma znaczenie i dlatego powinno si uywa
dokadnie takiej samej wersji (wcznie z zainstalowanymi poprawkami), jaka jest zainstalowana
w rodowisku, ktrego dotyczy ledztwo.
Uwaga Gdy znajdziesz co ciekawego, takiego jak opisany klucz rejestru, nie wycigaj od razu pochopnych
wnioskw, tylko sprbuj dowiedzie si czego wicej. W ciece do omawianego klucza znajduje si
nazwisko Simon Tatham. Poniewa atwo powiza nazwisko z aktywnoci w systemie, uwaamy,
e stosowne bdzie poinformowanie, i Tatham jest po prostu twrc programu PuTTY. W takich
przypadkach bardzo pomocne s popularne wyszukiwarki internetowe.
ROZDZIA 14. BADANIE APLIKACJI 445
Z tych informacji wynika, e moe uda si sporzdzi list hostw, z ktrymi czy si haker.
Trzeba tylko sprawdzi klucz rejestru HKCU\Software\SimonTatham\PuTTY\SshHostKeys na
odpowiednim koncie uytkownika w systemie bdcym przedmiotem ledztwa. Jednak musisz
wiedzie, e informacje te mog te wprowadza w bd.
Pierwszy problem moe wystpi, gdy klucz SshHostKeys bdzie zawiera kilka wartoci.
Wwczas nie da si jednoznacznie stwierdzi, kiedy kada z tych wartoci zostaa utworzona.
Wynika to z tego, e rejestr systemu Windows zapisuje znaczniki czasu modyfikacji (nie utworzenia),
oraz z tego, e znaczniki czasu w rejestrze s przypisywane do kluczy, a nie wartoci. Lista
skadajca si z piciu pozycji moga powstawa kilka tygodni, miesicy lub lat. Przez to atwo
wycign niepoprawny wniosek, e haker czy si z wszystkimi picioma adresami, podczas
gdy w rzeczywistoci korzysta tylko z jednego, ktry zosta zapisany jako ostatni. Ponadto, jeeli
PuTTY jest rutynowo wykorzystywany w badanym rodowisku, moe by trudno odrni wpisy
zwizane z dziaalnoci hakera od legalnych zdarze.
Drugi potencjalny problem dotyczy rozpoznania, czy dany klucz rejestru naley do uytkownika.
Koniecznie przyjrzyj si gazi rejestru tego uytkownika, pod ktrego podszy si haker. Jeli haker
wykorzysta konto Marlena, a Ty sprawdzasz ga uytkownika Administrator, to nie znajdziesz
klucza rejestru i moesz doj do bdnego wniosku, e haker nie czy si z adnym hostem.
Oczywicie przy interpretacji danych mona popeni jeszcze wiele innych bdw. Chodzi tylko
o to, aby uwaa na konkluzje formuowane na podstawie niepenych informacji.
Znasz ju oglne metody sprawdzania, jakie dane moe zapisywa aplikacja, wic moemy przej
do szczegowego opisu konkretnych kategorii aplikacji. Wybralimy cztery kategorie, ktre, jak
podpowiada nam dowiadczenie, stwarzaj najwiksze szanse na uzyskanie materiau dowodowego.
Opisujemy przegldarki internetowe, klienty poczty elektronicznej, komunikatory internetowe
oraz programy szyfrujce. W kadej z kategorii przedstawiamy po jednej typowej aplikacji, ktr
czsto spotykamy podczas wasnych ledztw. Za kadym razem opisujemy miejsca przechowywania
danych, formaty danych oraz narzdzia do ich analizy. Zaczynamy od przegldarek internetowych.
PRZEGLDARKI INTERNETOWE
Przegldarki internetowe nale do najpopularniejszych aplikacji komputerowych. Su do
pobierania, przetwarzania i prezentowania informacji, ktre najczciej wystpuj w formacie
HTML i rozmaitych formatach multimedialnych. Przegldarka pobiera dane HTML i multimedia,
a nastpnie tworzy z nich spjn prezentacj zwan potocznie stron internetow. Program ten
moe pobiera dane zarwno z komputera lokalnego, jak i innej maszyny zwanej serwerem, ktra
moe znajdowa si w sieci lokalnej, w pobliskim miecie, ale te i na drugim kocu wiata.
Ponadto przegldarki internetowe mog wysya dane do serwerw w ramach interaktywnej
komunikacji, np. poprzez aplikacje handlu elektronicznego, rodowiska wsppracy czy gry
komputerowe. W miar zwikszania si moliwoci przegldarek internetowych coraz wicej
tradycyjnych programw, takich jak procesory tekstu i klienty poczty elektronicznej, zamienia si
w aplikacje internetowe, czyli interaktywne sesje umiejscowione w przegldarce. Te zmiany
sprawiaj, e specjalici RI musz doskonale zna zasady dziaania przegldarek internetowych.
446 INCYDENTY BEZPIECZESTWA
W INTERNECIE
Digital Detective NetAnalysis www.digital-detective.co.uk/netanalysis.asp
Internet Evidence Finder www.magnetforensics.com/software/internet-evidence-finder
W INTERNECIE
www.nirsoft.net/utils/browsing_history_view.html
www.mandiant.com/resources/download/redline
Internet Explorer
Przegldarka Internet Explorer (IE) to program o zamknitym kodzie rdowym firmy Microsoft.
Jest ona domylnie instalowana w systemach operacyjnych Windows, wic mona te najczciej
spotka j w duych przedsibiorstwach. Wersja 1.0 Internet Explorera zostaa wydana w 1995
roku wraz z wersj OEM systemu Windows 95. Firma Microsoft zakupia stanowic jej podstaw
technologi od firmy Spyglass twrcw przegldarki Mosaic. Powstay te wersje Internet
Explorera dla systemw Mac OS X, cho ju od dawna panuje stagnacja w tej kwestii i dlatego
w tej ksice nie zajmujemy si przegldark Internet Explorer for Mac.
Artefakt Pooenie
Pami C:\Users\{nazwauytkownika}\AppData\Local\Microsoft\Windows\Temporary
podrczna Internet Files\
Zakadki C:\Users\{nazwauytkownika}\Favorites
Cookies C:\Users\{nazwauytkownika}\AppData\Roaming\Microsoft\Windows\Cookies
C:\Users\{nazwauytkownika}\AppData\Roaming\Microsoft\Windows\Cookies\Low
Ponisza tabela zawiera list lokalizacji tych samych zasobw w systemie Windows XP i starszych.
Artefakt Pooenie
Pami C:\Documents and Settings\{nazwauytkownika}\Local Settings\Temporary
podrczna Internet Files
Zakadki C:\Documents and Settings\{nazwauytkownika}\Favorites
Cookies C:\Documents and Settings\{nazwauytkownika}\Cookies
ROZDZIA 14. BADANIE APLIKACJI 449
W INTERNECIE
Index.dat code.google.com/p/libmsiecf
ESE code.google.com/p/libesedb
Index.dat
Jest to baza danych do przechowywania danych dotyczcych historii przegldanych stron,
wykorzystywana w przegldarce Internet Explorer w wersjach od 1. do 9. Zawarto tego pliku
moe si rni w zalenoci od typu przechowywanych informacji. Jeli dotycz one historii
przegldanych stron, plik ten zawiera otwierane adresy URL, dat ostatniego uycia, dat modyfikacji
pliku oraz dat wyganicia adresu URL. Pooenie plikw index.dat w systemie zaley od tego,
jak funkcj peni w systemie operacyjnym. Ponisza tabela zawiera zestawienie miejsc,
w ktrych najczciej mona spotka pliki index.dat.
ESE
Baza danych ESE zastpia pliki index.dat w przegldarce Internet Explorer 10. Od tej pory historia
przegldanych stron jest przechowywana w jednym pliku bazy danych dla danego uytkownika.
Firma Microsoft w przeszoci uywaa baz danych ESE do przechowywania danych LDAP,
Exchange i indeksu usugi Windows Search. Istniej narzdzia potrafice odczyta i zinterpretowa
te dane. Ich opis zamiecilimy nieco dalej. Tabela na nastpnej stronie zawiera zestawienie miejsc
przechowywania i nazwy plikw baz danych ESE przegldarki Internet Explorer.
ROZDZIA 14. BADANIE APLIKACJI 451
Baza danych ESE zawiera kilka tabel wykorzystywanych zgodnie z zapotrzebowaniem. Aby znale
potrzebne tabele, naley odszuka w bazie danych tabel o nazwie Containers. Tabela ta, pokazana
poniej, zawiera list informacji o wszystkich innych tabelach znajdujcych si w bazie danych
i ewentualnie ciek do katalogu lokalnego, w ktrym przechowywane s odpowiednie dane.
W INTERNECIE
articles.forensicfocus.com/2013/12/10/forensic-analysis-of-the-ese-database-in-internetexplorer-10
Historia
W historii przegldanych stron przegldarki IE zapisywane s adresy URL odwiedzane przez
uytkownika. Rejestrowane s adresy wpisane rcznie w pasku adresu, jak rwnie adresy
kliknitych odnonikw i zakadek. Uytkownik przegldarki Internet Explorer moe ustawi
maksymalny czas przechowywania danych historycznych, okreli kasowanie historii przegldania
452 INCYDENTY BEZPIECZESTWA
podczas zamykania programu oraz skasowa te dane wasnorcznie. Szerzej na temat sprawdzania
czasu przechowywania danych historycznych przegldarki piszemy w podpunkcie Preferencje.
Jak napisalimy wczeniej, sposb i miejsce przechowywania informacji zaley od wersji przegldarki
Internet Explorer. W wersjach starszych od 10. uywane s pliki index.dat. Natomiast w IE 10
histori przeniesiono do bazy danych ESE WebCache.
Pami podrczna
Aby przyspieszy swoje dziaanie, przegldarka IE zapisuje pliki w opisanych wczeniej lokalizacjach
tymczasowych. Naley jednak pamita, e uytkownik moe zmieni ciek do bufora w oknie
dialogowym Ustawienia danych witryny sieci Web. Gdy uytkownik wejdzie na jak stron wicej
ni raz, przegldarka odczyta dane zapisane w pamici podrcznej, a dopiero potem pobierze
now tre z serwera zgodnie ze zdefiniowanymi ustawieniami. W pamici podrcznej mog by
przechowywane obrazy, pliki HTML, pliki tekstowe, animacje SWF i inne rodzaje treci internetowej.
Uytkownik przegldarki IE moe definiowa ustawienia dotyczce sprawdzania przez aplikacj
dostpnoci nowej treci za pomoc poniszych opcji:
Nigdy,
Automatycznie,
Za kadym razem, gdy odwiedzam t stron,
Za kadym razem, gdy uruchamiam program Internet Explorer.
Za pomoc ustawie tych mona zdecydowa, kiedy przegldarka ma szuka nowej treci
na stronie. Ustawienie Automatycznie sprawia, e przegldarka sprawdza czstotliwo odwiedzin
na danej stronie i zakres zmian midzy wizytami, zanim poszuka nowej treci.
Uytkownik moe rcznie skasowa zawarto pamici podrcznej lub ustawi przegldark
tak, aby kasowaa j podczas zamykania. Pliki w buforze s przechowywane przez pewn liczb
dni ustawion przez uytkownika (domylnie w systemach Windows 7 z przegldark Internet
Explorer 10 liczba ta wynosi 20). Ponadto ustawienia pamici podrcznej umoliwiaj ograniczenie
przestrzeni dyskowej bufora, ktra zazwyczaj wynosi od 50 do 250 MB. Ich zmiana powoduje
usunicie plikw z folderu przechowywania tymczasowych plikw internetowych.
Cookies
Ustawienia cookies w rnych wersjach przegldarki IE umoliwiaj akceptowanie wszystkich
cookies, blokowanie wszystkich cookies lub akceptowanie ich na podstawie pewnych kryteriw,
takich jak odwiedzona strona, to, czy pochodz z pierwszej, czy drugiej rki, oraz rodzaj
przechowywanych w nich informacji. Przegldarka IE przechowuje cookies w postaci plikw
tekstowych w miejscach opisanych wczeniej. Pliki te mog zawiera dowolne dane, ktre s
ustawiane przez serwer np. dane formularzy, adresy IP uytkownika, znaczniki czasu,
informacje geolokalizacyjne itp.
ROZDZIA 14. BADANIE APLIKACJI 453
Zakadki
W przegldarce Internet Explorer zakadki nosz nazw Ulubione i s zapisywane w postaci plikw
skrtw internetowych. Pliki te s przechowywane w folderze o nazwie Ulubione w katalogu
profilu uytkownika, maj rozszerzenie .url, a ich tre to zwyky tekst, ktry mona odczyta
w dowolnym edytorze tekstu. Jako e zakadki to pliki, zapisywane s dla nich znaczniki czasu
w kadym systemie plikw.
Narzdzia
Przegldarka Internet Explorer istnieje wiele lat, wic powstao ju kilka narzdzi do analizy
pozostawianych przez ni artefaktw. Oprcz oglnych komercyjnych i darmowych programw
wymienionych wczeniej, istnieje te kilka specjalistycznych darmowych narzdzi przeznaczonych
wycznie do szukania ladw przegldarki IE. Do najlepszych naszym zdaniem nale aplikacje
firmy NirSoft. Wprawdzie programy te nie maj tak bogatej funkcjonalnoci jak komercyjne
pakiety, ale te s godne uwagi.
W INTERNECIE
Cache Viewer www.nirsoft.net/utils/ie_cache_viewer.html
History Viewer dla IE 4 9 www.nirsoft.net/utils/iehv.html
Cookie Viewer dla IE 4 9 www.nirsoft.net/utils/iecookies.html
History and Cookie Viewer dla IE 10+ www.nirsoft.net/utils/ese_database_view.html
AutoComplete dla IE4 9 www.nirsoft.net/utils/pspv.html
AutoComplete dla IE10+ www.nirsoft.net/utils/internet_explorer_password.html
Czasami baza danych ESE jest oznaczona jako brudna (ang. dirty), co moe sprawia
niektrym aplikacjom kopoty. Wwczas konieczne bywa przeskanowanie pliku w celu naprawy
sytuacji. W system Windows wbudowane jest specjalne narzdzie o nazwie esentutl, za pomoc
ktrego mona prbowa naprawi baz danych ESE. Oto polecenie, jakiego naley uy:
esenutul /p <nazwapliku>
W miejsce czonu <nazwapliku> naley wpisa ciek do pliku bazy danych ESE. Nie zapomnij
najpierw wykona kopii zapasowej!
Google Chrome
Przegldarka internetowa Google Chrome to do nowy gracz w brany. Pojawia si w 2008 roku
i od tamtej pory jej popularno cay czas ronie, tak e aktualnie naley do trjki najpopularniejszych
przegldarek internetowych. Pierwsz wersj przegldarki Chrome dla systemu Windows firma
Google przedstawia pod koniec 2008 roku, a dla systemw OS X i Linux w 2010 roku. Wersje dla
systemw Android i iOS powstay w roku 2012. Dua cz kodu tej przegldarki jest opublikowana
jako projekt open source o nazwie Chromium. Firma Google wykorzystuje ten projekt jako podstaw
swojej przegldarki i dodaje do niej wasne elementy i funkcje, takie jak odtwarzacz plikw Flash,
454 INCYDENTY BEZPIECZESTWA
przegldarka plikw PDF i system automatycznej aktualizacji. Dopiero ten zmieniony produkt
dostarcza pod nazw Chrome. Do wersji 27. przegldarka Chrome bya oparta na silniku WebKit.
Natomiast od wersji 28. zmieniono go na odnog WebKit o nazwie Blink. Firma Google bardzo
czsto publikuje nowe wersje swojej przegldarki. Celem firmy jest publikowanie nowej wersji
Chrome co sze tygodni.
W katalogu Default znajduj si pliki i inne katalogi. Ich ilo zwiksza si z kad kolejn
wersj przegldarki wzbogacon o nowe funkcje. Przegldarka Chrome wikszo danych
przechowuje w bazach danych SQLite i plikach JSON (ang. JavaScript Object Notation), przy czym
wikszo plikw nie ma rozszerzenia. Oba te typy plikw mona atwo przeglda za pomoc
rnych narzdzi zarwno dostpnych za darmo, jak i patnych. Bardziej szczegowy opis tych
programw zamiecilimy nieco dalej. W plikach tych znajdziesz wiele rnych formatw
znacznikw czasu. Przegldarka Chrome uywa uniksowego formatu milisekundowego (epoki)
i formatu WebKit. Wicej informacji na temat rnych formatw czasu wykorzystywanych
w przegldarce Chrome znajduje si na poniszej stronie internetowej:
linuxsleuthing.blogspot.com/2011/06/decoding-google-chrome-timestamps-in.html
Historia
Znajdujce si w pliku History tabele urls i visits zawieraj informacje, ktre po poczeniu stanowi
typowe dane historyczne przegldarki internetowej tzn. pozwalajce sprawdzi, jakie strony
i kiedy byy odwiedzane. Ponadto przegldarka Chrome zapisuje pewne dodatkowe informacje
w tabelach typed_count, visit_count i transition (sposb dotarcia uytkownika na dan stron).
Jako e plik History jest baz danych SQLite, dane z niego mona wydoby na wiele sposobw.
ROZDZIA 14. BADANIE APLIKACJI 455
Jednym z najprostszych jest wysyanie zapyta za pomoc narzdzia wiersza polece typu sqlite3.
Przykadowo ponisze zapytanie spowodowaoby utworzenie bardzo prostego widoku historii
stron odwiedzanych przez uytkownika:
SELECT urls.id, urls.url, urls.title, urls.visit_count, urls.typed_count, urls.last_visit_time,
urls.hidden, urls.favicon_id, visits.visit_time, visits.from_visit, visits.transition,
visits.is_indexed
FROM urls, visits
WHERE urls.id = visits.url
Plik Archived History to okrojona wersja pliku History, w ktrej przechowywane s informacje
o zdarzeniach starszych ni trzy miesice. Brak w nim niektrych wykorzystywanych przez
przegldark Chrome tabel pomocniczych, ale s tabele urls i visits, ktre maj tak sam struktur
i takie same kolumny jak w pliku History.
Pliki History Index to artefakty, ktre mog okaza si kopalni zota dla ledczego. Funkcja
omnibox (poczenie paska adresu i wyszukiwania) jest jedn z kluczowych funkcji przegldarki
Chrome, ktr prbuj naladowa take producenci innych przegldarek. Gdy uytkownik
zacznie co wpisywa w polu omnibox, przegldarka wywietla podpowiedzi z wielu rde,
z ktrych jednym jest historia wczeniej odwiedzanych stron. Pliki SQLite History Index zawieraj
elementy tekstowe ze stron internetowych odwiedzonych przez uytkownika, zapisane w sposb
pozwalajcy przegldarce bardzo szybko wyszukiwa w nich sowa kluczowe. Dla ledczych
oznacza to, e oprcz adresw URL odwiedzanych przez uytkownika stron, maj do dyspozycji
tre tekstow tych stron. Dla jednej strony moe istnie wiele rekordw w indeksie historii dla
rnych momentw w czasie, wic mamy nawet moliwo obejrzenia migawek zmian treci.
Pami podrczna
Jak wszystkie nowoczesne przegldarki, Chrome zapisuje w pamici podrcznej wszystkie pobrane
pliki, ktre mog by uywane wielokrotnie, aby skrci czas adowania stron i zredukowa liczb
odwoa do serwera w celu pobrania poszczeglnych elementw stron. Pami podrczna moe
zawiera cenne informacje umoliwiajce odtworzenie stron odwiedzanych przez uytkownika
w takiej formie, w jakiej uytkownik ten je oglda. Ponadto zyskujemy dostp do kodu rdowego
tych stron oraz moemy obejrze obrazy i inne wystpujce na nich pliki. Pami podrczna
przegldarki Chrome znajduje si w katalogu Data\Default\Cache i skada przynajmniej z piciu
plikw: index, data_0, data_1, data_2 oraz data_3. Plik index zawiera tabel skrtw z informacjami
o pooeniu kadego z plikw w buforze. Pozostae pliki to tzw. bloki, poniewa kady plik data_x
zawiera dane w blokach o ustalonym rozmiarze. Jeeli plik, ktry ma zosta zapisany w pamici
podrcznej, przekracza maksymalny rozmiar obsugiwany przez plik bloku (16 kB), zostaje zapisany
w folderze bufora jako samodzielny plik. W takim przypadku jego nazwa zostaje zmieniona
na f_ z cigiem cyfr szesnastkowych. Cho pliki te nie maj rozszerzenia, jeli trzeba tylko
szybko przejrze typy plikw przechowywanych w pamici podrcznej, mona sprawdzi ich
sygnatury bez koniecznoci przegldania plikw blokw (chocia pliki tekstowe, np. strony
HTML, s skompresowane). Pliki blokw zawieraj wszystkie zapisywane metadane, np. nagwki
HTTP oraz nazwy i adresy plikw.
456 INCYDENTY BEZPIECZESTWA
Cookies
Przegldarka Chrome wszystkie cookies zapisuje w pliku Cookies, ktry jest baz danych.
W kolumnie host_key zapisana jest domena, z ktrej pochodzi dane cookie. Pozostae pola, ktre
mog by interesujce dla specjalisty od informatyki ledczej, maj nazwy pozwalajce zorientowa si,
jakie jest ich przeznaczenie, np. name, value, creation_utc i last_accessed_utc. Znaczniki czasu s
zapisywane w formacie WebKit. Ponadto plik Cookies moe zawiera informacje identyfikacyjne,
np. pozwalajce rozpozna pooenie geograficzne uytkownika (kod pocztowy, wsprzdne
geograficzne) lub umoliwiajce rozpoznanie tosamoci (nazwy uytkownika, adresy e-mail).
Pobierane pliki
Plik historii zawiera te informacje o plikach zapisywanych przez uytkownika za pomoc
przegldarki Chrome. Stare wersje tej aplikacji przechowuj wszystkie te dane w tabeli downloads.
Natomiast nowsze wersje (od 26.) zapisuj je w tabelach downloads i downloads_url_chains.
Wszystkie wersje przegldarki Chrome zachowuj adresy URL pobranych plikw, ich rozmiar,
informacj o tym, ile bajtw danego pliku zostao rzeczywicie pobranych oraz czas rozpoczcia
pobierania. Nowsze wersje przegldarki dodatkowo rejestruj czas zakoczenia pobierania, to,
czy plik zosta otwarty oraz czy wg Chrome plik ten by szkodliwy. Zwaszcza dwie ostatnie pozycje
mog by niezwykle cenne w niektrych rodzajach ledztw.
Zakadki
Przegldarka Chrome przechowuje zakadki uytkownika w obiekcie JSON w pliku o nazwie Bookmarks
(dodatkowo tworzy kopi zapasow w pliku o nazwie Bookmarks.bak). Zawarto tego pliku mona
atwo odczyta w dowolnym edytorze tekstowym i kadej przegldarce danych w formacie JSON.
Chrome zapisuje dat dodania zakadki, jej adres URL, tytu oraz struktur folderw zakadek.
Preferencje
Preferencje uytkownika s przechowywane w pliku Preferences w formie obiektu JSON
(User Data\Default\Preferences). W pliku tym jest wiele przydatnych informacji, np. lista
zainstalowanych rozszerze i wtyczek. Jeeli uytkownik korzysta z usugi synchronizacji Chrome,
ROZDZIA 14. BADANIE APLIKACJI 457
Narzdzia
Jako e Chrome to najmodsza ze wszystkich najwaniejszych przegldarek, do analizy jej
artefaktw jest mniej narzdzi. Dodatkowe trudnoci programistom narzdzi sprawia bardzo
szybki cykl pojawiania si nowych wersji i sama liczba ju istniejcych wersji programu. Niektre
zmiany powoduj modyfikacje artefaktw, a narzdzia ledcze za tym nie nadaj. Funkcja
automatycznej aktualizacji przegldarki Chrome dziaa w tle i aktualizuje aplikacj nawet bez
udziau uytkownika. Dziki temu w uyciu jest niewiele starych, mniej bezpiecznych wersji
Chrome. Dla nas wad tego podejcia jest to, e narzdzia ledcze mog nie dziaa prawidowo
z najnowszymi wersjami przegldarki.
Poniewa wikszo artefaktw pozostawianych przez przegldark Chrome znajduje si
w bazach danych SQLite i plikach JSON, mona si do nich dosta na wiele sposobw. Jednym
z nich jest dostp bezporedni. Do dyspozycji jest wiele narzdzi do odczytywania danych
w formatach SQLite i JSON. Przykadowo bazy danych SQLite mona przeglda za pomoc
aplikacji SQLite Database Browser i rozszerzenia do przegldarki Firefox SQLite Manager.
Oprcz tych popularnych narzdzi z graficznym interfejsem uytkownika, mona uywa take
darmowego narzdzia wiersza polece o nazwie sqlite3. Osoby potrafice programowa mog
skorzysta z funkcji przetwarzania tych formatw danych dostpnych w takich jzykach
programowania jak Python i Perl.
W INTERNECIE
SQLite Database Browser sourceforge.net/projects/sqlitebrowser
Rozszerzenie do Firefoksa SQLite Manager addons.mozilla.org/en-us/firefox/addon/sqlite-manager
sqlite3 http://www.sqlite.org/download.html
Perl http://www.perl.org
Python http://www.python.org
458 INCYDENTY BEZPIECZESTWA
W INTERNECIE
NirSoft ChromeHistoryView www.nirsoft.net/utils/chrome_history_view.html
NirSoft ChromeCacheView www.nirsoft.net/utils/chrome_cache_view.html
Woanware ChromeForensics www.woanware.co.uk/forensics/chromeforensics.html
Hindsight code.google.com/p/hindsight-internet-history
Mozilla Firefox
Firefox to dostpna w rnych systemach operacyjnych przegldarka z otwartym kodem
rdowym. Jej wersje beta pojawiy si w 2002 roku pod nazw Phoenix. Jednak ze wzgldu na
problemy ze znakiem towarowym nazw zmieniono na Firebird, a pniej w 2004 roku na Firefox.
Przegldarka Firefox jest odnog projektu aplikacji Mozilla, ktry bazowa na pracach wykonanych
w latach 90. ubiegego wieku przez firm Netscape Communications Corporation. Aplikacja
szybko zdobya popularno i ustabilizowaa si na pewnym poziomie w 2010 roku. Od wersji 5.,
ktra pojawia si w czerwcu 2011 roku, programici Firefoksa zmienili strategi wydawania
kolejnych wersji. Postanowili przyspieszy proces, tak aby publikowa nowe wydanie lub now
ga co sze tygodni. Oficjalnym powodem tego posunicia bya ch szybszego dostarczania
uytkownikom nowych funkcji. W grudniu 2013 roku pojawia si przegldarka Firefox 26,
lecz jej popularno zacza nieco spada, gwnie z racji rosncej popularnoci przegldarki
Google Chrome.
Niektre bazy danych SQLite Firefoksa wykorzystuj nowsze lub opcjonalne funkcje SQLite
uniemoliwiajce ich otwieranie w niektrych narzdziach. Jeli wic napotkasz tego typu problemy,
sprawd, czy masz najnowsz wersj narzdzia do otwierania baz danych SQLite. Nawet jeli uywasz
narzdzia wiersza polece sqlite3, moe by konieczne zaopatrzenie si w jego najnowsz wersj
z oficjalnej strony.
Pami podrczna przegldarki Firefox jest podzielona na szereg folderw. Tak jak inne dane,
przegldarka Firefox przechowuje dane bufora kadego profilu w osobnym folderze. Firefox
tworzy 16 katalogw, 0 9 i A F, w katalogu o nazwie Cache. Katalog ten znajduje si w miejscu
wskazanym wczeniej w tabeli w odpowiednim katalogu profilu. W ksice tej nie opisujemy
wewntrznej budowy pamici podrcznej przegldarki Firefox, ale wiele cennych informacji na ten
temat mona znale w internecie.
W INTERNECIE
articles.forensicfocus.com/2012/03/09/firefox-cache-format-and-extraction
code.google.com/p/firefox-cache-forensics/wiki/FfFormat
Historia
Przegldarka Firefox zapisuje histori przegldanych stron w bazie danych SQLite o nazwie places.sqlite.
Podstawowe informacje s przechowywane w dwch tabelach, moz_places i moz_historyvisits.
Rekordy w tych tabelach s poczone midzy polem id w tabeli moz_places i polem places_id
w tabeli moz_historyvisits. Podstawowe informacje dotyczce historii stron przegldanych przez
uytkownika mona wywietli za pomoc zapytania SQL podobnego do uytego do wywietlenia
historii z przegldarki Chrome.
Pobierane pliki
Dla kadego pobranego pliku przegldarka Firefox zapisuje dodatkowe informacje. Pocztkowo
dane te byy przechowywane w osobnej bazie danych SQLite o nazwie downloads.sqlite. Bya to
bardzo prosta baza danych, w ktrej dane przechowywano w jednej tabeli o nazwie moz_downloads.
ROZDZIA 14. BADANIE APLIKACJI 461
W wersji Firefox 20 wprowadzono jednak nowy meneder pobierania i przeniesiono dane dotyczce
pobieranych plikw do tabeli o nazwie moz_annos w bazie danych places.sqlite. Stary plik
downloads.sqlite nie jest ju uywany.
Zakadki
Do Firefoksa 2 zakadki byy przechowywane w pliku HTML, ktrego zawarto mona byo
obejrze w przegldarce internetowej albo edytorze tekstu. W Firefoksie 3, ktry pojawi si w 2008
roku, zakadki przeniesiono do tabeli moz_bookmarks bazy danych places.sqlite. Pozycje znajdujce
si w tabeli moz_bookmarks s poczone z pozycj w moz_places przy uyciu pola zakadek fk
w celu powizania ich z polem id miejsc. Jest to bardzo wane poczenie, poniewa tabela
moz_bookmarks nie zawiera adresw URL zakadek wszystkie adresy znajduj si w tabeli
moz_places.
Cookies
Przegldarka Firefox zapisuje cookies w bazie danych cookies.sqlite. Jej jedyna tabela moz_cookies
zawiera wszystkie dane dotyczce kadego z zapisanych cookies. W niektrych ledztwach
przydatne bywaj same cookies, ale w wikszoci przypadkw najwaniejsze s zwizane z nimi
domeny i znaczniki czasu.
Preferencje
Uytkownik przegldarki Firefox moe zmienia wiele ustawie konfiguracyjnych. Wszystkie
s zapisywane w pliku o nazwie prefs.js. Jest to zwyky plik tekstowy, wic jego zawarto mona
wywietli w dowolnym edytorze tekstu. Niektre preferencje maj duy wpyw na dostpno
rnych artefaktw przegldarki. Przykadowo uytkownik moe ustawi przegldark tak,
aby kasowaa lady uywania podczas koczenia pracy albo w ogle nie zapisywaa danych
historycznych. Jeli trzeba, uytkownik moe te usun artefakty na danie za pomoc
specjalnych opcji w menu. Tabela na nastpnej stronie zawiera zestawienie ustawie Firefoksa,
ktre maj wpyw na powstawanie artefaktw przegldarki.
462 INCYDENTY BEZPIECZESTWA
Ustawienie Efekt
user_pref("browser.privatebrowsing.autostart", true); Warto true powoduje wyczenie
rejestracji danych historycznych
user_pref("privacy.sanitize.sanitizeOnShutdown", true); Warto true powoduje
user_pref("privacy.clearOnShutdown.offlineApps", true); skasowanie danych historii,
user_pref("privacy.clearOnShutdown.passwords", true); wcznie z okrelonymi
artefaktami, przy koczeniu pracy
user_pref("privacy.clearOnShutdown.siteSettings", true);
user_pref("browser.cache.disk.capacity", 358400); To ustawienie ogranicza rozmiar
(w kB) pamici podrcznej
przegldarki Firefox. Jeli
zostanie wpisana maa liczba,
przegldarka pozostawi po sobie
niewielk ilo informacji
Pami podrczna
W pamici podrcznej przegldarka Firefox przechowuje kopie treci pobieranej ze stron
internetowych i rnych serwerw odwiedzanych przez uytkownika. Domylnie rozmiar bufora
Firefoksa wynosi 350 MB. Starsze i rzadko uywane dane s usuwane, aby zrobi miejsce dla
nowych. Jak kada inna pami podrczna, bufor Firefoksa ma przede wszystkim przyspieszy
dziaanie aplikacji przez wielokrotne wykorzystanie wielu pobranych zasobw. Podczas ledztwa
w pamici tej mona znale kopie danych ze szkodliwych witryn, ktre odwiedzi uytkownik,
a nawet dane ze stron odwiedzonych przez hakera. Uytkownik moe skasowa zawarto pamici
podrcznej i inne artefakty (np. cookies) za pomoc narzdzi dostpnych w menu przegldarki.
Narzdzia
Jak ju wiesz, jednym z narzdzi, za pomoc ktrych mona zbada artefakty pozostawiane w systemie
przez przegldark Firefox, jest przegldarka baz danych SQLite. Cho posugiwanie si SQLite to bardzo
niewygodna metoda pracy, czasami nie da si jej zastpi niczym innym z powodu bdw i braku
obsugi niektrych funkcji w bardziej rozwinitych narzdziach. Kilka narzdzi do przegldania
baz danych SQLite zostao ju wymienionych wczeniej.
Podobnie jak w przypadku Internet Explorera i Chrome, dobrym wyborem s patne i darmowe
narzdzia wymienione na pocztku podrozdziau Przegldarki internetowe. Ponadto istniej te
dodatkowe specjalne narzdzia przeznaczone do pracy z Firefoksem. Naszym zdaniem najlepsze
w tej kategorii s produkty firmy NirSoft.
W INTERNECIE
History Viewer www.nirsoft.net/utils/mozilla_history_view.html
Cookie Viewer www.nirsoft.net/utils/mzcv.html
Cache Viewer www.nirsoft.net/utils/mozilla_cache_viewer.html
Downloads Viewer www.nirsoft.net/utils/firefox_downloads_view.html
ROZDZIA 14. BADANIE APLIKACJI 463
W INTERNECIE
www.arclab.com/en/amlc/how-to-read-and-analyze-the-email-header-fields-spf-dkim.html
www.jdfsl.org/subscriptions/abstracts/JDFSL-V6N2-column-Banday.pdf
toolbox.googleapps.com/apps/messageheader
W INTERNECIE
www.aid4mail.com/email.ediscovery.forensic.software.php
www.weirdkid.com/products/emailchemy
Kiedy bdziesz postpowa zgodnie z tym oglnym procesem, powinno da si przejrze dane
z prawie kadego istniejcego klienta poczty. Mona np. przekonwertowa dane z programu
Eduora Mail na standardowy format mbox i otworzy wyniki w darmowym kliencie Mozilla
Thunderbird. Teraz moemy przej do internetowych klientw poczty elektronicznej.
W INTERNECIE
www.forensicfocus.com/email-evidence-now-you-see-it
www.magnetforensics.com/webmail-forensics-digging-deeper-into-the-browser
www.magnetforensics.com/webmail-forensics-part-2-mobile-applications
www.blackhat.com/presentations/bh-usa-03/bh-us-03-akin.pdf
hackingexposedcomputerforensicsblog.blogspot.com/2013/09/daily-blog-95-webmail-artifacts-from.html
Uwaga Niektrzy uytkownicy tak ustawiaj swoje wypasione klienty poczty, np. Microsoft Outlook,
aby pobieray poczt z ich usug sieciowych. W takich przypadkach istnieje szansa, e na dysku
komputera znajduje si kopia wiadomoci e-mail. Dane te mona znale, postpujc wg
wskazwek opisanych dalej.
ROZDZIA 14. BADANIE APLIKACJI 465
W INTERNECIE
Internet Evidence Finder www.magnetforensics.com/software/internet-evidence-finder
NetAnalysis www.digital-detective.co.uk/netanalysis.asp
Internet Examiner Toolkit www.siquest.com
Jeli wymienione narzdzia nie s pomocne, mona przeprowadzi szczegow analiz czasow
interesujcego nas okresu. W analizie tej naley uwzgldni wszystkie aspekty systemu, takie jak
historia przegldarki, system plikw, rejestr, dzienniki i inne rda informacji. W podrozdziale
powiconym przegldarkom internetowym znajdziesz wiele informacji na temat wyszukiwania
artefaktw w wybranej aplikacji. Czasami odkrycia poczynione tymi metodami pozwalaj
odpowiedzie na najwaniejsze pytania, a przynajmniej podsuwaj jakie tropy.
W niektrych przypadkach istnieje moliwo uzyskania dostpu do konta e-mail za zgod
uytkownika, przy uyciu nakazu przeszukania lub za pomoc innych rodkw prawnych.
Biorc pod uwag to, jak trudno znale przydatne artefakty, nikogo nie powinno dziwi, e coraz
wicej ledczych decyduje si wanie na takie metody. Naley jednak skrupulatnie przestrzega
obowizujcego w danym regionie prawa, najlepiej konsultowa wszystkie dziaania z radc prawnym
oraz dokadnie opisywa w dokumentacji wszystkie prby uzyskania dostpu do konta e-mail.
Podczas pracy z poczt elektroniczn bardzo atwo wplta si w kopoty prawne, wic nie odwlekaj
rozmowy z prawnikiem i kontaktuj si z nim czsto take w trakcie akcji.
Ponadto w Outlooku istnieje moliwo skonfigurowania wielu profili. Kady z nich ma wasne
ustawienia, takie jak serwery poczty e-mail, adresy e-mail, sygnatury i pliki danych. Wszystkie pliki
danych Outlooka dla wszystkich profili s wymienione we wspomnianym wczeniej kluczu rejestru,
ale warto wiedzie, e istnieje moliwo wystpowania wielu profili i zna ich nazwy. Lista nazw
profili Outlooka wystpuje w formie kluczy w kluczu HKEY_CURRENT_USER\Software\
Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles. Jeli w jednym
systemie znajduje si kilka profili, czasami bardzo wane jest ustalenie, ktry z nich jest domylny.
Najatwiej sprawdzi to w kluczu HKEY_CURRENT_USER\Software\Microsoft\Windows NT\
CurrentVersion\Windows Messaging Subsystem\Profiles\DefaultProfile. Ponadto w sytuacji,
ROZDZIA 14. BADANIE APLIKACJI 467
gdy system zawiera kilka profili, nazwy nowo tworzonych plikw danych Outlooka maj
przedrostek - {nazwa profilu}. Dodaje si go po to, by wyranie zaznaczy przynaleno kadego
pliku danych do jednego profilu. Usunicie profilu za pomoc opcji administracji poczt w Panelu
sterowania systemu Windows nie powoduje skasowania powizanych z nim plikw danych.
Format danych
Program Outlook wykorzystuje format plikw o nazwie PFF (ang. Personal Folder File).
W rodowiskach Microsoft Exchange Outlook przechowuje lokalnie kopi poczty elektronicznej
w pliku o nazwie OST (ang. Offline Storage Table), ktry jest rodzajem pliku PFF. W innych
rodowiskach, takich jak np. POP (ang. Post Office Protocol) i archiwa Outlooka, uywany jest
format PST (ang. Personal Storage Table) jeszcze inna odmiana PFF. Pliki te take zawieraj
dodatkowe dane, takie jak spotkania zapisane w kalendarzu i informacje kontaktowe. Jako e
oba formaty s oparte na formacie PFF, wikszo narzdzi rozpoznajcych OST rozpoznaje
take PST i odwrotnie.
W INTERNECIE
Libpff Project code.google.com/p/libpff
Cho format PFF jest wasnoci firmy Microsoft, inne jednostki sporzdziy dla niego bardzo
dobr dokumentacj. Kilka cennych dokumentw na ten temat mona znale w sekcji plikw
do pobrania (Downloads) na stronach projektu libpff. Jeli chcesz szczegowo pozna ten format
danych, zalecamy uwane przeczytanie tych dokumentw.
Narzdzia
Wyrnia si dwie kategorie narzdzi do analizowania plikw OST i PST.
Patne narzdzia ledcze programy EnCase firmy Guidance Software i FTK firmy
AccessData maj wbudowane funkcje przetwarzania i analizowania plikw OST i PST.
Przykadowo w programie EnCase mona po prostu klikn prawym przyciskiem wybrany
plik i w menu, ktre si pojawi, wybra pozycj View File Structure (wywietl struktur
pliku). Program ten wywietla zawarto pliku danych e-mail w postaci drzewa, ktre
mona przeglda i przeszukiwa jak system plikw.
Narzdzia o otwartym kodzie rdowym najlepiej prowadzonym i udokumentowanym
projektem o otwartym kodzie rdowym do przetwarzania plikw OST i PST, jaki znamy,
jest libpff. W ramach tego projektu dostarczany jest kod do skompilowania i plik wykonywalny
o nazwie pffexport, ktry eksportuje pozycje z plikw OST i PST. W systemie Windows
narzdzia libpff mona skompilowa np. za pomoc rodowiska Cygwin.
Poniewa nie kady moe korzysta z patnych rozwiza, przyjrzymy si bliej otwartym
narzdziom libpff.
468 INCYDENTY BEZPIECZESTWA
Twrca tych narzdzi udostpnia je wycznie w formie kodu rdowego, co oznacza, e trzeba
je samodzielnie skompilowa, aby otrzyma gotowy do uycia plik wykonywalny. Na stronie
internetowej projektu zamieszczono artyku wiki na temat sposobu kompilacji tych narzdzi
w kilku systemach operacyjnych i przy uyciu kilku rnych kompilatorw. Po zakoczeniu
kompilacji otrzymasz plik pffinfo.exe, za pomoc ktrego moesz wywietli podstawowe
informacje o interesujcym Ci pliku Outlooka. Oto przykad:
$ ./pffinfo.exe Outlook.pst
pffinfo 20120802
Message store:
Folders: Subtree, Inbox, Outbox, Wastbox,
Sentmail, Views, Common views, Finder
Password checksum: N/A
Aby wydoby dane z tego pliku PST, naley uy programu pffexport.exe. Ponisze polecenie
powoduje wypakowanie wszystkich dostpnych typw elementw z pliku rdowego Outlook.pst
i utworzenie dziennika o nazwie outlook.pst.log:
$ ./pffexport.exe -m all -l outlook.pst.log Outlook.pst
pffexport 20120802
Opening file.
Recovering items.
Exporting items.
Exporting folder item 1 out of 6.
Exporting folder item 2 out of 6.
Exporting email item 1 out of 1099.
Exporting email item 2 out of 1099.
Exporting recipient.
Export completed.
Domylnie pffexport zapisuje wszystkie wydobyte dane w katalogu o nazwie utworzonej z nazwy
pliku rdowego z dodatkiem przyrostka .export. W katalogu tym znajdziesz kilka podkatalogw.
W zalenoci od protokou i opcji zdefiniowanych przez uytkownika, dane poczty mog znajdowa si
w jednym z kilku folderw. Najszybszym sposobem na znalezienie poczty jest poszukanie folderw
ROZDZIA 14. BADANIE APLIKACJI 469
o nazwie Inbox lub plikw o nazwach Message.txt lub Message.rtf, co pokazano na poniszym rysunku.
Program pffexport tworzy po jednym folderze dla kadej pozycji, np. e-maila, i zapisuje w nim
wszystkie zwizane z ni dane, wcznie z treci wiadomoci, nagwkami i zacznikami.
Apple Mail
Program Apple Mail to klient poczty elektronicznej wbudowany w system operacyjny OS X firmy
Apple. Obsuguje protokoy POP, IMAP i Microsoft Exchange. Popularny w systemach OS X,
poniewa jest w nich standardowo dostpny i obsuguje wszystkie najwaniejsze protokoy
pocztowe. Chtnie uywaj go zarwno osoby prywatne, jak i mniejsze oraz rednie organizacje.
W duych przedsibiorstwach te mona spotka Apple Mail, chocia w tych rodowiskach
popularniejszy wydaje si Microsoft Outlook dla komputerw Mac jeszcze do niego wrcimy.
470 INCYDENTY BEZPIECZESTWA
Format danych
Wiadomoci e-mail w programie Apple Mail od wersji 2. s zapisywane w formacie tekstowym
emlx. Mona wic je przeglda i przeszukiwa za pomoc dowolnego narzdzia sucego
do przegldania plikw tekstowych.
Narzdzia
Jako e wiadomoci e-mail w programie Apple Mail s przechowywane w postaci tekstu, do ich
analizy mona wykorzysta wiele rnych narzdzi. Czasami do znalezienia informacji wystarcz
najprostsze programy dziaajce w wierszu polece, takie jak grep czy strings. Bardzo skuteczne s
te bardziej kompleksowe rozwizania z graficznym interfejsem uytkownika, takie jak PowerGREP.
Ewentualnie mona przekonwertowa format emlx na standardowy mbox, a nastpnie przejrze
wiadomoci w darmowym kliencie poczty, takim jak Mozilla Thunderbird.
W INTERNECIE
PowerGREP www.powergrep.com
Emlx to Mbox Converter www.cosmicsoft.net/emlxconvert.html
Mozilla Thunderbird www.mozilla.org/en-US/thunderbird
dla przedsibiorstw Exchange i oglnie firmy Microsoft, np. Lync. Dlatego wanie Outlook for
Mac jest popularniejszy w duych przedsibiorstwach w maych firmach i u indywidualnych
uytkownikw raczej go nie spotykamy.
Narzdzia
Metody przechowywania danych przez program Outlook for Mac troch utrudniaj ich analiz
bez solidnych narzdzi. Wprawdzie mona posuy si standardowymi edytorami tekstu, takimi
jak grep i strings, ale trzeba uwaa na potencjalne znaki Unicode. Najlepiej skorzysta z jakiego
narzdzia przeznaczonego specjalnie do pracy z programem Outlook for Mac 2011, np. Aid4Mail
lub Emailchemy. Nie wszystkie narzdzia dobrze obsuguj Unicode i nawet jeli tylko standardowe
znaki ASCII bd zapisane przy uyciu tego kodowania, mog wystpi problemy.
472 INCYDENTY BEZPIECZESTWA
KOMUNIKATORY INTERNETOWE
Klienty wiadomoci byskawicznych (ang. instant message IM) zwane potocznie komunikatorami
internetowymi umoliwiaj komunikacj na bieco. Moe to by zarwno komunikacja dwustronna,
jak i wielostronna sesja. Komunikatory znacznie si rozwiny w porwnaniu z pierwszymi wersjami
i obecnie umoliwiaj przesyanie plikw, prowadzenie rozmw gosowych i konferencji wideo,
rozmawianie z uytkownikami telefonw, a nawet nagrywanie i zapisywanie poczty gosowej.
W odrnieniu od komunikacji e-mail, uczestnicy tej formy porozumiewania si mog sprawdzi,
czy rozmwca jest zalogowany, czy jest w pobliu komputera itd.
Istnieje wiele komunikatorw internetowych, wic uytkownicy maj z czego wybiera. Wikszo
osb w wyborze programu kieruje si dostpnoci wybranych funkcji, tym, czy jest on atwy w obsudze,
znajomoci producenta, bezpieczestwem albo po prostu osobistymi preferencjami. Klienci cigle
daj nowych funkcji, bezpieczestwa i niezawodnoci, co przyczynia si do tego, e aplikacje te
nieustannie si zmieniaj. W efekcie nie moemy opisa wszystkich wersji kadego programu w tej
ksice. Dlatego przedstawiamy tylko ogln technik analizy i rodowiska testowe oraz podajemy
przykady odnoszce si do kilku najpopularniejszych komunikatorw internetowych.
Metody analizy
Czste aktualizacje komunikatorw internetowych sprawiaj, e kady trzeba dokadnie przetestowa,
aby upewni si, e wyniki otrzymywane przez jedno narzdzie s spjne z wynikami zwracanymi
przez inne. Najlepiej dokadnie opisa metod testowania i cile si jej trzyma. W ten sposb
zwikszysz szanse na to, e nie wycigniesz nieprawidowych wnioskw na podstawie analizy
danych komunikatora.
1. rodowisko testowe najlepsze rodowisko testowe powinno skada si z tej samej wersji
systemu operacyjnego i komunikatora jak bdce przedmiotem ledztwa. Nie zawsze jest to
moliwe i jeli nie uda si speni tego warunku, naley zastanowi si, na ile otrzymane
wyniki s wiarygodne. Jak napisalimy wczeniej, najlepiej zainstalowa wie kopi
systemu operacyjnego, moe by w maszynie wirtualnej, aby wyeliminowa zakcenia
spowodowane przez niepotrzebne aplikacje.
2. Technologia komunikacji wikszo komunikatorw internetowych dziaa na bazie
podobnej technologii, ktra decyduje o sposobie przesyania i przechowywania danych.
Znajomo tych protokow i jzykw pomaga w zrozumieniu zmian pojawiajcych si
w rodowisku testowym oraz wykrywaniu wiadomoci w pliku stronicowania, pamici lub
nieprzydzielonej przestrzeni w urzdzeniu. Oto kilka przykadw czsto wykorzystywanych
technologii.
a) HTML jzyk HTML jest powszechnie wykorzystywany do tworzenia stron
internetowych. W formacie tym tekst jest osadzony w specjalnych elementach jzyka,
ktre okrelaj krj pisma, kolory, obrazy itd. W formacie HTML zapisuje swoje
dzienniki komunikator AIM (ang. AOL Instant Messenger), pod warunkiem e ma
wczon funkcj zapisywania dziennikw.
ROZDZIA 14. BADANIE APLIKACJI 473
b) XML jzyk XML z zaoenia mia by czytelny zarwno dla czowieka, jak i maszyny
dziki wykorzystaniu dowolnych znacznikw definiowanych przez projektanta aplikacji.
Dzienniki w formie dokumentw XML tworzy program Windows Messenger.
c) SQLite jest to relacyjna baza danych o otwartym kodzie rdowym suca do
przechowywania tekstu i danych binarnych. W bazach tego typu dane przechowuje
wiele aplikacji Mozilli.
d) SOAP protok SOAP (ang. Simple Object Access Protocol) suy do przesyania
danych za pomoc rnych protokow i formatu XML przy jednoczesnym zachowaniu
uporzdkowanej struktury. Artefakty Yahoo! i Gmail czsto s dokumentami XML
w opakowaniu SOAP.
Skype
Na pocztku Skype by niezalenym klientem VoIP (ang. Voice over IP). Jego twrcami s
programici, ktrzy kiedy utworzyli program Kazaa do bezporedniej wymiany plikw przez
internet. W 2011 roku firma Microsoft odkupia t technologi i przesza z Windows Live
Messengera na Skypea. Aplikacja ta do komunikacji wykorzystuje poczenie protokow
klient-serwer i peer-to-peer.
Skype umoliwia wykonywanie pocze VoIP, organizowanie rozmw wideo i telekonferencji,
przesyanie plikw oraz prowadzenie prywatnych i grupowych rozmw. Podstawowa funkcja
rozmowy w trybie tekstowym i gosowym z innymi uytkownikami tego programu jest darmowa.
Natomiast poczenia z telefonami stacjonarnymi i komrkowymi s patne, a wysoko opat
zaley od tego, skd i gdzie si dzwoni.
W INTERNECIE
www.skype.com
Format dziennikw
Dzienniki rozmw s prowadzone w formie bazy danych SQLite3 o nazwie main.db. Plik ten
zawiera tabele, w ktrych znajduje si zapis konwersacji. Baz t mona otworzy za pomoc
przegldarki plikw SQLite. Wiadomoci tekstowe znajduj si w tabeli Messages. Format
wiadomoci w bazie danych zaczyna si od nazwy profilu Skype w systemie, nastpnie znajduje si
symbol oddzielajcy (/$) i nazwa Skype rozmwcy, np.:
suspect/$chat.dialog.partner
Jeli obaj uczestnicy komunikacji s znani, mona t informacj wykorzysta w celu poszukania
dodatkowych wiadomoci w pliku stronicowania, pamici i nieprzydzielonych obszarach w urzdzeniu.
Za pomoc przegldarki baz danych SQLite, np. SQLiteSpy, mona odczyta plik main.db
i przeszuka jego zawarto przy uyciu instrukcji SQL. Ponisze proste zapytanie powoduje
wywietlenie wszystkich wiadomoci zapisanych w bazie danych:
SELECT * FROM Messages;
W INTERNECIE
www.yunqa.de/delphi/doku.php/products/sqlitespy/index
Wrd pl w tej tabeli znajduj si pola body_xml, author i timestamps. Pole timestamps
zawiera znaczniki czasu w formacie epoki Uniksa UTC.
Artefakty
Skype przechowuje dodatkowe artefakty w pliku main.db. Mona je wszystkie obejrze
w przegldarce baz danych SQLite3. Wrd tych danych znajduj si rozmowy, grupy, kontakty
i wiadomoci poczty gosowej. Dla Skypea w wersji 6.3.60.105 przegldarka baz danych SQLite3
wywietlia nastpujce tabele (patrz rysunek na nastpnej stronie).
Artefakty poczty gosowej znajdujce si w pliku main.db przedstawiaj ciek do poczty
gosowej przechowywanej w formie pliku DAT. Jest to plik audio wykorzystujcy specjalny kodek
nalecy do Skypea. Za pomoc wasnej instalacji programu Skype mona odtworzy nagrania
poczty gosowej z innych systemw, postpujc w nastpujcy sposb.
1. Utwrz poczt gosow w programie Skype w swoim systemie i znajd plik DAT w profilu.
2. Zamie ten plik na plik DAT zdobyty w toku ledztwa.
3. Odtwrz poczt gosow w swoim programie Skype za pomoc przeznaczonych do tego opcji.
ROZDZIA 14. BADANIE APLIKACJI 475
Preferencje
W programie Skype preferencje s przechowywane gwnie w pliku XML o nazwie config.xml
w katalogu profilu uytkownika. Pamitaj, e kady katalog profilu uytkownika moe zawiera
taki plik, tzn. w jednym komputerze moe znajdowa si wiele plikw config.xml. Niektre
pola XML maj etykiety w jzyku angielskim. Kontakty profilu Skype s np. przechowywane
w nastpujcej strukturze:
<CentralStorage>
<SyncSet>
<u>
Kady kontakt jest zapisany w osobnym znaczniku. Jeeli np. nazwa profilu kontaktu
to skype.user, jego dane znajdowayby si w nastpujcym znaczniku:
<skype.user></skype.user>
Jeli uytkownik wczy funkcj zapisywania rozmw tekstowych, liczb dni przechowywania
tych archiww mona znale w nastpujcym znaczniku:
<chat>
<HistoryDays>x</HistoryDays>
</chat>
Naley wiedzie, e liczba dni przechowywania archiwum rozmw bdzie okrelona nawet
wtedy, gdy funkcja archiwizacji rozmw bdzie wyczona. Dlatego naley sprawdzi stan tej
funkcji w poniszym znaczniku:
<Message>
<DisableHistory>1</DisableHistory>
</Message>
476 INCYDENTY BEZPIECZESTWA
Warto 1 oznacza, e funkcja jest wyczona i warto w znaczniku HistoryDays jest ignorowana.
Oto kilka innych znacznikw, ktre mog zawiera cenne informacje:
<UI>
<C>
<Devices>
<General>
<AvatarPath>
<FiletransferDir>
<LastDialedNumbers2>
<SkypeHomeLastRead>
<AvatarPath>
<TransferSaveDir>
Narzdzia
Jest wiele narzdzi do analizowania danych historycznych z programu Skype. Ewentualnie mona
te przeglda plik main.db za pomoc przegldarki baz danych SQLite3 oraz wykonywa zwyke
polecenia SQL na tej bazie danych w celu przeszukania danych i znalezienia artefaktw. Plik
konfiguracji XML mona otworzy w kadym edytorze tekstu i w kadej przegldarce internetowej.
Poniej znajduje si lista niektrych patnych narzdzi do analizowania danych historycznych
programu Skype.
W INTERNECIE
SkypeAlyzer www.sandersonforensics.com
Skype Analyzer home.belkasoft.com/en/bsa/en/Skype_Analyzer.asp
Skype Log View www.nirsoft.net/utils/skype_log_view.html
SkypeParser redwolfcomputerforensics.com/index.php?option=com_content&task=view&id=42&Itemid=55
Chat na Facebooku
W portalu spoecznociowym Facebook znajduje si wbudowany chat z obsug rozmw
tekstowych i wideo. Za jego pomoc uytkownicy mog rozmawia ze wszystkimi osobami spord
swoich znajomych, ktre maj wczon t funkcj. Klient ten zapisuje dane domylnie na serwerze
w profilu na Facebooku. Jeli w chwili wysania wiadomoci adresat jest niedostpny, zostaje ona
zapisana w skrzynce odbiorczej. Zatem wszystkie rozmowy odbywaj si za porednictwem klienta
internetowego nie instaluje si adnych dodatkowych programw na komputerze. Stanowi to
duy problem, jeli ledczy nie ma dostpu do konta uytkownika na Facebooku uzyskanego
na mocy nakazu przeszukania lub innymi rodkami prawnymi.
Format dziennikw
Wiadomoci przesyane przez chat Facebooka w pamici s w formacie JSON. Wysana wiadomo
jest reprezentowana przez znacznik msg z nastpujcymi polami:
text (zawiera tre wiadomoci),
messageID,
time (czas wysania wiadomoci w UTC i w postaci milisekundowanego uniksowego
znacznika czasu),
from (identyfikator Facebooka nadawcy),
to (identyfikator Facebooka adresata),
from_name (zwyky tekst),
to_name (zwyky tekst),
sender_offline (ma warto false, jeli partner rozmowy by w internecie, gdy wysyano
do niego wiadomo).
Poniej znajduje si przykadowa wiadomo (identyfikatory Facebooka zostay zasonite
literami x):
{"msg":{"text":"Jaka rozmowa na chacie",
"messageId":"mid.13674559xxxxx:df1f767dba525b7d49","time":1367418992627,
"clientTime":1367418992627,"msgID":"13674559xxxxx:2710102545",
"offline_threading_id":null},"from":1000057544xxxxx,"id":15519xxxxx,
"to":15519xxxxx,"from_name":"Author_Writer","from_first_name":"Author",
"to_name":"Recipient_Receiver","to_first_name":"Recipient",
"tab_type":"friend","sender_offline":false,"show_orca_callout":false
,"window_id":"35525xxxxx","type":"msg"
}
Zwaszcza dwa ostatnie fragmenty s cenne, jeli znany jest facebookowy identyfikator nadawcy
i adresata. Kada wysana lub odebrana wiadomo jest opakowana w znaczniki, co znacznie
utrudnia prac, jeli obraz zawiera duo wiadomoci.
Artefakty
Artefakty Facebooka mog pozostawa w plikach pamici podrcznej przegldarki internetowej,
pliku stronicowania, pamici gwnej oraz nieprzydzielonych obszarach. Facebook dziaajcy
w przegldarce internetowej sam w sobie nie zapisuje adnych dziennikw ani preferencji
w komputerze uytkownika.
Narzdzia
Jako e Facebook nie zapisuje dziennikw w systemie uytkownika, istnieje bardzo niewiele
patnych narzdzi do analizy danych z chatu tego portalu. Jednym z nielicznych, ktre potrafi
przetwarza wiadomoci z chatu i wiele innych dowodw, jest Internet Evidence Findes (IEF).
Program ten przeszukuje obraz pamici pod ktem wystpowania w nim elementw rozmw,
szukajc wszystkich pl JSON wymienionych wczeniej.
W INTERNECIE
www.magnetforensics.com
W INTERNECIE
www.aim.com
Jeeli uytkownik tak ustawi program AIM, aby zapisywa dzienniki w jego komputerze, bdzie
mona je znale w folderze Dokumenty w jego profilu. Przykadowo w systemie Windows 7 cieka
do tego katalogu bdzie wygldaa tak: C:\Users\{Profil_Windows}\Documents\AIM Logs\{Profil_AIM}\.
W folderze tym pliki dziennika s przechowywane w podfolderze o nazwie odpowiadajcej loginowi
uytkownika. Ich nazwy zawieraj nazw rozmwcy i rodzaj uytej usugi, np.:
user@gmail.com.gchat.html,
-1111111111@chat.facebook.com.html.
Format dziennikw
Dzienniki programu AIM s zapisywane w formacie HTML, a zawarte w nich wiadomoci znajduj si
w znacznikach <tr>. Kada wiadomo zajmuje osobny wiersz zawierajcy uniksowy znacznik czasu
UTC, pole okrelajce czas lokalny oraz pole z treci waciw wiadomoci. Oto przykad takiej definicji:
<tr><!--ts:1367611902--><td class="local">Author (16:11:42):</td>
<td class="msg" width="100%">Cze.</td></tr>
Artefakty
Od AIM 8.0.1.5 program nie jest ju instalowany w folderze Program Files. Nowym domylnym
katalogiem instalacyjnym jest folder znajdujcy si w profilu uytkownika, czyli najczciej C:\Users\
{Profil_Windows}\AppData\Local\AIM. Mona to sprawdzi w kluczu rejestru HKCU\Software\
Microsoft\Windows\CurrentVersion\Uninstall\AIM\InstallLocation, co pokazano na poniszym rysunku.
480 INCYDENTY BEZPIECZESTWA
Preferencje
Wikszo preferencji uytkownika w wersji AIM 8 jest przechowywana na serwerze. Ustawienia te
s przekazywane z jednej lokalnej instalacji do nastpnej i zapisywane w lokalnej bazie danych SQLite,
do ktrej cieki podane s w poniszej tabeli.
Baza danych SQLite zawiera jedn tabel o nazwie ItemTable, w ktrej znajduj si proste
pary klucz-warto suce do lokalnego przechowywania preferencji. Jeli wczona jest funkcja
zapisywania dziennikw w komputerze lokalnym, baza ta zawiera take histori rozmw tekstowych.
Poniej znajduje si przykadowy zapis sesji, w ktrej za pomoc polecenia sqlite3 w Cygwinie
wywietlilimy schemat bazy danych (polecenie .schema), a nastpnie wywietlilimy wszystkie
rekordy za pomoc polecenia select * from ItemTable.
$ sqlite3 http_www.aim.com_0.localstorage
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .schema
CREATE TABLE ItemTable (key TEXT UNIQUE ON CONFLICT REPLACE,
value BLOB NOT NULL ON CONFLICT FAIL);
sqlite> select * from ItemTable;
window-dimension-main|{"x":107,"y":112,"width":750,"height":595}
rememberPassword|0
_aim_session-on-www.aim.com-80-auth-current-userData|{"userName":"bad.guy.2"}
_aim_session-on-www.aim.com-80-auth-current-userName|null
_aim_session-on-www.aim.com-80-auth-hostTimeDelta|85
container-mainpanel-width|240
window-dimension-AIM Preferences|{"x":122,"y":69,"width":720,"height":700}
bad.guy.2local-logging|true
chatlog.bad.guy.2.bad.guy.1.0|{"startDate":1387315093,
"endDate":1387315093,"messages":[{"sender":"bad.guy.2",
"msgId":"52b0bf95-0007-00052c-77a355","date":1387315093,
"message":"<div><span style=\"font-family: arial\">hey dude</span></div>"}]}
chatlog.bad.guy.2.bad.guy.1.info|{"firstIndex":0,"lastIndex":0}
chatlog.largest_chatlogs|{"chats":[{"sessionAimId":"bad.guy.2",
"chatAimId":"bad.guy.1","chunkCount":1}]}
sqlite>
ROZDZIA 14. BADANIE APLIKACJI 481
Narzdzia
Jako e dzienniki programu AIM s w formacie HTML, do ich przegldania mona uy
dowolnego edytora tekstu. Wyszukujc znaczniki, w ktrych zapisywane s wiadomoci
(np. --><td class="local">), mona znale tekst przesyanych komunikatw w obrazach
pamici, plikach stronicowania oraz przestrzeni nieprzydzielonej. Zawarto bazy danych
preferencji mona wywietli w kadym narzdziu do otwierania baz danych SQLite. Dodatkowo
bardzo przydatne jest windowsowe narzdzie do konwersji czasu o nazwie DCode, ktre uatwia
prac z formatami czasu nieczytelnymi dla czowieka.
W INTERNECIE
www.digital-detective.co.uk/freetools/decode.asp
I CO Z TEGO
Artefakty pozostawiane przez system operacyjny stanowi tylko cz materiau dowodowego
potrzebnego podczas ledztwa. Druga cz, ktra pozwala caociowo zrozumie, co si wydarzyo,
to lady rnych aplikacji, ktre czasami mog by te jedynym dostpnym materiaem dowodowym.
W kadym razie naley pamita, e system operacyjny moe pozostawia tropy aplikacji w nietypowych
miejscach, takich jak wolna przestrze w pliku stronicowania systemu Windows, ktre pozostaj
poza kontrol aplikacji.
W rozdziale tym opisalimy trzy najwaniejsze kategorie aplikacji, w ktrych znajdujemy rne
dowody, czyli przegldarki internetowe, klienty poczty elektronicznej i komunikatory internetowe.
Ponadto napisalimy kilka sw na temat innych programw, dziki ktrym kilka razy udao nam si
zdoby cenne informacje. Poniewa nie moemy opisa wszystkich popularnych aplikacji, musisz
samodzielnie pozna te, ktrych uywa si w Twojej organizacji. Zbierz informacje w formie
podobnej do przedstawionej w tym rozdziale, czyli wypisz miejsca przechowywania danych,
formaty danych oraz narzdzia do ich analizy. Jeli wiedz t poczysz z technikami analitycznymi
opisanymi do tej pory, zdobdziesz wyposaenie, ktre pozwoli Ci rozwiza niejedn spraw!
PYTANIA
1. W trakcie ledztwa administrator baz danych odkrywa, e na jednej stacji roboczej kto
wykona kilkaset zapyta SQL o dugim czasie wykonywania. Samo zapytanie nie zostao
zarejestrowane, ale jest data, godzina, rdo i czas wykonywania. Twoim zadaniem jest
dowiedzenie si, jakie to byo zapytanie. Co zrobisz?
2. Rozpoczynasz ledztwo w komputerze z systemem Windows 7 i odkrywasz, e nie ma w nim
katalogu C:\Users. Zakadasz, e dane nie zostay usunite. Znajd realistyczne wyjanienie
nieobecnoci tego katalogu i opisz sposb dostania si do danych uytkownikw.
482 INCYDENTY BEZPIECZESTWA
Sortowanie
szkodliwych
programw
484 INCYDENTY BEZPIECZESTWA
P
odczas ledztw czsto znajdujemy w komputerach szkodliwe oprogramowanie (ang. malware).
Wiele osb nazywa tak kady program, ktry haker wykorzystuje do swoich celw, take
wszelkie oglnodostpne narzdzia. Nie jest to jednak dobry pomys, poniewa pojcie
szkodliwe oprogramowanie jest zbyt oglne. Dlatego zawsze staramy si przypisa wykryte
programy do bardziej konkretnych kategorii na podstawie tego, co robi. Posugujemy si wic
takimi terminami jak backdoor (tylne drzwi), program do zrzucania skrtw hase (ang. password
hash dumper), eskalator uprawnie (ang. privilege escalator) czy przekierowywacz portw
(ang. port redirector). Skategoryzowanie i zaszufladkowanie poszczeglnych programw
wykorzystywanych przez hakera uatwia zrozumienie jego zamiarw. Bez tego samo pojcie
szkodliwe oprogramowanie niewiele znaczy.
Nietrudno wic si domyli, e jednym z pierwszych pyta, jakie sobie zadajemy, gdy
znajdziemy szkodliwy program, jest: Co ta aplikacja robi?. Nie znajc odpowiedzi na to pytanie,
trudno przypisa program do odpowiedniej kategorii i domyli si, co haker prbuje osign.
W rozdziale tym opisujemy podstawowe metody sortowania szkodliwych programw, ktrych
zastosowanie pomaga znale odpowied na postawione wczeniej pytanie. Opisujemy sposoby
obchodzenia si ze szkodliwym programem, metody tworzenia rodowiska do sortowania oraz
techniki analizy statycznej i dynamicznej. Nie opisujemy natomiast metod dogbnego analizowania
szkodliwych programw, poniewa s inne doskonae pozycje na ten temat, np. Practical Malware
Analysis (No Starch Press 2012). Zamiast tego koncentrujemy si na tym, co umoliwia szybkie
znajdowanie odpowiedzi na pytania stawiane podczas reakcji na incydent.
Pamitaj, e Twj zesp powinien zdefiniowa cele analityczne dla kadego badanego pliku.
Zebrany materia dowodowy ma umoliwia podjcie konkretnych dziaa. W przeciwnym razie
po prostu zostanie zmarnowany czas. Wyniki mog pomc w wygenerowaniu wskanikw
zagroenia, za pomoc ktrych mona bdzie przeszuka wiksz liczb systemw. W innych
przypadkach zesp RI moe dowiedzie si czego na temat stosowanych przez hakera metod lub
kierujcych nim motyww. Jeli po zakoczeniu analizy nie ma adnych danych pozwalajcych
podj dziaania zaradcze, naley zastanowi si nad sposobem jej przeprowadzenia i czy w ogle
bya potrzebna.
Ostrzeenie Na pocztku tego rozdziau chcielibymy Ci ostrzec przed niebezpieczestwem, jakie niesie
sortowanie szkodliwych programw. Jakiekolwiek badanie czy analizowanie wirusw i nieznanych
plikw jest ryzykowne! Moesz niewiadomie zainfekowa swj komputer lub komputery
innych osb i spowodowa znaczne szkody. Cho postpowanie zgodnie z naszymi wskazwkami
powinno Ci przed tym uchroni, nie moemy nic zagwarantowa. Zawsze wtedy, gdy opisujemy
metody analizy szkodliwych programw, przyjmujemy, e czynnoci te powinno si wykonywa
w bezpiecznym rodowisku, np. izolowanej maszynie wirtualnej. Pamitaj, e wszystko robisz
na wasne ryzyko!
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 485
POSTPOWANIE ZE SZKODLIWYM
OPROGRAMOWANIEM
Wiesz ju, jakie s zagroenia podczas pracy ze szkodliwymi i nieznanymi plikami, wic moesz
pozna pewne zasady, ktre powinny uchroni Ci przed wypadkami i uatwi sortowanie.
Stosuj si do naszych wskazwek oraz przestrzegaj zasad obowizujcych w Twojej organizacji,
a take uywaj po prostu zdrowego rozsdku. W ten sposb wypracujesz bezpieczny sposb
postpowania. Protok ten powinien opisywa wszystkie aspekty pracy ze szkodliwym
oprogramowaniem, od czynnoci pocztkowych po zapisanie lub skasowanie programu
po zamkniciu ledztwa. Zalicza si do tego przestrzeganie wymogw bezpieczestwa,
sporzdzenie dokumentacji, dystrybucj oraz okrelenie metod dostpu do szkodliwych miejsc.
Bezpieczestwo
Ryzyko infekcji wasnych systemw minimalizujemy poprzez przestrzeganie dwch
podstawowych zasad.
1. Uycie wirtualnego rodowiska do sortowania. Nigdy nie otwieraj ani nie segreguj
podejrzanych plikw w swoim gwnym systemie operacyjnym. Zamiast tego skonfiguruj
izolowane rodowisko wirtualne lub fizyczne.
a) Utwrz maszyn wirtualn z wybranym systemem operacyjnym, zainstaluj na niej
wszystkie programy i narzdzia analityczne oraz utwrz czyst migawk. Bdzie ona
penia rol punktu kontrolnego, do ktrego zawsze mona wrci w razie problemw.
b) Na bieco aktualizuj oprogramowanie wirtualizacyjne.
c) Wycz niepotrzebne udogodnienia, takie jak funkcja przecigania i wsplnego
uytkowania schowka. Z funkcji tych korzystaj tylko wtedy, gdy maszyna wirtualna
jest czysta.
d) Dobrze odizoluj maszyn wirtualn od systemu gospodarza. Moesz skonfigurowa
izolowane sieci wirtualne, aby symulowa czno lub usugi, ale maszyna wirtualna
nie moe mie dostpu do sieci, ktre musz by wolne od infekcji. Nie zezwalaj
maszynie wirtualnej na dostp do internetu, chyba e akurat znajduje si w czystym
stanie z migawki. Wikszo maszyn wirtualnych umoliwia aktualizacj
oprogramowania przez przecigniciu plikw z systemu gospodarza.
e) Po zakoczeniu analizy natychmiast przywr czysty stan pocztkowy w maszynie
wirtualnej.
2. Zmienienie konfiguracji i procesw. Ryzyko zainfekowania systemu gwnego mona
znacznie zredukowa przez wprowadzenie pewnych zmian w konfiguracji i procesach.
a) Uywaj aktualnej wersji gwnego systemu operacyjnego.
b) Zainstaluj wszystkie atki i aktualizacje, wcznie z poprawkami do programw
firm trzecich.
486 INCYDENTY BEZPIECZESTWA
Dokumentacja
Wrczenie komu kopii szkodliwego programu z komentarzem zbadaj to nie jest najlepszym
podejciem do analizy szkodliwego oprogramowania. ledczy powinni przekaza szczegowe
informacje, ktre mog by pomocne w analizie, a analityk szkodliwego oprogramowania
powinien wypyta ledczych o dane, ktrych mu brakuje. Podczas pracy z wirusami zawsze
powinno si wszystko opisywa i rejestrowa wszystkie szczegy kontekstowe. Oto kilka pyta,
ktre warto rozway podczas pisania takiej dokumentacji.
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 487
Jak zidentyfikowano plik? Czy np. zgosi zwizane z nim zagroenie jaki program
zabezpieczajcy, taki jak antywirus? Czy moe to ledczy znalaz ten plik za pomoc
jakiej techniki? Jeli tak, to co dokadnie zrobi?
W jakiej wersji systemu operacyjnego znaleziono plik? Naley zanotowa dokadny numer
z okreleniem zainstalowanych atek oraz to, czy by to system 32-, czy 64-bitowy.
Jaka bya oryginalna nazwa pliku i w jakim katalogu zosta znaleziony? Dodaj te sum
MD5 lub inn sum kontroln (np. SHA256).
Czy na podstawie sumy kontrolnej da si rozpozna plik tzn. czy figuruje w jakiej bazie
danych plikw?
Czy s inne pliki, ktre mog by powizane z danym plikiem ze wzgldu na blisko
miejscow lub czasow?
Czy artefakty lub inne odkrycia dokonane w toku ledztwa pozwalaj domyla si,
czym jest dany program (np. odkryte protokoy lub porty sieciowe)?
Czy znaleziono dowody wykonywania programu w wierszu polece albo wykorzystania
mechanizmw typu zarzdzaj i kontroluj?
Jeeli program jest utrwalony, to czy s jakie lady wskazujce na sposb jego utrwalenia?
Czy analiza osi czasowej wykazaa jakiekolwiek pozycje, np. pliki albo klucze rejestru, ktre
zostay utworzone, zmodyfikowane lub uyte w czasie instalacji lub korzystania ze szkodliwego
programu?
Jakie inne rodzaje szkodliwego oprogramowania znaleziono podczas ledztwa?
Czy w toku ledztwa odkryto lady pozwalajce myle o jakim konkretnym zagroeniu?
Czy s dowody na to, e haker aktywnie korzysta z programu? Czy s dowody na to,
e incydent cay czas trwa?
Niektre z tych pyta mog wydawa si nieistotne lub zbyt uproszczone, ale odpowiedzi na
nie dostarczaj faktw w odniesieniu do kontekstu, ktrych nie mona ustali przy uyciu analizy
szkodliwego programu. W niektrych przypadkach fakty te pozwalaj znacznie skrci czas
sortowania. Sami bolenie przekonalimy si, e zaniedbania w sporzdzaniu dokumentacji
kontekstu s kosztownym bdem.
Dystrybucja
Z naszych dowiadcze wynika, e wiele organizacji rutynowo przesya szkodliwe programy
nie tylko do producentw oprogramowania antywirusowego, z ktrego korzysta, lecz rwnie
do innych organizacji i portali, ktrym ufaj. Jeli znalaze si w sytuacji kryzysowej i szukasz
pomocy, trudno oprze si pokusie skorzystania z tych rozwiza. Czsto nie ma po prostu innego
wyjcia. Sugerowalibymy jednak powcigliwo w tym zakresie i rozwaenie potencjalnych
negatywnych skutkw przekazania szkodliwych programw komukolwiek na zewntrz wasnej
organizacji.
488 INCYDENTY BEZPIECZESTWA
Pewnie zastanawiasz si, jakie to negatywne konsekwencje moe wywoa przekazanie wirusa
komu innemu? Pamitaj wic, e wiele atakw przypomina zabaw w kotka i myszk. Gdy haker
dowie si o Twoich dziaaniach, najprawdopodobniej zmieni taktyk, poniewa zorientuje si,
e zosta wykryty. Oto kilka innych kwestii, ktre naley rozway.
Szkodliwe programy wykorzystywane do przeprowadzania atakw skierowanych
na konkretny cel mog zawiera informacje pozwalajce zidentyfikowa organizacj.
Wrd nich mog nawet znajdowa si hasa i nazwy uytkownikw pozwalajce na
uwierzytelnienie w serwerach proxy i zdobycie dostpu do systemw przez internet.
Czy na pewno chcesz, aby takie informacje trafiy w obce rce? Wikszo portali z usug
sortowania szkodliwych programw jest prowadzona przez producentw programw
antywirusowych lub osoby, ktre maj z nimi kontakt. Czy chcesz ryzykowa, e wszyscy
dowiedz si, e Twoja organizacja pada ofiar hakera?
Jeli program antywirusowy lub inny program zabezpieczajcy utworzy sygnatur albo
inny automatycznie wdraany rodek zaradczy, czy spowoduje to utrudnienia w Twoim
ledztwie albo pokrzyuje plany rozwizania problemu? Z naszego dowiadczenia wynika,
e wikszo rodkw zaradczych stosowanych przez firmy od zabezpiecze w odniesieniu
do indywidualnych zagroe to tylko rozwizania poowiczne, ktre czsto nie obejmuj
caego problemu zazwyczaj te niekompletne rozwizania powoduj tylko, e haker
zostanie powiadomiony, i kto go wykry, i w duszej perspektywie przyczyniaj si
do utrudnienia ledztwa.
Czy Twoja organizacja ma gotowy i wyprbowany plan dziaania na wypadek katastrofy?
Jeli haker dowie si, e zosta wykryty, moe sprbowa zrobi co destrukcyjnego.
Naley zastanowi si z gry, jakie mogyby by tego skutki i przygotowa si
do ewentualnej obrony.
Nie twierdzimy, e szkodliwe programy naley ukrywa, tylko sugerujemy rozwaenie
wszystkich plusw i minusw ich ujawnienia. Jeli zdecydujesz si wysa wirus do jednostki
zewntrznej, postaraj si, aby wszystko odbyo si na Twoich warunkach i dobrze to przemyl.
Ostrzeenie Prost drog do utraty bezpieczestwa i proszeniem si o kopoty prawne jest odgryzanie si
hakerom tym samym (czyli prbowanie znalezienia i usunicia swoich informacji z innych,
potencjalnie zdobytych serwerw). Najlepiej zgosi swoje problemy organom cigania
i w porozumieniu z prawnikami wsppracowa z wacicielami domen. Branie spraw w swoje
rce moe mie bardzo przykre konsekwencje.
Przede wszystkim naley podkreli jedn rzecz dotyczc danych powiadczajcych. Jeeli
w Twojej organizacji uda si wykry ruch wychodzcy z uyciem danych powiadczajcych
(np. do konta FTP) i kto je wykorzysta w celu sprawdzenia przesanych w ten sposb plikw,
bdzie to oznaczao popenienie przestpstwa. W takim przypadku nie maj znaczenia nasze
intencje, nawet jeeli podamy za wasnymi skradzionymi informacjami. Wikszo specjalistw
od bezpieczestwa informatycznego, ktrzy promuj pomys zaatakowania hakerw ich wasn
broni, ma niewielk wiedz w zakresie RI i prawa. Osoby te nie powinny mie nic do powiedzenia
w prowadzonych ledztwach.
RODOWISKO DO SORTOWANIA
Jak napisalimy w podrozdziale o rodkach bezpieczestwa przy pracy ze szkodliwymi programami,
pliki takie naley analizowa wycznie w odpowiednio skonfigurowanym rodowisku testowym.
Naszym zdaniem nadaj si do tego dwa rodzaje rodowisk fizyczne systemy w izolowanej
fizycznej sieci lub systemy wirtualne w izolowanej (programowo) sieci wirtualnej. Sprawdzimy
teraz, jakie s zalety i wady kadego z tych rozwiza, a potem przejdziemy do opisu konfiguracji
wybranego rodowiska.
Zaczniemy od przyjrzenia si rodowisku fizycznemu. Jest to takie rodowisko, w ktrym analiz
przeprowadza si w systemie operacyjnym dziaajcym bezporednio na platformie sprztowej
(bez uycia wirtualizacji). Oprcz samego systemu, potrzebny jest sprzt sieciowy, np. przecznik
490 INCYDENTY BEZPIECZESTWA
Ethernet i okablowanie, jak rwnie klawiatura, monitor i mysz. Dodatkowo trzeba znale miejsce
do postawienia tego sprztu. Dostp do niego powinien by cile kontrolowany, aby zabkani
administratorzy sieci nie prbowali nic w nim naprawia. Nastpnie naley opracowa harmonogram
korzystania z tych zasobw i w kocu sposb przywracania systemu do znanego stanu po kadej
sesji analitycznej. W niektrych organizacjach przygotowanie takiego rodowiska roboczego
nie sprawia najmniejszych trudnoci sprzt, oprogramowanie i miejsce s dostpne od zaraz.
Jednak wikszo organizacji szuka bardziej ekonomicznych rozwiza. Dlatego dalej w tym rozdziale
opisujemy metody konfiguracji wirtualnych rodowisk do sortowania szkodliwych programw.
W rodowisku wirtualnym analiz wykonuje si przy uyciu maszyny wirtualnej. Do jej
utworzenia potrzebny jest specjalny program i system fizyczny, w ktrym mona go zainstalowa,
najczciej komputer jednego z pracownikw. Konfiguracja ta nie wymaga zakupu dodatkowego
sprztu ani wygospodarowywania miejsca, cho moe by konieczne zwikszenie iloci pamici
lub wstawienie dysku twardego o wikszej pojemnoci. Zalet tego rozwizania jest elastyczno
mona atwo dodawa, usuwa oraz konfigurowa systemy i sieci wirtualne. Ponadto nie ma
problemu z blokowaniem zasobw, poniewa kady analityk moe utworzy sobie wasne
rodowisko pracy. System wirtualny mona atwo przywrci do prawidowego stanu za pomoc
migawki, co uatwia eksperymentowanie i eliminuje ryzyko pomieszania danych z rnych spraw.
Potencjaln wad tego rozwizania jest to, e w nielicznych przypadkach szkodliwe programy
w rodowisku wirtualnym mog dziaa inaczej ni w rodowisku fizycznym. Wwczas mog
wystpi problemy z sortowaniem i bdy w interpretacji sposobu dziaania analizowanych wirusw.
Z wikszoci takich problemw mona sobie poradzi, stosujc indywidualne podejcie. Oglnie
rzecz biorc, naszym zdaniem wykorzystanie maszyn wirtualnych jest wygodniejszym i taszym
rozwizaniem ni posugiwanie si maszynami fizycznymi. Trzeba jednak przyzna, e w niektrych
przypadkach gdy podejrzany plik dziaa inaczej w systemie wirtualnym, a inaczej w fizycznym
jedyn moliwoci jest uycie sprztu fizycznego. W zwizku z tym, nawet jeli Twoja
organizacja nie analizuje szkodliwych programw w rodowisku fizycznym, warto zastanowi si,
co jest potrzebne do tymczasowego skompletowania takiego systemu dla wybranej sprawy.
Uwaga Czasami docieraj do nas opinie, e nie naley analizowa szkodliwych programw w rodowiskach
wirtualnych, poniewa programy te zachowuj si w nich inaczej ni w rodowiskach fizycznych.
Cho istotnie tak moe by, takie przypadki s bardzo nieliczne. Pomyl, jak powszechne s
maszyny wirtualne w dzisiejszym biznesie. Niektre organizacje nie tylko korzystaj z wirtualnych
rodowisk serwerowych, ale nawet uywaj wirtualizacji w zwykych komputerach biurkowych.
Gdyby szkodliwe programy nie dziaay w takich rodowiskach prawidowo, ich twrcy znacznie
ograniczyliby swoje moliwoci. Dlatego podczas sortowania szkodliwych programw
nie przejmujemy si takimi sprawami jak rnice w sposobie ich dziaania w rodowiskach
wirtualnych. Jeli istnieje podejrzenie, e dany wirus zachowuje si rnie, w zalenoci od rodzaju
rodowiska, mona skorzysta z pomocy dowiadczonego analityka. Dla takich specjalistw nie
stanowi to adnego wyzwania.
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 491
ANALIZA STATYCZNA
Jedna z dwch oglnych metod analizy szkodliwego oprogramowania to analiza statyczna.
Polega ona na badanu pliku za pomoc technik niewymagajcych wykonywania kodu. W ten
sposb mona szybko okreli podstawow funkcjonalno pliku wykonywalnego. Poniewa
jednak kod bywa bardzo skomplikowany, za pomoc tej metody rzadko udaje si zdoby peny
obraz tego, co robi badany program.
492 INCYDENTY BEZPIECZESTWA
Co to za plik
Masz ju bezpieczne rodowisko do badania plikw, wic moesz wzi si do pracy. W trakcie
prowadzonych ledztw czsto znajdujemy wiele plikw, ktrym chcielibymy dokadniej si
przyjrze. Czasami mamy wynikajce z kontekstu silne przesanki, e dany plik jest szkodliwy,
a czasami po prostu intuicyjnie podejrzewamy, e z jakim plikiem co jest nie tak. Poza tym
szkodliwe pliki mog pochodzi z wielu rde, np. analiz ledczych, analiz na ywo, systemw
antywirusowych, systemw monitorowania sieci itd. Jedn z pierwszych trudnoci, jakie napotkasz,
moe by okrelenie oglnej natury pliku i wydobycie z niego przydatnych informacji. Teraz
wyjanimy dokadniej, o co chodzi.
Szkodliwe programy wystpuj w najrniejszych formach i rozmiarach. Musisz zdawa sobie
spraw, e nazwa i rozszerzenie pliku nic nie mwi o jego przeznaczeniu. Pliki wykonywalne nie
musz mie rozszerzenia exe, a pliki z tym rozszerzeniem nie musz by wykonywalne. Ponadto
szkodliwe programy nie zawsze s wykonywalne w sposb bezporedni, tzn. system operacyjny
moe adowa instrukcje z tych plikw wprost do wykonania przez procesor CPU. Przykadowo
skrypty w jzykach interpretowanych, takich jak Python i Visual Basic, nie s wykonywalne
bezporednio inne programy musz je przekonwertowa na co, co nadaje si do wykonania
przez CPU. Innym przykadem s biblioteki wspdzielone, cho to nieco inna sprawa ni skrypty
w jzykach interpretowanych. Biblioteki wspdzielone zazwyczaj zawieraj kod wykonywalny
dla CPU, tylko musz najpierw zosta zaadowane przez jaki program. A niektre szkodliwe
programy s pakowane, tzn. skompresowane lub zaszyfrowane. Ponadto niektre systemy
przechwytujce i przechowujce szkodliwe oprogramowanie (np. programy antywirusowe
i zabezpieczajce) koduj takie programy we wasnym formacie, aby zapobiec ich uruchomieniu.
Wszystkie te czynniki mog znacznie utrudni dowiadywanie si, czym jest i co robi dany plik.
Szukanie informacji
Skutecznym sposobem na zaoszczdzenie duej iloci czasu, gdy chce si co osign, jest
kopiowanie cudzych rozwiza. Oczywicie nie nakaniamy do oszustwa, tylko zachcamy
do wykorzystywania wynikw prac innych osb. Istnieje kilka znanych baz danych, w ktrych
skatalogowano miliony plikw przeanalizowanych przez rne organizacje. Moe warto do nich
zajrze, zanim zacznie si analiz we wasnym zakresie?
Podczas szukania informacji o pliku najlepszym sposobem na uniknicie pomyki jest uycie
skrtu kryptograficznego. Cho nazwa pliku te czasami bywa przydatna w poszukiwaniach, skrt
identyfikuje zawarto pliku ponad wszelk wtpliwo. Najczciej uywanym algorytmem do
identyfikacji plikw jest MD5 (ang. Message-Digest Algorithm 5). Istniej take nowsze algorytmy,
np. SHA1 i SHA2 (ang. Secure Hash Algorithm), cho nie s one jeszcze wykorzystywane przez
wszystkie serwisy. Gwn rnic midzy tymi algorytmami jest to, e skrty SHA s bardziej
niezawodne i gwarantuj znacznie mniejsze ryzyko wystpienia kolizji, czyli wytworzenia takiego
samego skrtu dla dwch rnych plikw. Nie przejmuj si tym zbytnio, poniewa ryzyko wpywu
tego na ledztwo jest ekstremalnie niskie.
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 493
Do wygenerowania skrtu MD5 dla pliku potrzebne jest specjalne narzdzie. Wikszo
systemw uniksowych zawiera wbudowane przynajmniej jedno takie narzdzie. Najczciej
spotykane nazwy ich plikw wykonywalnych to md5, md5sum, sha1sum itd. System Windows
nie ma takiego standardowego narzdzia, wic trzeba je zainstalowa. Jest ono dostpne np.
w rodowisku Cygwin, ale mona te zainstalowa programy md5deep, DigestIT2004 czy WinMD5.
W INTERNECIE
md5deep md5deep.sourceforge.net
DigestIT2004 www.colonywest.us/digestit
WinMD5 www.winmd5.com
Po obliczeniu skrtw mona zacz szuka informacji. Najbardziej znane rda to FileAdvisor
firmy Bit9, VirusTotal, ThreatExpert oraz National Software Reference Library (NSRL) instytutu
NIST (ang. National Institute of Standards and Technology). Przy zetkniciu z nieznanym plikiem
dobrym pomysem jest zacz prac od przeszukania tych baz danych.
W INTERNECIE
FileAdvisor fileadvisor.bit9.com
VirusTotal www.virustotal.com
ThreatExpert www.threatexpert.com
NSRL www.nsrl.nist.gov
Dostp do bazy danych FileAdvisor firmy Bit9 jest darmowy, ale uytkownik moe wykona
tylko ograniczon liczb zapyta. Jeli wic chcesz mie moliwo sprawdzania wielu plikw,
musisz skontaktowa si z Bit9 w celu znalezienia rozwizania. W bazach danych VirusTotal
i ThreatExpert mona szuka nie tylko skrtw, lecz rwnie nazw plikw i innych atrybutw
charakterystycznych dla szkodliwych programw lub innych plikw. Ponadto bazy te dostarczaj
wicej informacji, czasami nawet zawierajcych wyniki kompletnej analizy szkodliwego programu.
Baz danych NSRL mona pobra za darmo, ale NIST nie udostpnia adnej wyszukiwarki.
SANS udostpnia usug wyszukiwania informacji w bazie danych NSRL, ale mona wpisa tylko
jeden skrt na raz. Alternatywnym rozwizaniem jest pobranie plikw bazy danych na komputer
i przeszukanie ich za pomoc takich narzdzi jak GREP. Jeli jednak planujesz intensywnie
korzysta z bazy danych, ta metoda jest niepraktyczna. W takim przypadku lepszym rozwizaniem
jest wczytanie plikw NSRL do bazy danych, utworzenie indeksw na kolumnach skrtw
i wykonywanie normalnych zapyta SQL. Istnieje te wyszukiwarka do bazy danych NSRL o nazwie
nsrlquery. Jest dostpna w internecie i mona z niej korzysta za pomoc normalnych pocze
klient-serwer. Jeeli nie chcesz konfigurowa serwera, istnieje dostpny publicznie serwer firmy
Kyrus. Wicej informacji o narzdziu nsrlquery mona znale na stronach internetowych.
494 INCYDENTY BEZPIECZESTWA
W INTERNECIE
Wyszukiwarka skrtw SANS isc.sans.edu/tools/hashsearch.html
Narzdzie nsrlquery nsrlquery.sourceforge.net
Publiczny serwer nsrlquery firmy Kyrus www.kyrus-tech.com/nsrlookup-service-beta
Nagwki plikw
Nagwek pliku to niewielka liczba bajtw na pocztku umoliwiajca m.in. identyfikacj pliku.
Czasami nagwek nazywa si magiczn liczb. Liczba bajtw nagwka rni si, w zalenoci
od typu pliku, ale z reguy typ pliku mona okreli na podstawie zawartoci szesnastu pierwszych bajtw
danych. Jeli np. znajdziesz plik zaczynajcy si od dwch bajtw 0x4D5A (MZ), moesz podejrzewa,
e jest to plik wykonywalny systemu operacyjnego firmy Microsoft. Istniej narzdzia do identyfikacji
plikw. Tu opisujemy dwa z nich, czyli edytor szesnastkowy FileInsight firmy McAfee i polecenie file.
Pierwsz nasz czynnoci, gdy otrzymamy nieznany plik, jest otwarcie go w dobrym edytorze
szesnastkowym i sprawdzenie jego nagwka. Naszym ulubionym darmowym narzdziem tego
typu jest program FileInsight firmy McAfee, a patnym program 010 Editor, cho dostpnych
jest wiele innych rwnie dobrych rozwiza.
W INTERNECIE
FileInsight www.mcafee.com/us/downloads/free-tools/fileinsight.aspx
010 Editor www.sweetscape.com/010editor
W INTERNECIE
msdn.microsoft.com/library/windows/hardware/ gg463125
496 INCYDENTY BEZPIECZESTWA
Kiedy pocztkowo wydawao si, e dany plik by wykonywalny, ale nie wida w nim wymienionych
acuchw, znaczy to, e w rzeczywistoci moe to by inny rodzaj pliku. Moliwe te, e zosta on
w jaki sposb spreparowany lub zakodowany. W takim przypadku najlepiej zastosowa inn
technik, np. uy polecenia file, aby dowiedzie si, co to za plik.
Polecenie file pochodzi z systemu Unix i nie stanowi standardowego elementu systemu
Windows. Wykorzystuje ono magiczny plik zawierajcy list magicznych liczb. Liczby te to
sekwencje bajtw z reguy w nagwku, ale mog by te ze stopek identyfikujce rne typy
plikw. Aby posugiwa si tym poleceniem w maszynie wirtualnej z systemem Windows, naley
zainstalowa rodowisko uniksowe, np. Cygwin, ktre jest prawie kompletne i zawiera powok
BASH z wieloma poleceniami Uniksa, np. cut, sed, awk, less, vi i file.
W INTERNECIE
www.cygwin.com
Podczas instalacji rodowiska Cygwin musisz wybra pakiet file, ktry nie jest domylnie
instalowany. Gdy ju polecenie stanie si dostpne w systemie, posugiwanie si nim nie sprawi
nikomu kopotu wystarczy mu przekaza nazw pliku do zbadania. Jeli np. chcesz przyjrze si
wszystkim plikom znajdujcym si w katalogu C:\Windows, moesz wykona nastpujce polecenie:
file /cygdrive/c/Windows/*
Narzdzie zwrci dug list informacji, ale mona wrd nich znale pewne fragmenty
doskonale ilustrujce, jak bardzo jest to przydatny program, jeli chodzi o identyfikacj plikw
na podstawie nagwkw:
twunk_16.exe: MS-DOS executable, NE for MS Windows 3.x
twunk_32.exe: PE32 executable (GUI) Intel 80386, for MS Windows
Vss: directory
win.ini: ASCII text, with CRLF line terminators
WMSysPr9.prx: Little-endian UTF-16 Unicode text, with CRLF line terminators
write.exe: PE32+ executable (GUI) x86-64, for MS Windows
Jak wida, polecenie to zwraca cakiem przydatne wyniki. Jednak czasami narzdzie file
nie potrafi zidentyfikowa typu pliku i wwczas wywietla typ oglny, np. data albo ASCII text.
W nielicznych przypadkach zdarza si te bd w identyfikacji typu pliku. Polecenie moe
stwierdzi, e plik jest typu ASCII text, a w rzeczywistoci bd to skompresowane dane, ktrych
format nie zostanie rozpoznany, ale zawiera tekst ASCII na pocztku. Zatem, cho polecenie file
jest zazwyczaj bardzo przydatne, te moe si pomyli. Dlatego warto zweryfikowa jego odkrycia
wasnorcznie lub za pomoc jeszcze innej techniki.
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 497
Czasami ani edytor szesnastkowy, ani polecenie file nie dostarczaj adnych przydatnych
informacji. Jeli pliku nie uda si znale w adnej z oglnodostpnych baz danych, konieczne
bdzie przeprowadzenie dodatkowych bada na wasn rk. Jeli na pocztku pliku znajdziesz
niepowtarzajcy si nigdzie indziej acuch lub szereg bajtw szesnastkowych, moliwe, e uda si
znale jakie informacje w internecie. Poszukaj tych acuchw lub sekwencji bajtw w wyszukiwarce
internetowej, a moe dopisze Ci szczcie. Powiedzmy np., e mamy plik o nazwie ufile.bin
i nastpujce wyniki zwrcone przez polecenie file:
$ file ./ufile.bin
ufile.bin: data
Nie s to zbyt przydatne informacje, wic postanawiamy zbada plik w edytorze szesnastkowym.
W programie FileInsight na pocztku pliku znajdujemy dane pokazane na rysunku 15.2.
Od razu zwracamy uwag na acuch $SDI0001, cho pewnie nie bardzo wiemy, co on znaczy
przynajmniej my nie wiemy. Szukamy wic tego cigu znakw w ulubionej wyszukiwarce internetowej.
Pierwszy wynik jest zatytuowany SDI file format specification Boot from LAN reboot.pro i naley
do wpisu blogowego pod adresem http://reboot.pro/4182/. Z zawartych tam informacji wynika,
498 INCYDENTY BEZPIECZESTWA
e plik ten jest obrazem rozruchowym. Na stronie znajduj si szczegowe dane o pliku, ktrego
magiczna sygnatura to $SDI0001 i wszystko wydaje si pasowa do reszty danych, jakie znajdujemy
w naszym pliku ufile.bin. We wpisie na blogu podano nawet struktury jzyka C ukazujce,
co zawiera kada cz nagwka. Okazuje si wic, e nie jest to szkodliwy plik, tylko kopia obrazu
oprogramowania ukadowego bezprzewodowego routera. Bardzo szybko udao si zidentyfikowa
typ pliku i nie kosztowao nas to wiele wysiku.
acuchy
Analiza acuchw w pliku to bardzo prosta i czasami niezwykle skuteczna metoda znajdowania
dodatkowych informacji o pliku. Zwykle uywamy narzdzia usuwajcego wszelkie niedrukowalne
znaki i pokazujcego tylko bloki tekstu o okrelonej minimalnej dugoci. W wiecie Uniksa program
taki nazywa si strings i wystpuje standardowo w prawie wszystkich odmianach tego systemu
operacyjnego. W systemie Windows nie ma odpowiednika tego narzdzia, ale polecenie to jest
dostpne w rodowisku Cygwin, a poza tym mona korzysta z innych programw, np. Malcode
Analysis Pack firmy iDefense lub narzdzie strings z pakietu Microsoft SysInternals. Przede wszystkim
naley wybra narzdzie obsugujce nie tylko kodowanie ASCII. Do reprezentacji acuchw
najczciej uywa si standardu Unicode, wic kade przyzwoite narzdzie powinno obsugiwa
zarwno acuchy ASCII, jak i Unicode.
W INTERNECIE
Malcode Analysis Pack github.com/dzzie/MAP
SysInternals strings technet.microsoft.com/en-us/sysinternals/bb897439.aspx
Hu4S
PSUV
j@SU
D$ 3
|$%Y
D$$SPh
Pocztkowe acuchy w plikach wykonywalnych systemu Windows zawieraj nazwy sekcji i inne
acuchy odnoszce si do nagwkw PE. Zazwyczaj niewielki jest z nich poytek zwaszcza wtedy,
gdy zawieraj typowe nazwy sekcji, takie jak .text i .data. Dalej z reguy znajduj si losowe acuchy,
a po nich znajdujemy obszar z acuchami zawierajcymi nazwy standardowych funkcji API. acuchy
te normalnie oznaczaj wywoania API wpisane w kodzie rdowym pliku wykonywalnego. Niektre
mog wic zdradza szkodliw funkcjonalno pliku. Przykadowo acuchy z tego pliku zawieray
wywoania ReadFile, co sugeruje, e program ten moe wczytywa dane z pliku lokalnego. Ponadto
acuchy InternetConnectA i InternetReadFile wskazuj, e czy si przez sie z jakim systemem.
Jeeli nie znasz nazwy ktrej z funkcji, moesz j sprawdzi w obszernej dokumentacji w portalu
Microsoft Developer Network.
GetModuleFileNameA
Sleep
TerminateThread
WaitForSingleObject
GetSystemTime
CreateThread
GetProcAddress
LoadLibraryA
GetLongPathNameA
GetTempPathA
ReadFile
InternetReadFile
HttpQueryInfoA
HttpSendRequestA
HttpOpenRequestA
InternetConnectA
InternetOpenA
W INTERNECIE
MSDN msdn.microsoft.com
Install
ServiceMain
UninstallService
installA
uninstallA
practicalmalwareanalysis.com
serve.html
CreateProcessA
kernel32.dll
.exe
HTTP/1.1
quit
exit
getfile
cmd.exe /c
Parameters
Type
Start
DisplayName
Description
Depends INA+, Collects and stores network configuration and location information,
and notifies applications when this information changes.
ImagePath
%SystemRoot%\System32\svchost.exe -k
SYSTEM\CurrentControlSet\Services\
Intranet Network Awareness (INA+)
%SystemRoot%\System32\svchost.exe -k netsvcs
OpenSCManager()
SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost
IPRIP
Ostrzeenie Pamitaj, e twrcy szkodliwych programw czasami maskuj acuchy w swoich produktach.
To, e nie znajdujesz jakiego acucha, wcale nie znaczy, i go nie ma. Poza tym haker moe
specjalnie dodawa do kodu rne acuchy, aby zmyli analityka. Dlatego nie naley zbytnio
ufa ustaleniom uzyskanym na podstawie analizy acuchw. Bywaj pomocne w pewnych
sprawach, ale waniejsze s logika i cieki wykonywania kodu.
Zakodowane pliki
Czasami natrafiamy na skrypty i inne szkodliwe programy z wielopoziomowym kodowaniem.
Kodowanie zazwyczaj peni dwie funkcje pozwala unikn wykrycia i zamaskowa
funkcjonalno programu. Techniki tego typu bardzo czsto stosuje si w konsolach sieciowych.
Wemy np. poniszy kod w jzyku PHP:
<?php
eval(base64_decode('JF9QT1NUWyJzZWNyZXRDb21tYW5kIl0='));
?>
Na pierwszy rzut oka kod ten moe wydawa si nieszkodliwy i niewprawny analityk
moe si nie domyli, e trzeba rozkodowa ten tekst, aby dowiedzie si, co naprawd znaczy.
Jeli rozkodujemy acuch JF9HRVRbInNlY3JldENvbW1hbmQiXQ== za pomoc algorytmu base64,
otrzymamy kod $_GET["secretCommand"]. Gdybymy teraz w miejsce funkcji base64_decode
z powyszego przykadu wstawili ten tekst, otrzymalibymy nastpujcy skrypt PHP:
<?php
eval($_GET["secretCommand"]);
?>
W INTERNECIE
www.softpedia.com/progDownload/PEiD-updated-Download-4102.html
www.softpedia.com/get/Programming/Other-Programming-Files/Kanal.shtml
www.softpedia.com/downloadTag/PEiD+plugin
Jeli otworzymy omawiany ju plik Lab03_02.dll w programie PEiD, dowiemy si, e zosta
skompilowany za pomoc kompilatora Microsoft Visual C++ 6.0 DLL (rysunek 15.3). Jest to
podstawowa informacja, ale pozwala oglnie zorientowa si, z jakiego rodzaju plikiem mamy
do czynienia.
Czasami konieczne jest dokadniejsze zbadanie pliku PE. Istnieje kilka narzdzi z funkcj
analizy najwaniejszych struktur danych tych plikw i wywietlajcych zestawienie zebranych
informacji. Najczciej uywamy programw PeView i CFF Explorer.
Zarwno PeView, jak i CFF Explorer dostarczaj szczegowych informacji o strukturach
danych pliku PE. Umoliwiaj przegldanie najwaniejszych sekcji, sprawdzenie czasu kompilacji,
wywietlenie standardowych cech, obejrzenie tabel eksportu i importu oraz analiz wielu innych
struktur danych. Program PeView ma mniej bogaty interfejs, ale wywietla niektre pola danych,
np. czas kompilacji, w czytelniejszy sposb. CFF Explorer dostarcza wikszej iloci informacji
w widoku oraz obsuguje pliki 32- i 64-bitowe oraz pliki binarne .NET. Ponadto CFF Explorer
ma funkcje wydobywania zasobw, przegldania zalenoci i edytowania pl (rysunek 15.5).
W INTERNECIE
PeView wjradburn.com/software
CFF Explorer www.ntcore.com/exsuite.php
Dependency Walker www.dependencywalker.com
504 INCYDENTY BEZPIECZESTWA
Pliki spakowane
Jeeli plik wykonywalny zawiera tylko kilka czytelnych acuchw albo bardzo niewielk liczb importw,
znaczy to, e moe by spakowany. Spakowany plik to plik poddany dodatkowemu procesowi, ktrego
celem z reguy jest skompresowanie lub zaciemnienie kodu. Proces ten znaczco zmienia zawarto
pliku, ktry mimo to zachowuje swoj pierwotn funkcjonalno. Zmodyfikowany plik moe by
poddany dowolnej kombinacji technik kompresji, szyfrowania, kodowania, antydezasemblacyjnych
i zaciemniajcych kod. Wszystkie te zabiegi wraz ze sposobem dekodowania nowego formatu mog
by bardzo skomplikowane. W celu dokonania zmian proces pakujcy z reguy zapisuje oryginalny
kod w nowym formacie i wstawia kod opakowujcy odpowiedzialny za dekodowanie. Niektre
z najczciej uywanych programw do pakowania to UPX, Aspack, PeCompact, Petite i Armadillo.
Zobaczmy, co mona zrobi ze spakowanym plikiem.
Niektre programy pakujce maj otwarty kod rdowy, wic bez problemu powstay te ich
odpowiedniki rozpakowujce. Dobrym pomysem na pocztek jest sprawdzenie, jakiego programu
pakujcego uyto. Czasami mona go wykry w programie PEiD. Jeli program ten poinformuje,
e plik zosta spakowany za pomoc narzdzia UPX, mona po prostu zainstalowa to narzdzie
u siebie w komputerze i za jego pomoc rozpakowa plik. Zawsze warto poszuka podstawowych
informacji o wykrytym programie pakujcym, aby dowiedzie si, czy istnieje atwe rozwizanie
problemu. Narzdzia do analizy plikw PE potrafi rozpakowywa pliki spakowane za pomoc
niektrych programw pakujcych. Przykadowo program PE Explorer ma funkcj rozpakowywania
plikw UPX, Upack i NSPack. Wikszo innych narzdzi pakujcych wymaga jednak dodatkowej
pracy z debuggerem.
W trakcie sortowania szkodliwych programw mona sprbowa rozpakowa plik za pomoc
debuggera. Niektre debuggery umoliwiaj zrzucanie zaadowanych plikw i czasami dostarczaj
cakowicie lub czciowo rozpakowane dane. Technika ta nie dziaa w odniesieniu do wszystkich
narzdzi do pakowania, ale w wielu przypadkach pozwala uzyska przynajmniej troch informacji.
Pamitaj te, aby uruchamia debugger wycznie w bezpiecznym rodowisku.
Uwaga Moe zauwaye, e cho jest to podrozdzia o analizie statycznej szkodliwego oprogramowania,
powyej znajduje si opis, jak uruchomi program. Ta konkretna czynno zalicza si do kategorii
analizy dynamicznej, ale gwnym celem jest wypakowanie pliku wykonywalnego w celu
przeprowadzenia na nim dalszej analizy statycznej. Nie przygldamy si sposobowi dziaania
programu, aby dowiedzie si, co robi.
W INTERNECIE
Program OllyDbg www.ollydbg.de
Wtyczki do programu OllyDbg www.openrce.org/downloads/browse/OllyDbg_Plugins
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 505
Pobierz program OllyDbg oraz wtyczk OllyDump i wypakuj je w tym samym katalogu.
Nastpnie uruchom plik OLLYDBG.EXE, aby ukazao si okno gwne debuggera. Sprawd
jeszcze, czy wtyczka OllyDump na pewno zostaa zaadowana w menu Plugins (wtyczki)
powinna widnie pozycja OllyDump, co mona zobaczy na rysunku 15.6.
Przejd do menu File/Open (plik/otwrz) i otwrz plik, ktry podejrzewasz o to, e jest
spakowany. OllyDbg zaaduje plik w stanie wstrzymania. Czasami wystarczy tylko wczyta plik,
aby otrzyma rozpakowane dane. Przejd do menu Plugins/OllyDump/Dump Debugged Process
(wtyczki/OllyDump/zrzut debugowanych procesw), pozostaw wszystkie ustawienia bez zmian
i kliknij przycisk Dump (wykonaj zrzut) rysunek 15.7.
Zapisz plik, a nastpnie przejrzyj jego zawarto za pomoc aplikacji strings. Porwnaj to,
co znajdziesz w tym pliku, z zawartoci oryginalnego pliku. Jeeli acuchy s takie same,
prawdopodobnie samo wczytanie pliku nie spowodowao jego rozpakowania. W takim przypadku
naley zastosowa inn metod trzeba pozwoli debuggerowi wykona plik. Kliknij opcj menu
Debug/Run (debugowanie/uruchom). Nastpi prba normalnego uruchomienia programu.
506 INCYDENTY BEZPIECZESTWA
Na tym etapie moe nie uda si kilka rzeczy program moe ulec awarii, moe wykry,
e jest uruchamiany przez debugger i odmwi dziaania, albo w ogle moe nie da si
uruchomi. Cokolwiek by si dziao, poczekaj na zakoczenie procesu zgodnie ze wskazwk
zamieszczon w prawym dolnym rogu paska stanu, a nastpnie wykonaj zrzut za pomoc opcji
Plugins/OllyDump/Dump Debugged Process. Zapisz zrzut w nowym pliku i tak jak wczeniej
porwnaj zawarte w nim acuchy z acuchami z wersji oryginalnej.
Jeli i tym razem Ci si nie powiedzie, musisz poprosi o pomoc bardziej dowiadczonego
specjalist od inynierii wstecznej wirusw, ktry zna zaawansowane techniki, np. przeprowadzi
inspekcj kodu, ustawi punkty wstrzymania, przeskoczy wybrane konstrukcje lub zmodyfikuje kod
tak, aby otrzyma rozpakowan wersj pliku. Jeli masz czas, przygldaj si jego pracy. Wiele technik
atwo powtrzy samemu, jeli troch si powiczy, ale w tej ksice nie ma miejsca na ich opis.
ANALIZA DYNAMICZNA
Drugi rodzaj analizy szkodliwego oprogramowania to analiza dynamiczna. Polega ona na wczeniu
monitoringu systemowego i uruchomieniu szkodliwego programu. Dokonane w niej odkrycia powinny
potwierdzi ustalenia z analizy statycznej oraz ujawni dodatkowe fakty. Czasami przeprowadzenie
takiej analizy jest trudne, gwnie z powodu problemw z prawidowym uruchomieniem szkodliwego
programu. Gdy jednak ju si to uda, mona zdoby znacznie wicej informacji w krtszym czasie
ni za pomoc analizy statycznej.
Analiz dynamiczn mona przeprowadzi przy uyciu narzdzi automatycznych lub rcznie.
Narzdzia automatyczne s szybsze i nie trzeba mie specjalistycznej wiedzy, aby z nich korzysta,
ale nie zawsze dostarczaj przydatnych informacji. Metoda rczna wymaga umiejtnoci posugiwania
si narzdziami monitorujcymi, ale zapewnia mniej moliwoci prawidowego uruchomienia
badanego programu.
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 507
Jako e poprzez samo uruchomienie programu trudno moe by odkry ca jego funkcjonalno,
analiza dynamiczna te nie jest rozwizaniem dobrym na wszystko. Przykadowo szkodliwe programy
nie zawsze zawieraj informacje dotyczce sposobu ich uycia oraz mog wymaga podania hasa,
aby wykona niektre gazie kodu. Pomyl o znanych edytorach tekstu. Sama moliwo ich
uruchomienia wcale nie oznacza, e poznamy ich ca funkcjonalno.
W INTERNECIE
GFI Sandbox www.threattrack.com
W naszej firmie nie korzystamy czsto z oglnodostpnych piaskownic. Mamy trzy wane powody,
ktre te powiniene rozway przy wyborze rozwizania dla siebie. Po pierwsze, podpisujemy z klientami
umow o nieujawnianiu informacji. Nie moemy wic sami zdecydowa si na wysanie danych do
analizy do firmy zewntrznej. Moesz znale si w podobnej sytuacji wynikajcej z uwarunkowa
prawnych lub umownych. Po drugie, automatyczne narzdzia do analizy rzadko dostarczaj odpowiedzi
na nasze pytania. Przykadowo dowiedzenie si, e program tworzy klucz rejestru lub plik, jest dobre
na pocztek, ale o wiele waniejsze jest to, dlaczego i jak ten program jest uywany. Po trzecie,
piaskownice rozwijaj si bardzo wolno. Podczas pracy bdziesz spotyka bardzo duo nowych
rodzin szkodliwego oprogramowania, ktrych analiza bdzie wymaga wprowadzenia zmian
w narzdziach. Jeli nie jeste wacicielem narzdzia i nie masz nad nim kontroli, musisz czeka,
a kto inny zajmie si tym za Ciebie. eby skuteczniej uruchamia szkodliwe programy i wydobywa
z nich wane dla nas informacje, utworzylimy wasne rozwizanie, ktre cay czas udoskonalamy.
Czasami pliki DLL bdce backdoorami mog zawiera eksporty instalujce szkodliwe programy
na stae w systemie. Dlatego dobrym pomysem jest zbadanie nazw eksportw i sprawdzenie, czy
ktry z nich si wyrnia. Powiedzmy, e napotykamy plik zawierajcy eksport o nazwie Deploy.
W takim przypadku moemy wykona nastpujce polecenie:
C:\>rundll32 sample.dll,Deploy
Za jego pomoc mona monitorowa procesy, pliki, rejestr i aktywno sieciow oraz filtrowa
zdarzenia na podstawie wielu kryteriw. Mona np. utworzy filtr monitorujcy tylko zdarzenia
pochodzce od procesu o okrelonej nazwie i ciece.
W INTERNECIE
Monitor procesw firmy Microsoft technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Nastpnie klikamy przycisk OK, aby zapisa filtr. Monitor nie bdzie rejestrowa zdarze
procesw uruchamianych przez szkodliwy program, poniewa zdefiniowalimy filtr bazujcy
na nazwie pliku. Dowiemy si jednak, e jaki proces zosta utworzony, i bdziemy mogli doda
lub zmodyfikowa filtry, aby zarejestrowa wszystkie interesujce nas informacje.
510 INCYDENTY BEZPIECZESTWA
Jeli zdarzenia nie zaczynaj pojawia si od razu, naley dokadnie sprawdzi ustawienia filtru
oraz to, czy monitor procesw dziaa w trybie rejestracji. Z naszych dowiadcze wynika, e jest to
bardzo niezawodne narzdzie i jeli wystpi jakie problemy, zazwyczaj s one spowodowane
naszym bdem.
Gdy monitor zacznie wywietla informacje o zdarzeniach, mog by ich setki, tysice, a nawet
dziesitki tysicy. Przegldanie ich wszystkich byoby strat czasu, wic trzeba znale sposb
na wybranie podzbioru do wstpnej analizy. W oknie monitora znajduje si kolumna o nazwie
Operation (operacje) przedstawiajca wywoania systemowe wykonywane przez monitorowany
program. Z reguy szukamy tych operacji, ktre daj wiksz szans na odkrycie wanych informacji
na temat badanego szkodliwego programu. Jeli nie ma lepszych tropw, warto zacz od operacji
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 511
Uwaga Operacji CreateFile moe by duo, ale nie naley tego interpretowa w ten sposb, e program
naprawd tworzy pliki. Zdarzenie CreateFile moe oznacza operacj utworzenia pliku lub otwarcia
uchwytu do pliku, wic w wielu przypadkach operacja ta suy do odczytania pliku.
Jedn z najbardziej przydatnych funkcji tego programu jest moliwo szukania acuchw
wrd uchwytw do procesw. Moesz np. dowiedzie si, e program rejestrujcy naciskane
klawisze (ang. keylogger) zapisuje dane w pliku o nazwie keylog.txt, ale nie wiesz, jaki proces
wykonuje zapis w tym pliku. Wwczas za pomoc eksploratora procesw mona przeszuka
uchwyty (Find/Find Handle or DLL) z wszystkich procesw w celu znalezienia nazwy keylog.txt
(rysunek 15.11).
W INTERNECIE
Microsoft Process Explorer technet.microsoft.com/en-us/sysinternals/bb896653.aspx
Handles technet.microsoft.com/en-us/sysinternals/bb896655.aspx
W INTERNECIE
Wireshark www.wireshark.org
ROZDZIA 15. SORTOWANIE SZKODLIWYCH PROGRAMW 513
I CO Z TEGO
W wikszoci incydentw hakerzy wykorzystuj szkodliwe programy lub inne narzdzia, aby
osign swoje cele. Zrozumienie, co te narzdzia robi, pomaga w odkryciu zamiarw hakera
i przedsiwziciu krokw zaradczych. W rozdziale tym przedstawilimy metody statycznej
i dynamicznej analizy szkodliwego oprogramowania, ktre naszym zdaniem umoliwiaj szybk
identyfikacj podejrzanego programu i okrelenie jego funkcjonalnoci. Jeli nawet techniki te nie
zadziaaj idealnie, wiedza z tego rozdziau pomoe Ci zachowa bezpieczestwo podczas pracy.
514 INCYDENTY BEZPIECZESTWA
PYTANIA
1. Jakie s gwne rnice midzy technikami analizy statycznej i dynamicznej? Jakie s zalety
kadej z nich?
2. Jakie czynniki naley uwzgldni przy kompletowaniu bezpiecznego rodowiska do analizy
szkodliwego oprogramowania? Gdyby powierzono Ci zadanie utworzenia takiego rodowiska,
jakie narzdzia przygotowaby do uycia zarwno w ramach analizy statycznej,
jak i dynamicznej?
3. W badanym systemie odkrywasz plik, ktry wydaje si podejrzany. Jak utworzysz bezpieczn
kopi tego pliku i przeniesiesz j do rodowiska analitycznego? Opisz procedur dziaania
zarwno podczas pracy w dziaajcym systemie, jak i z obrazem dysku twardego.
4. Na podstawie poniszych informacji powiedz, co zrobisz w nastpnej kolejnoci,
aby dowiedzie si wicej o badanym pliku.
a) Wyszukiwanie skrtu MD5 w najwikszych bazach danych nie dao rezultatu.
b) Programy antywirusowe nie rozpoznaj pliku jako zagroenia.
c) Plik zawiera niewiele czytelnych acuchw, z ktrych wikszo jest nieprzydatna.
5. Przeprowadzasz dynamiczn analiz pliku w systemie Windows i otrzymujesz z monitora
procesw nastpujce informacje.
a) Badany program wywouje funkcj SetWindowsHookEx.
b) W folderze tymczasowych aplikacji uytkownika utworzony zostaje plik bpk.dat.
c) Zapis pliku nastpuje w pozornie losowych odstpach czasu, ale wydaje si, e s one
krtsze, gdy system jest uywany.
d) Sprawdzasz zawarto pliku, ale zawiera on nieczytelne dane binarne.
6. Przedstaw jak teori na temat funkcjonalnoci pliku.
ROZDZIA 16.
Pisanie raportw
516 INCYDENTY BEZPIECZESTWA
P
ewien mdry czowiek kiedy powiedzia: Jeli czego nie ma w dokumentacji, znaczy to,
e tego nie byo. W dziedzinie bezpieczestwa komputerowego jest to zota zasada, ktrej
powinni przestrzega wszyscy specjalici od informatyki ledczej. Skrupulatne pisanie na
czas kompletnych i czytelnych raportw zawierajcych odpowiedzi na stawiane w ledztwie pytania
jest bardzo wane, ale i niezwykle trudne. Trudnoci sprawiaj, e wiele organizacji, gdy dojdzie
do incydentu bezpieczestwa, zaniedbuje kwestie sporzdzania dokumentacji. Jednak kiedy moe
nadej dzie, w ktrym losy przedsibiorstwa bd zalee wanie od treci raportu. Jako e nie
potrafimy przewidywa przyszoci, kady nasz raport powinien spenia pewne podstawowe wymogi
bez adnych wyjtkw. Kiedy nadejdzie ten sdny dzie i przyjdzie wykorzysta napisany
wczeniej raport, bdzie mona spa spokojnie, wiedzc, e dokument przejdzie pomylnie prb.
W rozdziale tym dzielimy si naszymi dowiadczeniami z pisania raportw.
PO CO PISA RAPORTY
Oto jedno z podstawowych pyta, jakie zapewne zada sobie niejeden czytelnik: Po co w ogle
naley pisa raporty?. Czasami powd jest oczywisty mog wymaga tego jakie zasady lub
przepisy prawa albo szef moe wyda okrelone polecenie. Czasami moe nie by adnych
przekonujcych powodw do napisania raportu. Mimo to, zalecamy sporzdzanie dokumentacji
zawsze wtedy, gdy analizuje si dowody lub reaguje na incydent, niezalenie od skali wydarzenia
i tego, czy udao si ustali co konkretnego, czy nie. Niektrzy kwestionuj zasadno takiego
podejcia, ale naszym zdaniem jest to podstawa procesu reakcji na incydent i informatyki ledczej.
Poniej dokadniej wyjaniamy nasze stanowisko w tej sprawie.
Nasza praca, mwic najprociej, polega na badaniu dowodw w celu uzyskania odpowiedzi
na pewne pytania. S one najczciej formuowane w toku postpowania prawnego lub
administracyjnego, a wic podczas dziaa, ktrych efekty mog mie wpyw na ycie ludzi.
Dlatego powinnimy dooy wszelkich stara, aby dostarczy dokadne odpowiedzi do
odpowiednich osb. Niektrzy twierdz, e tak wanie brzmi podstawowa definicja informatyki
ledczej... i maj racj. W tym kontekcie jest jasne, e zaniechanie sporzdzania dokumentacji
jest zwykym zaniedbaniem obowizkw.
Istniej te inne, cho mniej powane, powody do sporzdzania raportw. Pisanie raportu
zmusza nas do zastanawiania si nad tym, co robimy. Czasami opisanie poznanych faktw na
papierze pomaga w dostrzeeniu zwizkw lub odkryciu bdw, ktre wczeniej umkny uwadze.
wiczenie polegajce na napisaniu dokumentacji moe nawet pomc w rozwizaniu sprawy.
Ponadto treci raportu mona uy w wielu sytuacjach. Przykadowo majc dokumentacj
dokonanych ustale, atwiej mona dostarczy dane do aktualizacji stanu, przekazywa wiedz
i prowadzi szkolenia.
W niektrych przypadkach tworzenie pisemnej dokumentacji moe by zabronione. Zdarza si
tak najczciej, gdy radca prawny ma wtpliwoci dotyczce tego, czy ustalenia nie wyjd gdzie
na jaw. W takich przypadkach raport najczciej przedstawia si w formie ustnej. Kiedy w spraw
zamieszane s kwestie prawne, popro o dokadne wytyczne na temat sporzdzania raportu i tego,
ROZDZIA 16. PISANIE RAPORTW 517
Ostrzeenie Raporty ze ledztwa i reakcji na incydent podlegaj cisej kontroli, wic na twrcach tych
raportw spoczywa dua presja, aby wszystko zrobi dobrze. Poniewa nieczsto si zdarza,
aby ju na pocztku ledztwa udao si odkry wszystkie potrzebne fakty, zalecamy oznaczanie
wszystkich wczesnych raportw jako wersji wstpnych. W przeciwnym razie zmiany i dodatki
w nich mog by postrzegane jako oznaka niekompetencji lub prba oszustwa.
STANDARDY RAPORTOWANIA
Niewane, czy piszesz raport z powodw przedstawionych w poprzednim podrozdziale, czy innych,
musisz ustali standardy raportowania, aby zapewni najwysz jako dokumentu. W podrozdziale
tym opisujemy oglne cele raportowania oraz przedstawiamy konkretne zalecenia, ktre, jak wynika
z naszego dowiadczenia, skutecznie pomagaj w osigniciu tych celw.
Koncentracja sporzd list waciwych pyta wraz z odpowiedziami. Staraj si unika
dygresji. Najwaniejsze pytania i odpowiedzi powinny by atwe do znalezienia. Czytelnika
nie naley zmusza do szukania fragmentw informacji w rnych czciach raportu.
Najwaniejsze jest zdefiniowanie i osignicie okrelonego celu.
Zrozumiao pisz z myl o odbiorcy i staraj si uj myli w jak najmniejszej iloci
sw. Jeli np. raport jest przeznaczony gwnie dla kadry kierowniczej, musisz tak dobiera
wyrazy, aby byy zrozumiae dla tej grupy osb. Przydatne moe by zwize streszczenie
zawierajce najwaniejsze informacje interesujce dyrekcj.
Trzymaj si faktw przedstawiaj jednoznaczne i poprawne informacje. Unikaj
subiektywnych ocen oraz nie stosuj terminw i wyrae, ktre atwo mona le
zinterpretowa. Wszystkie stwierdzenia powinny mie poparcie w materiale dowodowym.
Nie mieszaj faktw z opiniami.
Czas ukocz pisanie raportu w rozsdnym czasie. W trakcie ledztwa dostarczony na
czas raport moe zawiera informacje, dziki ktrym uda si unikn powanych szkd
w organizacji. Najlepszym sposobem na uniknicie opnie jest pisanie na bieco.
Nigdy nie czekaj z rozpoczciem pisania dokumentacji na zakoczenie analiz.
Odtwarzalno opisane w raporcie wyniki powinno da si odtworzy. Dodaj wic
informacje, dziki ktrym kady bdzie mg odtworzy Twoje odkrycia. Moesz np.
napisa, e odzyskae dziesi plikw RAR. Nikt z zewntrz nie bdzie w stanie odtworzy
Twoich ustale, jeli nie dodasz informacji o tym, jak zdobye te pliki i gdzie na dysku je
znalaze. Opis nie musi by dugi. Wystarczy poda, e przeszukano nieprzydzielon
przestrze w poszukiwaniu standardowego nagwka plikw RAR, czyli szesnastkowego
cigu 0x52 0x61 0x72 0x21 0x1A 0x07 0x00. Jeli sprawa jest delikatna i istnieje due
prawdopodobiestwo, e bd potrzebne zeznania eksperta w sdzie, te trzeba to
uwzgldni warto wwczas rozway dodanie wikszej iloci szczegw.
518 INCYDENTY BEZPIECZESTWA
W INTERNECIE
www.eecs.qmul.ac.uk/~norman/papers/good_writing/Technical%20writing.pdf
Warto przeczyta ten dokument jako suplement do rozdziau, a nastpnie postara si wdroy
opisane w nim wytyczne nie bdzie to atwe, ale jeli si uda, Twoje raporty z pewnoci stan
si lepsze.
Opisywane przez nas wskazwki nie s ostatecznymi zasadami, ktrych naley trzyma si
za wszelk cen. Jest to zbir wytycznych, ktrych przestrzeganie pomaga w pisaniu klarownych
i czytelnych raportw. W niektrych przypadkach niewolnicze stosowanie si do porad moe mie
wrcz odwrotny skutek. Autor musi sam oceni, co w danej sytuacji jest najlepsze, i odpowiednio
si zachowa. Oto kilka konkretnych zalece stylistycznych.
Uywaj strony czynnej zdania zawierajce czasowniki w stronie czynnej s z reguy
bardziej zrozumiae i zwilejsze. Aby zamieni zdanie w stronie czynnej na stron biern,
zawsze trzeba uy wicej sw, przez co wypowied jest mniej zwiza. Przykadowo to
zdanie w stronie czynnej skada si z trzech wyrazw: Haker skrad dane. Natomiast
w stronie biernej przekazanie tej samej informacji wymagaoby uycia piciu sw:
Dane zostay skradzione przez hakera. Niektrzy staraj si skraca takie zdania przez
pominicie wykonawcy czynnoci i pisz: Dane zostay skradzione. Rzeczywicie jest to
krtsza forma, ale te mniej dokadna.
Uywaj czasu przeszego jedn z podstawowych zasad pisania raportw ze ledztw
jest uywanie czasu przeszego. Wszystkie opisywane w dokumencie zdarzenia miay
miejsce w przeszoci, wic powinno si je przedstawia w czasie przeszym.
ROZDZIA 16. PISANIE RAPORTW 519
Pisz krtkie zdania nie wiemy, jaki jest rekord, ale widzielimy w raportach zdania
zawierajce nawet ponad czterdzieci sw. Jednak ju przy dwudziestu sowach wcza si
alarm. Wszystkie zdania przekraczajce trzydzieci sw powinno si napisa na nowo.
Pisz konkretnie jeli znasz lub moesz pozna dokadn liczb plikw w katalogu, nie
pisz stwierdze typu w katalogu znajdowao si kilka plikw. Oglnie rzecz biorc, staraj
si nie uywa takich sw jak wiele, liczne, kilka, par itd., poniewa odnosz si one do
poj subiektywnych. Posuguj si konkretnymi liczbami! Nie dziel te prostych faktw
tylko po to, by skrci zdania. Lepiej napisa Plik o nazwie kout.dat zawiera dane
zgromadzone przez program rejestrujcy naciskane klawisze ni Program rejestrujcy
naciskane klawisze wysya dane do pliku. Plik ten nazywa si kout.dat.
Opisz, co udao si zrobi, a nie czego si nie udao jeli ustalenia s negatywne,
wyjanij, co zrobie i jakie byy efekty tych dziaa. Unikaj stwierdze w stylu nie udao si
odzyska pliku czy nie udao si. Tego rodzaju wyraenia mog zosta zinterpretowane
jako brak umiejtnoci zwaszcza wtedy, kiedy nie napisze si dodatkowo, jakie byy
przyczyny poraki. Przykadowo zamiast pisa analitykowi nie udao si odzyska
usunitego pliku, lepiej napisa system operacyjny wykorzysta przestrze zajmowan
uprzednio przez skasowany plik, dlatego odzyskanie tego pliku stao si niemoliwe.
Prowad czytelnika przez tekst z naszych dowiadcze wynika, e raport atwiej si
czyta, jeli jest zbudowany wok koncepcji napisz, co zamierzasz opisa, potem to
rzeczywicie opisz, a nastpnie podsumuj swoj wypowied. Czytelnikowi atwiej
przyswoi informacje, jeli najpierw zostanie wprowadzony do tematu. Zamiast np.
po prostu przedstawia list plikw znalezionych w katalogu i opisa ich przeznaczenie,
lepszym rozwizaniem jest napisanie na pocztku akapitu, e zawiera on opis trzech
plikw z okrelonego katalogu. Tego rodzaju zabiegi z reguy znacznie poprawiaj
czytelno raportu.
Poprawnie uywaj akronimw akronimy pozwalaj zaoszczdzi miejsce, ale przy
pierwszym uyciu zawsze naley poda rozwinicie. Dotyczy to nawet powszechnie
znanych akronimw, poniewa jeden akronim moe mie kilka rnych rozwini. I tak
DFS moe oznacza zarwno Distributed File System, jak i Discover Financial Services albo
Dynamic Frequency Selection. Ponadto nie rb bdw w zapisie akronimw jeli trzeba,
poszukaj informacji w odpowiednich rdach: DNS oznacza Domain Name System,
a nie Server czy Service.
Wystrzegaj si argonu i niejednoznacznych okrele termin eksfiltracja naley do
argonu bezpieczestwa komputerowego i staramy si go nie uywa w naszych raportach.
Lepszym okreleniem jest np. kradzie danych, bo jest zrozumiae dla kadego. Staramy
si te unika niejednoznacznych sw, takich jak zagroenie. Stwierdzenie, e system jest
zagroony, to tak jakby lekarz powiedzia, e kto jest chory. Zazwyczaj ju to wiemy.
Jeli chcesz zrozumie problem i go rozwiza, musisz zna szczegy. Nie zapomnij ich
opisa w raporcie.
520 INCYDENTY BEZPIECZESTWA
Uwaga W systemie prawnym USA raporty zawierajce opinie uznawane s za ekspertyzy. Autor takiego
raportu jest ekspertem i podobnie jak raport musi spenia pewne kryteria, aby zyska uznanie
w sdzie. Zalecenia opisane przez nas w tym rozdziale pomagaj w spenieniu tych wymaga, ale
na pewno tego nie gwarantuj. Wielu z nas z pewnoci brakuje pewnych cech osobistych, np.
niedawnych publikacji czy dowiadczenia sdowego. Jeli wic nie masz pewnoci, e speniasz
wszelkie wymagania, lepiej powstrzyma si od wyraania opinii w raportach, ktre maj by
wykorzystywane w procesach sdowych. Czasami jednak dziki takim opiniom moe nastpi
zwrot w sprawie. Jeli wic uwaasz, e dana opinia jest wana i moe zmieni bieg postpowania,
ale nie czujesz si wystarczajco wiarygodny jako ekspert, popro o pomoc kogo z odpowiednimi
kwalifikacjami.
Daty i godziny wybierz jeden format zapisu dat i godzin, i konsekwentnie si go trzymaj.
Wybrana metoda zapisu powinna reprezentowa dat i godzin w sposb niepozostawiajcy
wtpliwoci. Dlatego zalecamy zapisywanie dat w formacie DD miesic RRRR, np.
28 wrzenia 2012. W raporcie nie moe znale si zapis w stylu 05.05.05, poniewa nie
wiadomo, jak go zinterpretowa. Godziny zawsze przedstawiamy w strefie czasowej UTC
w formacie 24-godzinnym, np. piszemy 17:03:12 UTC zamiast 5:03:12 UTC. Zdecydowanie
odradzamy uywanie czasu lokalnego, poniewa bardzo utrudnia to korelacj zdarze
i konwersj wartoci czasowych. Standard ten dotyczy tylko dat pisanych przez nas
np. nie zmieniaj dat znajdujcych si w materiale dowodowym ani dostarczonych
przez narzdzia ledcze.
Przedstawiaj metadane w standardowej formie utwrz tabele i inne standardowe
formaty dokumentacji metadanych zwizanych z poczynionymi ustaleniami. Jeli np.
w ramach ekspertyzy odkryjesz pliki, wszystkie powinny zosta opisane w ten sam
standardowy sposb z podaniem nazwy, znacznikw czasu, cieki, skrtu MD5 i innych
istotnych informacji.
Stosuj podpisy i odsyacze do pisania raportw uywamy programu Microsoft Word,
ktry zawiera wbudowane funkcje do tworzenia podpisw i odsyaczy. Pod wszystkimi
tabelami i rysunkami zawsze umieszczamy podpisy w takim samym formacie oraz
dodajemy do nich odsyacze w tekcie. Odsyacz powinien wyjania zawarto tabeli
lub ilustracji nie ka czytelnikowi domyla si, o ktrej tabeli aktualnie piszesz.
Prawidowo posuguj si tabelami i ilustracjami informacje skadajce si z wielu
rekordw o licznych waciwociach, takie jak np. historia przegldarki internetowej,
najlepiej przedstawia w formie tabeli. Jeli trzeba doda wycinki zawartoci pliku,
mona posuy si ilustracjami z czcionk o staej szerokoci i obramowaniem.
Zdefiniuj standardowy sposb formatowania (krj pisma, obramowanie, cieniowanie)
tabel i ilustracji. Nie zapomnij doda podpisw i odniesie do nich w tekcie raportu.
Stosuj listy wypunktowane i numerowane akapity zawierajce opisy dugich list s
trudne w odbiorze. Czasami lepiej zamieni je na listy, ktre s znacznie bardziej czytelne.
KONTROLA JAKOCI
Bez wzgldu na to, jak bardzo jestemy pewni, e nasz raport jest najwyszej jakoci, dobra korekta
zawsze wykryje jakie niedocignicia. Poddanie dokumentu procesowi recenzji uchroni Ci przed
przekazaniem klientowi produktu o niezadowalajcej jakoci. Kompletny proces kontroli jakoci
obejmuje przegld treci pod ktem zgodnoci z wytycznymi dotyczcymi stylu, formatowania,
treci i dokadnoci technicznej. W wikszoci organizacji do przeprowadzania takich weryfikacji
wyznaczone s specjalne osoby. Recenzentem nie moe by autor raportu. Czasami proces recenzji
nazywa si korekt koleesk i jego przeprowadzenie jest wymagane w akredytowanych
laboratoriach informatyki ledczej.
I CO Z TEGO
Jest takie znane powiedzenie: Niewane, co mwisz, tylko jak mwisz. Pisanie raportu to dla
niektrych najtrudniejsza cz akcji RI. Nie raz widzielimy, jak specjalici, w ramach wyjanienia,
co zrobi haker, przedstawiali zrzuty ekranu. Trudno jednak ich wini, gdy w szkole nikt nie uczy
ludzi, jak poprawnie i skutecznie wyraa si na pimie. Jednak bez umiejtnoci poprawnego
pisania moesz przegra walk, zanim na dobre si zacznie. Dlatego naley cay czas rozwija
i odwiea swoje umiejtnoci pisarskie. Szukaj rde, z ktrych mona nauczy si wyraa
skomplikowane pomysy w prosty sposb. Ponadto dla nas bardzo pomocne s ponisze cytaty.
Jeli czego nie ma w dokumentacji, znaczy to, e tego nie byo.
Wyobra sobie, e za dwadziecia lat kto Ci spyta, w jaki sposb doszede do takich,
a nie innych wnioskw. Co napiszesz teraz, aby pniej odpowiedzie na to pytanie?
Wyobra sobie, e wyjaniasz swojej babci, co to jest internet. Oka cierpliwo
i wspczucie, aby pomc jej w nauce.
PYTANIA
1. Analizujesz obraz dysku twardego w poszukiwaniu usunitych plikw RAR. Koczysz
analiz i nie znajdujesz adnego takiego pliku. Szef kae nie pisa raportu. Co zrobisz
i dlaczego?
2. Wyjanij, dlaczego strona czynna jest preferowan form gramatyczn w raportach
technicznych. Podaj przynajmniej trzy przykady przedstawiajce rnic midzy stron
czynn i biern.
3. Zaprojektuj dwie tabele do prezentacji metadanych, ktrych nie opisano w tym rozdziale.
Wyjanij, dlaczego zastosowae taki, a nie inny ukad i dlaczego uye takich, a nie
innych pl.
4. Podczas analizy odkrywasz w pliku co, co wyglda jak numery kart kredytowych.
Przedstawiasz wycinek zawartoci tego pliku na ilustracji. Czy powiniene podj
jakie specjalne rodki w odniesieniu do sposobu prezentacji tych danych?
526 INCYDENTY BEZPIECZESTWA
CZ V
Naprawa
ROZDZIA 17.
Wprowadzenie
do technik naprawczych
530 INCYDENTY BEZPIECZESTWA
A
by reakcja na incydent bya skuteczna, naley dziaa dwubiegunowo przeprowadzi
ledztwo w sprawie zdarzenia i wdroy rodki naprawcze. Do tej pory cay czas
zajmowalimy si tylko metodami dochodzeniowymi: jak przygotowa si do incydentu,
jak zbiera dane oraz jak je analizowa. Jednak czynnoci naprawcze s rwnie wane i te
zasuguj na troch miejsca w ksice. Powicilimy im dwa cae rozdziay. W tym rozdziale
przedstawiamy podstawowe teoretyczne zagadnienia, a w nastpnym opisujemy praktyczny
sposb zastosowania tej wiedzy do przypadkw opisanych w rozdziale 1.
Naszym celem jest przedstawienie metod sporzdzania kompletnego planu naprawczego.
Tworzenie takiego planu nie jest atwym zadaniem, poniewa trzeba uwzgldni wszystkie aspekty
nawet najtrudniejszych do rozwizania spraw. Oczywicie nie zawsze konieczne jest tak dokadne
planowanie dziaania, ale trzeba by przygotowanym na wszystko. Na pocztku tego rozdziau
wprowadzamy kilka podstawowych poj dotyczcych technik naprawczych. Nastpnie szczegowo
je omawiamy i na zakoczenie opisujemy konkretny przykadowy scenariusz ich wdroenia.
PODSTAWOWE POJCIA
Wdraanie czynnoci naprawczych po powanym incydencie to skomplikowany proces. Aby uatwi
sobie objanianie pewnych aspektw tego dziaania, postanowilimy wprowadzi kilka podstawowych
poj. Dotycz one oglnych czynnoci, rodzajw akcji naprawczych oraz typowych czynnikw
majcych kluczowe znaczenie dla procesu naprawy. Plan naprawczy zazwyczaj skada si z dwch
czci. Najpierw naley skupi si na zaegnaniu biecego niebezpieczestwa (wdroenie wstpnych
rodkw naprawczych, ograniczenie zagroenia i jego likwidacja), a nastpnie poprawi poziom
zabezpiecze organizacji (dziaania strategiczne). Jak zawsze, gdy trzeba przeprowadzi jak
skomplikowan akcj, im lepiej wszystko zaplanujemy, tym sprawniej bdziemy pracowa.
Wstpny plan naprawczy powinien obejmowa wszystkie rodki, jakie naszym zdaniem organizacja
jest w stanie wdroy przed eliminacj zagroenia (eradykacj). Pniej w czasie ledztwa plan ten
wielokrotnie ulega zmianom, poniewa niektre punkty okazuj si znacznie trudniejsze do realizacji,
ni si pocztkowo wydawao. Propozycje takie z reguy przesuwamy do listy zalece strategicznych,
chyba e bez nich nie moe by mowy o powodzeniu biecych czynnoci.
Uwaga Jeli jaki punkt wstpnego planu eliminacji zagroenia okazuje si zbyt trudny do wdroenia na
tym etapie pracy, naley go rozoy na czynniki, wybra najwaniejsze elementy do zastosowania
od zaraz, a pozostae przesun do planu strategicznego. Przykadem moe by zalecenie globalnej
implementacji uwierzytelniania dwuskadnikowego. Niektrzy nasi klienci nie byli w stanie tego
wykona przed likwidacj zagroenia, wic wybierano tylko pewne grupy uytkownikw.
Z taktycznego punktu widzenia dwie najwaniejsze grupy, ktrych procesy powinno si zmieni,
to kadra kierownicza i wszyscy administratorzy systemw. Zmiany u pozostaych osb mona
odoy na pniejszy termin. Taki sposb dziaania pozwala ograniczy zasig dziaalnoci hakerw,
jeli ewentualnie sprbuj powrci.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 531
Rodzaj incydentu take moe decydowa o jego powadze. Przykadowo usuwanie zagroe
z zewntrznego serwera, ktry zawiera tylko publicznie dostpne informacje, to znacznie
mniej powana sprawa ni dziaanie przeciwko hakerowi, ktry zdoby dane powiadczajce
administratora domeny. Organizacja z ugruntowanymi procesami reakcji na incydenty
powinna mie opisane rne poziomy powagi incydentw, aby specjalici RI mogli szybko
podj odpowiednie dziaania.
Czas wdraania czynnoci naprawczych strony majce wpyw na dziaalno firmy
powinny ustali czas wykonywania czynnoci naprawczych na pocztku procesu planowania.
Niektre dziaania maj na celu natychmiastowe usunicie hakera z systemw zawierajcych
poufne dane, natomiast inne wykonuje si po to, by da zespoowi ledczemu troch czasu
na zebranie odpowiedniej iloci informacji, aby skutecznie pozby si hakera ze rodowiska
i przy okazji wzmocni zabezpieczenia. Cho nie jest moliwe (ani nawet podane) cise
trzymanie si planu ustalonego, zanim w peni zrozumie si natur incydentu, ramy czasowe
nie powinny by zbyt dugie, aby caa akcja zbytnio si nie przecigaa.
Zesp naprawczy przy kompletowaniu zespou naprawczego naley uwzgldni trzy
czynniki: liczebno zespou, poziom umiejtnoci czonkw oraz wsparcie ze strony
kierownictwa. Od liczebnoci zespou zaley jego zdolno do koordynacji dziaa
i rwnolegego przeprowadzania czynnoci. Od poziomu umiejtnoci czonkw zaley
skuteczno prowadzonej akcji. Dowiadczeni specjalici nie bd mieli problemu
z wdraaniem dostosowanych do wasnych potrzeb rozwiza, natomiast mniej
dowiadczeni pracownicy wol raczej posugiwa si tylko tymi narzdziami, z ktrymi
czuj si najbardziej komfortowo. Wsparcie ze strony kierownictwa zapewnia zespoowi
odpowiednie uprawnienia do dziaania i rodki finansowe potrzebne do wdroenia
zabezpiecze.
Technologia typ zastosowanej technologii wpywa na sposb wdraania czynnoci
naprawczych. Wana jest nie tylko technologia zabezpiecze, ale i rozwizanie stosowane
do zarzdzania przedsibiorstwem. Przykadowo w organizacji moe by uywany program
do zmieniania hase do lokalnych kont administratorw w caym przedsibiorstwie.
Jeli nie ma takiego programu, moe by konieczne napisanie skryptu do zmiany hase
do kont administracyjnych we wszystkich systemach.
Uwaga Wdraanie nowej technologii podczas incydentu zazwyczaj przynosi wicej szkd ni poytku.
Wszystkie zasoby (ludzie, czas, pienidze) oddelegowane do implementacji tej nowej technologii
musz zosta zabrane z puli, ktr mona by wykorzysta w ledztwie lub procesie naprawczym.
Oczywicie s wyjtki od tej reguy, np. gdy organizacja ma bardzo dowiadczony i sprawny zesp
ds. bezpieczestwa informatycznego albo od wdroenia pewnej technologii zaley powodzenie
akcji naprawczej.
Uwaga Wymogi prawne dotyczce ujawniania informacji o wycieku chronionych danych zdrowotnych
mog si rni w zalenoci od kraju. Jeli wic przyjdzie Ci pracowa przy tego typu sprawie,
koniecznie od samego pocztku zaangauj w proces prawnika i dzia PR firmy.
TESTY WSTPNE
Przed przystpieniem do kompletowania zespou naprawczego zalecamy wykonanie dwch
testw wstpnych.
Pierwszy ma na celu sprawdzenie, czy organizacja wdroya formaln procedur reakcji na
incydent. Prowadzenie takiej akcji wymaga wielu godzin czasu pracownikw i moe oznacza,
e wiele wanych osb i zespow zostao oddelegowanych do prac zwizanych z incydentem
i oderwanych od normalnych obowizkw. Moe si to wydawa niepotrzebne, ale wane jest,
aby polecenie wszczcia procedury reakcji na incydent wyszo od dyrekcji oraz by proces ten
rozpocz si dopiero po tym, jak to polecenie zostanie wydane.
Drugi test dotyczy sprawdzenia, czy incydentowi zosta przypisany waciciel. Jest to osoba
penica funkcj lidera odpowiedzialnego za komunikacj wewntrz organizacji, z zespoem
ledczym oraz zespoem naprawczym. Wszystkie zespoy musz konsultowa z liderem swoje
dziaania, aby caa akcja bya dobrze skoordynowana i spjna. Byoby to trudne, gdyby nie byo
wiadomo, kogo wyznaczono do tej roli lub, co gorsza, gdyby nie wyznaczono nikogo.
Teraz moemy przej do szczegowego omwienia pierwszego kroku, czyli kompletowania
zespou naprawczego.
dwudziestu czterech godzin). Mimo e samo wamanie zostao wykryte dopiero po dziesiciu dniach,
utrzymywanie niskiej redniej jest bardzo wane. Jeli wemiemy pod uwag to, e wikszo
organizacji nie wykrywa samodzielnie zama zabezpiecze, tylko jest o tym informowana
przez podmioty zewntrzne, krtki czas naprawy jest tak samo wany jak szybkie wykrywanie
incydentw.
Teraz przejdziemy do kwestii wyznaczania lidera procesu naprawczego.
Ponadto lider zespou naprawczego musi umie znale poparcie dla swojego planu. Konieczne
bdzie podjcie wielu trudnych decyzji, w efekcie ktrych dojdzie np. do kosztownych przerw
w dziaaniu systemw biznesowych. W takim przypadku lider musi zdoby poparcie najwaniejszych
decydentw (z reguy dyrektorw, kierownikw linii produktw i starszych inynierw). Tylko to
moe mu zapewni powodzenie. Zdobycie poparcia dla rnych inicjatyw czsto jest uzalenione
od umiejtnoci przedstawienia w sposb jasny, jakie ryzyko i potencjalne korzyci wi si z danymi
czynnociami. W takich przypadkach kluczowe znaczenie ma zdolno do przekazywania technicznej
wiedzy osobom z nietechnicznych dziaw. aden dyrektor nie zechce sucha o tym, jak wdroenie
okrelonych zabezpiecze podniesie poziom bezpieczestwa firmy, jeli ma si to odbi na
skutecznoci jej dziaania. Dyrektorzy wol raczej wiedzie, jak dana technologia zwikszy poziom
bezpieczestwa firmy i ochroni jej interesy. Nawet trudne operacje wymagajce zmiany sposobu
dziaania firmy mog spotka si z uznaniem i zyska poparcie, jeli zostan w odpowiedni sposb
przedstawione zwierzchnikom.
Umiejtno komunikacji z osobami z dziaw technicznych i nietechnicznych jest kluczow
cech lidera zespou naprawczego. Osoba ta musi umie porozumie si ze swoimi pracownikami,
aby oceni, czy formuowane przez nich zalecenia s korzystne zarwno z punktu widzenia procesu
naprawczego, jak i oglnego bezpieczestwa organizacji. Ponadto lider musi wiedzie, jak rozmawia
ze zwierzchnikami, posugujc si ich jzykiem, aby prawidowo przedstawi im wszystkie zalety
i wady rnych dziaa. Przykadowo lider zespou naprawczego musi odpowiednio poinformowa
o tym, jakie ryzyko wie si z odczeniem internetu od wszystkich systemw na pierwszym etapie
procesu likwidacji zagroenia. Dyrektorzy musz rozumie, jakie skutki bdzie mia tak drastyczny
krok jak odcicie od internetu, ktry z pewnoci zaburzy dziaalno firmy na jeden czy dwa dni.
Uwaga W skad wielu zespow ds. reakcji na incydent od samego pocztku wchodz prawnicy (z tej samej
lub zewntrznej firmy albo jedni i drudzy). Dziki temu nie ma wtpliwoci dotyczcych zgodnoci
z prawem rnych dziaa. Czasami, gdy w prowadzeniu reakcji na incydent pomaga obca firma,
obecno w ekipie prawnika, zwaszcza z firmy zewntrznej, pomaga zachowa przewag
na wypadek rozprawy sdowej.
Jednym z pierwszych zada, z jakimi musi si upora zesp naprawczy, jest wybr sposobu
dziaania. W nastpnym podrozdziale opisujemy rne metody prowadzenia akcji naprawczej
oraz zwizane z nimi kwestie, ktre naley rozway.
OPRACOWYWANIE I WDRAANIE
WSTPNYCH RODKW ZARADCZYCH
Najpierw omwimy wstpne rodki zaradcze. Podejmuje si je w czasie trwania incydentu i powinny
by tak dobrane, aby wywieray jak najmniejszy wpyw na hakera. Ich celem jest dostarczenie
zespoowi ledczemu wikszej iloci informacji przez wczenie dodatkowych funkcji rejestracji
danych w dziennikach i dodanie monitorw. Wstpne rodki zaradcze mog mie kluczowe
znaczenie dla ledztwa, poniewa dostarczaj dodatkowych rde materiau dowodowego
i skracaj czas potrzebny na przeprowadzenie pniejszych faz procesu naprawczego.
Oto kilka przykadw typowych dziaa wykonywanych w ramach wstpnej akcji naprawczej.
Zwikszenie iloci danych rejestrowanych m.in. w nastpujcych dziennikach:
systemowych,
aplikacji,
sieciowych,
centralnego uwierzytelniania.
Centralizacja plikw dziennikw i systemu zarzdzania (wdroenie systemu zarzdzania
informacjami i zdarzeniami bezpieczestwa informatycznego SIEM).
Wczenie wikszej liczby alarmw.
Instalacja aktualizacji zewntrznych programw.
Implementacja uwierzytelniania wieloskadnikowego do rodowisk o kluczowym znaczeniu.
Redukcja liczby miejsc przechowywania wanych danych.
Podniesienie poziomu bezpieczestwa uwierzytelniania macierzystego.
Wiele z tych zabiegw mona przeprowadzi, zmieniajc typy danych przechowywanych
przez punkty kocowe. W systemach Linux do najatwiejszych dziaa wstpnych mona zaliczy
wczenie rejestracji historii polece i inspekcji procesw oraz rejestracji wszystkich przypadkw
uwierzytelniania. W systemach Windows mona w narzdziach inspekcji wczy rejestrowanie
w dziennikach zdarze powodzenia i poraki. To, jakie konkretnie zdarzenia zapisywa, zaley
od celu. Oto lista niektrych najczciej rejestrowanych typw zdarze.
Przeprowadzenie inspekcji zdarze logowania na kontach.
Przeprowadzenie inspekcji zarzdzania kontami.
Przeprowadzenie inspekcji zdarze logowania.
Przeprowadzenie inspekcji dostpu do obiektw.
Przeprowadzenie inspekcji uycia uprawnie.
Przeprowadzenie inspekcji ledzenia procesw.
Przeprowadzenie inspekcji zdarze systemowych.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 543
Ostrzeenie Wczenie zdarze powodzenia Microsoft Windows dla zasad inspekcji Przeprowad inspekcj
dostpu do obiektw i Przeprowad inspekcj ledzenia procesw moe spowodowa szybkie
zapenienie lokalnego dziennika zdarze bezpieczestwa. Jeeli do tego dojdzie, dzienniki
zdarze bd zawieray wpisy dotyczce tylko bardzo krtkiego okresu. To drastycznie obnia
ich przydatno. Dlatego naley bacznie przyglda si skutkom wprowadzanych zmian
w zasadach rejestracji zdarze. Mona zwikszy maksymalny rozmiar plikw dziennika
lub skierowa zdarzenia do centralnego systemu rejestracyjnego.
Uwaga Jednym z czsto popenianych bdw jest mylenie, e rejestrowanie informacji tylko o nieudanych
zdarzeniach pozwoli wykry szkodliw aktywno. Nieraz mielimy do czynienia z organizacjami,
ktre koncentroway si wycznie na szukaniu informacji o bdach w przekonaniu, e w ten sposb
znajd dane dotyczce szkodliwej dziaalnoci (mylenie to bazuje na spostrzeeniu, e jeli co
jest szkodliwe, to jest niedozwolone, wic zostanie zaklasyfikowane jako nieudana prba zrobienia
czego). Cho oczywicie w niektrych przypadkach rzeczywicie tak jest, to jeli ledztwo dotyczy
dziaalnoci wci aktywnego hakera, trzeba te sprawdzi, do wykonywania jakich czynnoci
osobnik ten ma uprawnienia (wanie dziki nim jest aktywny). Aby zdoby peen obraz incydentu,
trzeba rejestrowa i monitorowa nie tylko aktywno niedozwolon, ale i dozwolon. Jeli np.
haker zdobdzie prawidowe dane powiadczajce, wszelka jego aktywno bdzie wystpowa
w kategorii dozwolonych czynnoci legalnego uytkownika. Gdyby sprawdzano tylko nieudane
prby aktywnoci, nie udaoby si tego wykry.
Innym typowym celem wstpnych czynnoci zaradczych jest zwikszenie poziomu bezpieczestwa
aplikacji lub systemu bez alarmowania hakera. Przed wprowadzeniem zwizanych z tym zmian
naley skonsultowa planowane dziaania z zespoem ledczym, ktry powinien wyda opini, czy
haker moe si zorientowa, e zosta wykryty, czy nie. Oto kilka przykadw tego typu czynnoci.
Usunicie skrtw LANMAN z caego rodowiska Windows.
Zwikszenie wymogw dotyczcych bezpieczestwa hase.
Aktualizacja bezpieczestwa zewntrznych aplikacji, ktre s czstym celem ataku hakerw.
Implementacja uwierzytelniania wieloskadnikowego w krytycznym rodowisku, ktrego
haker jeszcze nie odkry lub do ktrego jeszcze si nie dosta.
Likwidacja luki w aplikacji, przez ktr haker dosta si do rodowiska.
W niektrych przypadkach istnieje moliwo usunicia zagroonego systemu ze rodowiska.
Gdy uytkownicy systemw udaj si na urlop, systemy te poddaje si przebudowie, uywa do
czego innego albo pozostawia wyczone. Hakerzy spodziewaj si pewnych zawirowa w duych
rodowiskach. Jeli jednak dwadziecia pi z trzydziestu zainfekowanych systemw nagle zniknie
na kilka dni, haker najprawdopodobniej domyli si, e zosta wykryty. W takim przypadku intruz
moe zmieni narzdzia lub techniki dziaania, przez co zesp ledczy bdzie musia jeszcze raz
okreli zasig incydentu.
Inn czynnoci z repertuaru dziaa wstpnych, ktre mog pomc zespoowi ledczemu,
jest wstrzymanie wszelkiej legalnej aktywnoci na kontach, ktrych dane powiadczajce zostay
skradzione, utworzenie ich wacicielom nowych kont oraz wdroenie monitoringu na kontach
544 INCYDENTY BEZPIECZESTWA
bdcych we wadaniu intruza. Dziki temu wiadomo, e wszelka aktywno na tych kontach,
majca miejsce po okrelonej dacie, jest zwizana ze szkodliw dziaalnoci hakera. To uatwia
ledczym odrnienie szkodliwej aktywnoci od legalnej. Przeprowadzenie takiej akcji moe by
jednak trudne w przypadku kont administracyjnych.
Uwaga Niektrzy hakerzy lubi parkowa domeny na takich adresach IP jak localhost (127.0.0.1),
adresie emisji (255.255.255.255), adresach multiemisji (224.0.0.0 239.255.255.255) lub
adresach IP klasy E (zarezerwowanych przez IANA) 240.0.0.0 254.255.255.255. Niektre
z tych sztuczek s atwo wykrywane przez systemy wykrywania i zapobiegania wamaniom,
wic nie traktuje si ich jak powanego zagroenia. Sprytniejsi hakerzy parkuj swoje domeny
na niewyrniajcych si adresach IP.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 545
Uwaga Planu ograniczania zasigu nie naley traktowa jak procesu likwidacji zagroenia, poniewa plan ten
z zasady okrela tymczasowe i drastyczne rozwizanie majce na celu powstrzymanie szkodliwej
aktywnoci, ktrej nie mona pozwoli na trwanie. Po wdroeniu tego planu nadal konieczne jest
przeprowadzenie penego ledztwa i procesu naprawczego, aby cakowicie pozby si hakera ze
rodowiska.
546 INCYDENTY BEZPIECZESTWA
Aby opracowa kompletny plan ograniczajcy incydent, zespoy musz wiedzie, jakie dane
lub inne zasoby naley chroni. wiczenie to jest podobne do szerokich dyskusji, jakie tocz si
w organizacjach nad wstpnymi propozycjami zabezpiecze korporacyjnych, cho jest bardziej
skoncentrowane. Podczas tworzenia wstpnego planu dziaania ledczy powinni wsppracowa
z informatykami i specjalistami od zabezpiecze, aby mie pewno, e pod uwag zostan wzite
wszystkie moliwe rozwizania. Nawet jeli czonkowie zespou ledczego uwaaj, e dokadnie
rozumiej sposb dziaania hakera, plany ograniczania jego dziaalnoci powinny by jak najbardziej
szczegowe, a wic powinny uwzgldnia wszystkie moliwe rodzaje aktywnoci, nie tylko znane.
Wiele rodowisk jest tak duych i skomplikowanych, e informatycy po prostu nie znaj wszystkich
ich elementw, a przebiegy haker z pewnoci powici troch czasu na przeprowadzenie dokadnego
rozpoznania, aby zapewni sobie wiele moliwoci spenienia swojej misji. Wielu intruzw
przewiduje, e w pewnym momencie zostan wykryci bardziej dowiadczeni staraj si
zapewni sobie dostp do rodowiska nawet wtedy, gdy ich obecno wyjdzie na jaw i specjalici
odetn im podstawow drog dostpu.
Dalsze strategie ograniczania zasigu incydentw i sposoby ich wdraania opiszemy na
przykadzie konkretnego przypadku. Pewna firma niedawno odkrya, e haker wama si do jej
rodowiska finansowego o cile kontrolowanym dostpie. Intruz utworzy nieautoryzowane
przelewy elektroniczne na due sumy na konta w zagranicznych bankach. Zrobi to po zamaniu
utworzonej na wewntrzne potrzeby przedsibiorstwa aplikacji do tworzenia, autoryzowania
i przetwarzania transakcji elektronicznych.
W tej sytuacji zesp naprawczy powinien natychmiast wdroy plan ograniczania zasigu
incydentu, aby uniemoliwi hakerowi tworzenie kolejnych nieautoryzowanych przeleww.
Jest wiele moliwoci w tym zakresie, ale zesp musia trzyma si nastpujcych wytycznych.
Firma nie moga sobie pozwoli na straty funkcjonalnoci.
Haker miaby zachowa dostp do rodowiska, wic plan akcji ograniczajcej musia
uwzgldnia inne metody, jakimi haker mgby inicjowa przelewy elektroniczne lub
dostawa si do aplikacji finansowych.
Wiele tego rodzaju wama zostaje upublicznionych, wic firma musi by w stanie poda
dokadn dat, kiedy intruz zosta odcity od rodowiska finansowego. Najczciej jest to data
penego wdroenia kompletnego planu ograniczajcego. Niektre organizacje podaj t informacj
do wiadomoci publicznej, aby zachci klientw do wznowienia wsppracy.
Na podstawie przedstawionych kwestii i scenariusza moemy omwi moliwy plan dziaania.
Na myl od razu przychodz nastpujce cztery czynnoci.
1. Odcicie hakerowi dostpu do serwera, na ktrym znajduje si aplikacja finansowa
jedn z moliwoci jest implementacja list ACL (ang. Access Control List) zezwalajcych
na dostp do serwera tylko jednemu wybranemu systemowi, ktry bdzie peni rol bramy
wymagajcej dwuskadnikowego uwierzytelnienia i przepuszczajcej tylko ruch z kont
lokalnych. Konta lokalne naley utworzy tylko dla bardzo wskiego grona pracownikw,
ktrzy absolutnie musz mie dostp do aplikacji finansowej.
2. Uniemoliwienie hakerowi uwierzytelnienia si w aplikacji finansowej polega to na
zmianie hase wszystkich kont uytkownikw majcych dostp do aplikacji finansowej.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 547
Uwaga Po wdroeniu planu ograniczania dziaalnoci hakera zesp RI powinien spodziewa si reakcji
ze strony intruza. Zesp naprawczy powinien dodatkowo pracowa nad ulepszonymi metodami
rejestracji danych w dziennikach, sposobami monitorowania oraz alarmowania, aby mona byo
skutecznie reagowa na kolejne przypadki szkodliwej aktywnoci wykrywane poza rodowiskiem
objtym dziaaniami wstpnymi.
548 INCYDENTY BEZPIECZESTWA
Jako e omawiamy prawdziwe przypadki i problemy, warto te powici troch miejsca temu,
co si dzieje, gdy co pjdzie nie po naszej myli. Powiedzmy, e pi dni po wdroeniu planu
ograniczania aktywnoci hakera zesp ledczy odkrywa, e intruz nadal ma dostp do aplikacji
finansowej. Oznacza to, e prawdopodobnie przeoczono jaki mechanizm, ktrym posugiwa si
haker. Zespoy naprawczy i ledczy powinny wsppracowa, aby wsplnymi siami dowiedzie si,
jak haker zachowa lub odzyska dostp do aplikacji finansowej. Dysponujc t wiedz, zesp
naprawczy bdzie mg natychmiast wdroy nowe rodki zapobiegawcze przeciw rozprzestrzenianiu
si incydentu. Jeli zdono ju poda do publicznej wiadomoci dat zabezpieczenia rodowiska,
konieczne moe by wydanie sprostowania.
Po wdroeniu wstpnego planu naprawy i ograniczeniu aktywnoci hakera kolejnym krokiem
jest opracowanie planu cakowitej likwidacji zagroenia. Jego opis znajduje si w nastpnym
podrozdziale.
Uwaga Przy opracowywaniu planu likwidacji zagroenia naley bra pod uwag tak ewentualno,
e haker moe prbowa odzyska dostp do rodowiska zarwno podczas przeprowadzania akcji,
jak i po jej zakoczeniu. Trzeba pamita, e haker moe wielokrotnie ponawia prby wamania
si do systemw przy uyciu wczeniej wykorzystanych metod oraz e moe szuka innych luk
w zabezpieczeniach. Poza tym intruz moe podj prb ukarania organizacji za odcicie mu
dostpu do rodowiska.
Poniej znajduje si lista przykadowych czynnoci, jakie mona wykona w procesie likwidacji
zagroenia. Poniewa jednak kady incydent jest inny, lista ta moe si zmienia.
Odczenie organizacji, ktra pada ofiar hakera, od internetu na czas procesu likwidacji
zagroenia.
Blokowanie gronych adresw IP.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 549
midzynarodowego banku). Dlatego najczciej pewne wyznaczone systemy w jednej lub wikszej
liczbie stref DMZ zachowuj dostp do sieci oglnowiatowej. Z tego powodu zesp naprawczy
musi przedsiwzi pewne dodatkowi kroki. Oto one.
Sprawdzenie, czy te krytyczne dla dziaalnoci biznesowej systemy nie maj dostpu
do systemw spoza ich strefy DMZ.
Zapewnienie cznoci sieciowej midzy miejscami oddalonymi geograficznie, aby rne
zespoy IT mogy wdraa dziaania zwizane z likwidacj zagroenia.
Sprawdzenie, ktre poczenia biznesowe mona wyczy, a ktre musz cay czas dziaa.
W przypadku tych drugich zesp naprawczy musi zadba o to, by nie przechodzi przez nie
ruch wychodzcy do internetu.
Poczenia VPN najprawdopodobniej musz by pozostawione, aby pracownicy IT
mogli pracowa zdalnie i implementowa punkty planu eradykacji. Jednak liczba kont
uytkownikw uprawnionych do czenia si z sieci VPN w czasie trwania procesu
eradykacji powinna by ograniczona do czonkw zespow ledczego i naprawczego oraz
pracownikw IT. Dodatkowym rodkiem bezpieczestwa jest wyczenie opcji tunelowania
dzielonego (ang. split tunelling).
Kady system, ktry ma zosta poczony (zdalnie lub na miejscu) ze rodowiskiem,
w jakim doszo do wamania, w celu przeprowadzania prac eradykacyjnych musi zosta
dokadnie sprawdzony.
Patrzc na t list, atwo si zorientowa, e pewne pozornie atwe czynnoci, takie jak
odczenie internetu, mog w istocie by bardzo trudne do wykonania w rodowisku operacyjnym.
Inn czasami trudn do przeprowadzenia czynnoci jest zmiana hase do wszystkich kont
uytkownikw. Trzeba to zrobi w rnych systemach operacyjnych, np. Windows, Linux i Mac,
nie mona zapomnie o kontach zakodowanych na stae w aplikacjach, kontach baz danych oraz
wszystkich kontach zwizanych ze sprztem sieciowym, ktre take mog by celem ataku hakera
(np. zapr sieciowych, systemw wykrywania i zapobiegania wamaniom, routerw, przecznikw
itd.). Chodzi o to, by uniemoliwi hakerowi korzystanie ze wszystkich skradzionych danych
powiadczajcych, a nie tylko tych, ktre udao si odkry zespoowi ledczemu. Ponadto dobrym
pomysem, jeli jest na to czas, jest przeprowadzenie inspekcji kont uytkownikw i powizanie ich
z fizycznymi kontami uytkownikw. Do kont uytkownikw zaliczaj si przynajmniej:
standardowe konta systemw Windows, Linux i Mac;
konta usugowe;
konta administratorw lokalnych i uytkownikw root;
konta zintegrowane z lokaln baz danych powiadczajcych (Microsoft Active Directory,
inne rozwizanie LDAP lub NIS);
konta aplikacji;
konta urzdze sieciowych;
konta baz danych.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 551
Trzy ostatnie typy kont aplikacji, urzdze sieciowych i baz danych w niektrych
przypadkach mona pomin. Ilo czasu powicona na zmienianie hase do wszystkich kont
powinna bezporednio wynika z moliwoci zespou naprawczego w zakresie implementacji
zalece oraz tego, na czym skupia swoj dziaalno haker. Wymuszenie zmiany hase na kontach
uytkownikw to zazwyczaj atwe zadanie. Najwiksze wtpliwoci moe budzi moliwo, e to
wanie haker bdzie t osob, ktra si zaloguje i dokona zmiany hasa. Jest kilka moliwoci
rozwizania tego trudnego problemu. Jedn z nich, cho przez nas niezalecan, jest po prostu
pogodzenie si z ryzykiem. Zalet tego rozwizania jest atwo wdroenia, poniewa wychodzimy
z zaoenia, e pozostae kroki planu eradykacji uniemoliwi hakerowi pozostanie w rodowisku.
Ewentualnie mona automatycznie wygenerowa nowe hasa do wszystkich kont i przekaza je
w bezpieczny sposb odpowiednim osobom. Jeszcze innym wyjciem jest nakazanie uytkownikom
wykonania telefonu do pomocy technicznej, aby otrzyma dostp do sieci VPN w celu zmiany hasa.
Zmiana hase kont usugowych zawsze jest atwa, cho operacj t trzeba dobrze zaplanowa,
aby przewidzie jej skutki. Zanim dokonasz zmiany hase do kont usugowych, sprawd, ktre
aplikacje z nich korzystaj, a nastpnie zidentyfikuj wszystkie systemy, w jakich te aplikacje s
zainstalowane. Jest to konieczne, poniewa hasa do kont usugowych musz zosta zmienione
w kadym systemie, w ktrym s wykorzystywane, oraz w orodku centralnym. Podczas procesu
planowania prawie na pewno niektre systemy lub aplikacje zostan przeoczone. Dlatego naley
mie te plan awaryjny na wypadek wystpienia problemw z systemami i aplikacjami. Czsto
problemy te zostaj wykryte dopiero po zakoczeniu procesu likwidacji zagroenia i przywrceniu
aplikacji do normalnego dziaania.
Kolejnym bardzo trudnym zadaniem jest zmiana hasa lokalnego administratora w kadym
systemie. W niektrych organizacjach po prostu akceptuje si ryzyko zwizane z tymi kontami
i albo pozostawia si ich hasa bez zmian, albo ustawia si takie samo haso dla wszystkich
lokalnych kont administracyjnych. Niektre organizacje tworz skrypty do ustawiania (i ledzenia)
niepowtarzalnych hase wszystkich lokalnych kont administratorw, a inne wdraaj skady
danych powiadczajcych, instaluj specjalne oprogramowanie do randomizowania hase
i nakazuj administratorom pobieranie hase dla lokalnych kont administracyjnych. Jeszcze
innym rozwizaniem jest wyczenie moliwoci logowania zdalnego i RDP z lokalnych kont
administracyjnych lub w ogle wyczenie tych kont. Wybr metody ochrony lokalnych kont
administracyjnych zaley od rodowiska i zasad przyjtych w organizacji.
Ostatni kwesti, ktr naley uwzgldni przy opracowywaniu planu likwidacji zagroenia,
jest sposb wykonania kopii zapasowej danych uytkownikw i wanych informacji z systemw,
ktre maj zosta poddane przebudowie. Wikszo uytkownikw przechowuje w swoich
systemach informacje, ktre s im absolutnie niezbdne do pracy. Take administratorzy
systemw maj na serwerach dane, ktre trzeba skopiowa i przywrci po zakoczeniu procesu
likwidacji zagroenia. We wszystkich przypadkach, gdy trzeba wykona kopi zapasow danych
z systemu, na ktrym doszo do wamania, i przywrci j w nowym systemie, czonek zespou
naprawczego powinien dokadnie zbada katalogi i pliki, aby upewni si, e przez przypadek
wraz z nimi nie jest przenoszony wirus. W swojej praktyce nieraz spotykalimy sytuacje, w ktrych
firma przeprowadzajca proces likwidacji zagroenia o may wos sama z powrotem nie zarazia si
wirusem przez to, e wprowadzia szkodliwy program do nowego systemu wraz z kopi zapasow
552 INCYDENTY BEZPIECZESTWA
RYSUNEK 17.2. Strefa uderzeniowa, czyli idealny moment do przeprowadzenia procesu likwidacji zagroenia
O momencie wdroenia procesu likwidacji zagroenia nie naley decydowa, gdy lider
incydentu uzna, e wanie osignito stref uderzeniow. Zamiast tego, liderzy incydentu,
ledztwa i procesu naprawczego powinni uzgodni wstpn dat jeszcze w czasie trwania ledztwa
i procesu naprawczego. Celem jest wybranie daty nalecej do strefy uderzeniowej, cho moment
wejcia do niej bardzo trudno przewidzie (dlatego nazywamy to bardziej sztuk ni nauk). Niektre
organizacje wyznaczaj odlege przysze daty, aby mie czas na odpowiednie przygotowanie si,
cho w ten sposb ryzykuj spnienie. Najskuteczniejszym sposobem na wybranie odpowiedniego
momentu do przeprowadzenia procesu eradykacji jest wyznaczenie terminu trudnego do dotrzymania,
a nastpnie zmuszenie rnych zespow do wytonej pracy.
W miar moliwoci staraj si nie przekroczy wyznaczonego terminu eradykacji. Z dowiadczenia
wiemy, e gdy ju raz si ten termin przeoy, pracownicy zaczynaj traci poczucie presji czasowej,
co moe mie niekorzystne skutki. Bylimy nawet wiadkami odkadania daty procesu likwidacji
zagroenia w nieskoczono, a bdziemy lepiej przygotowani, aby zyska czas na wdroenie
zalece. Wad tego sposobu mylenia jest to, e naprawd nigdy nie mona by w peni gotowym
do rozwizania problemu z incydentem bezpieczestwa komputerowego. Lepiej zrobi cokolwiek
ni nic. Poza tym, gdy minie termin przeprowadzenia procesu eradykacji, decydentom atwiej
pozby si trudniejszych punktw planu, aby rozpocz akcj. Z dowiadczenia wiemy, e najczciej
dotyczy to zmiany hase do kont uytkownikw. Jeli raz pozwolisz przeoy dat, istnieje due
prawdopodobiestwo, e zrobisz to ponownie.
Likwidacja zagroenia ma zazwyczaj charakter procesowy jego przebieg skada si z wdroenia
wczeniej zaplanowanych dziaa w okrelonej kolejnoci i sprawdzenia, czy wszystko si udao.
Im lepiej zaplanowano t akcj, tym atwiej bdzie j przeprowadzi. Poniej znajduje si lista
piciu przykadowych czynnoci, jakie mona by wykona w procesie eradykacji:
odczenie internetu;
blokowanie znanych szkodliwych adresw IP i odsyanie do czarnej dziury
szkodliwych domen;
usunicie z sieci systemw, w ktrych doszo do wamania, i ich przebudowa;
zmiana hase do wszystkich kont uytkownikw;
weryfikacja powodzenia wszystkich dziaa.
Punkty planu likwidacji zagroenia powinny by realizowane w okrelonej kolejnoci. Znaczy
to, e pierwsz czynnoci w tym procesie bdzie odczenie organizacji od internetu przez dzia
sieciowy. Nastpnie powinny zosta wczone blokady adresw IP na wszystkich routerach
granicznych oraz powinien zosta wczony blackholing DNS na wszystkich zewntrznych
serwerach DNS. Administratorzy sieci powinni dokadnie sprawdzi, czy internet jest cakowicie
odcity oraz czy blokada adresw IP i blackholing dziaaj prawidowo we wszystkich miejscach.
Dobrym sposobem na sprawdzenie tych rzeczy jest otwarcie kilku legalnych stron internetowych,
sprbowanie nawizania poczenia FTP (lub przy uyciu innego czsto wykorzystywanego
protokou) oraz podjcie prby poczenia si ze znanymi szkodliwymi adresami IP ze wszystkich
miejsc posiadajcych wasne kocwki internetowe. Testy te powinny zosta wykonane we wszystkich
najwaniejszych lokalizacjach geograficznych lub logicznych, aby sprawdzi, czy bd spowoduje
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 555
porak caej akcji. Wiedz te, e samo wysanie polecenia ping do legalnych i szkodliwych domen
lub adresw IP nie jest dobrym testem, poniewa pakiety ICMP mog by traktowane inaczej
ni pakiety TCP/UD, przez co wynik moe by faszywy. Jednym ze sposobw na sprawdzenie,
czy skutecznie odcito poczenia internetowe, czy listy ACL prawidowo blokuj dostp do
okrelonych adresw IP oraz czy blackholing DNS dziaa zgodnie z oczekiwaniami, jest uycie
narzdzi sieciowych netcat i nmap. Wikszo organizacji obok blokowania adresw IP
i blackholingu DNS dodatkowo wcza mechanizmy alarmujce o prbach dostpu do
szkodliwych adresw IP i domen. Jest to dobre posunicie, poniewa pozwala wykry wczeniej
przeoczone systemy zawierajce szkodliwe oprogramowanie (ktre jednak dziki wdroonym
blokadom powinno by unieszkodliwione).
Po zakoczeniu etapu sieciowego administratorzy systemw i aplikacji mog rozpocz akcj
naprawcz w systemach, ktre pady ofiar hakera. Najczciej polega ona na przebudowaniu tych
systemw lub skrupulatnym usuniciu szkodliwego oprogramowania zgodnie z instrukcjami
dostarczonymi przez zesp ledczy. Jeli systemy maj by przebudowywane, naley bardzo
ostronie przenosi dane do wieych instalacji, poniewa wraz z nimi przez przypadek mona
przenie wirusy. Wprawdzie wczeniej wdroone blokady sieciowe powinny uniemoliwi
wirusowi komunikacj z serwerem dowodzcym, ale zawsze istnieje ryzyko, e co przeoczono.
Jest to jeden z powodw, dla ktrych punkty planu likwidacji zagroenia powinno si wykonywa
w cile okrelonej kolejnoci. Poza tym, adnego z tych punktw nie mona pomin, aby mie
wszystkie atuty po swojej stronie.
Ostrzeenie Czasami klienci pytaj nas, czy oczyszczenie systemu, w ktrym doszo do wamania, jest
wystarczajcym rodkiem zaradczym. Jednak kasowanie znanych szkodliwych programw nie
jest zalecane, poniewa nie mona mie pewnoci, e udao si odkry wszystkie takie programy.
Najlepszym rozwizaniem jest odbudowanie systemw z bezpiecznego czystego nonika, cho
oczywicie czasami nie ma innego wyjcia, tylko trzeba wykona zwyke czyszczenie. Jest tak
np. w przypadku serwerw produkcyjnych, ktrych odczenie od sieci spowodowaoby spadek
przychodw firmy, lub gdy haker zainfekuje setki albo tysice systemw.
Uwaga Wydaje si to oczywiste, ale musimy wyranie podkreli, e danych dotyczcych poprzednich
ledztw nie naley przechowywa w systemach podczonych do domen i katalogw korporacyjnych.
Informacje na temat sposobu dziaania zespou RI mogyby zosta wykorzystane przez hakerw.
Jeli jednak z pewnych powodw musz one by przechowywane w miejscu z dostpem do internetu,
najlepiej umieci je na niezalenych serwerach obsugiwanych przez czonkw zespou RI.
PODSUMOWANIE
Proces naprawy jest trudny do przeprowadzenia, poniewa w jego trakcie moe mie miejsce
wiele zdarze pozostajcych cakowicie poza nasz kontrol. W firmie Mandiant jako podstawy
do sporzdzania dokadnego planu naprawczego wykorzystujemy pojcia cyklu ataku i tabeli
planowania procesu naprawczego. Pojcie cyklu ataku powiniene ju zna, poniewa
wprowadzilimy je w 1. rozdziale. Tabela planowania procesu naprawczego jest nowoci, wic
opisujemy j poniej. Obie te koncepcja zdefiniowalimy po to, by jak najlepiej opisywa rne fazy
ataku oraz uatwi sobie tworzenie planu naprawczego uwzgldniajcego wszystkie zaatakowane
obszary. Przypominamy, e cykl ataku w wikszoci przypadkw obejmuje siedem obszarw
funkcjonalnych. Oczywicie nie zawsze s one wszystkie zaangaowane, ale oglnie schemat ten
da si zaadaptowa do opisu kadego incydentu. Poniej znajduje si schemat przedstawiajcy
cykl ataku.
zesp naprawczy moe sporzdzi szczegowy plan rozwizania najbardziej palcych problemw
z bezpieczestwem organizacji. Ponadto tabela ta uatwia sporzdzanie lunej listy wszystkich zalece,
jakie przyjd czonkom zespou do gowy, ktr pniej mona dokadnie przejrze i zrewidowa.
Wykorzystamy nasz tabel planowania procesu naprawy w tej sytuacji. Poniej wypisujemy list
wszystkich faz cyklu ataku. Najpierw przedstawiamy krtkie streszczenie wiadomoci o zaistniaym
zdarzeniu w danej fazie, a nastpnie podajemy list pomysw w odniesieniu do kadej kategorii z tabeli.
Faza 1. Pocztkowe stadium wamania haker wykorzysta luk RFI.
Zapobieganie dokadne przejrzenie kodu, naprawa niebezpiecznych czci,
usunicie ladw pozwalajcych zidentyfikowa wersj serwera.
Wykrywanie wdroenie zapory ogniowej dla aplikacji sieciowych lub innego
systemu wykrywania wama w celu monitorowania szkodliwej aktywnoci zwizanej
z aplikacjami sieciowymi.
Reakcja zarzdzenie dokadnych inspekcji kodu.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 561
Proces likwidacji zagroenia oto lista czynnoci, ktre mona wykona w ramach
procesu eradykacji zagroenia.
1. Odczenie systemw ze strefy DMZ od internetu.
2. Zablokowanie pocze wychodzcych ze szkodliw domen (ftp.evilattacker.net)
przez przekierowywanie ich do czarnej dziury (ang. blackholing DNS).
3. Przebudowa serwera, na ktrym doszo do wamania:
a) usunicie szkodliwych plikw z systemu (punkt ten jest realizowany przez
przebudow serwera);
b) uruchomienie serwera Apache w rodowisku ograniczonym.
4. Wyczenie moliwoci zdalnego logowania si na konto uytkownika root.
5. Ustawienie silnych hase do wszystkich kont uytkownikw:
a) zmiana hase do kont uytkownikw root i Apache;
b) ustawienie innego hasa do kadego konta w systemie;
c) odebranie uytkownikowi Apache uprawnie uytkownika root;
d) uniemoliwienie uytkownikowi Apache tworzenia plikw w okrelonych
katalogach;
e) wdroenie zapory sieciowej lub innego systemu wykrywania wama ustawionego
na wykrywanie szkodliwej aktywnoci zwizanej z dziaaniem aplikacji sieciowych;
f) weryfikacja skutecznoci wszystkich dziaa podjtych w ramach likwidacji zagroenia.
Ta lista take zawiera pozycje, ktrych nie zgoszono w czasie burzy mzgw. Powodem
jest to, e niektre czynnoci zwizane z procesem likwidacji zagroenia s niezbdne
do skutecznej naprawy, ale nie wi si bezporednio z rozpoznan aktywnoci hakera.
Przykadem jest pierwsza z wymienionych czynnoci, czyli odczenie systemw ze strefy
DMZ od internetu. Jest to konieczne, aby uniemoliwi hakerowi przeszkadzanie
w przeprowadzaniu procesu eradykacji. Jednak czynno ta nie jest bezporednio zwizana
z ktrymkolwiek etapem cyklu ataku ani elementem tabeli planowania procesu naprawy.
Zwr te uwag na kolejno wykonywania poszczeglnych czynnoci. Jest ona taka,
by uniemoliwi hakerowi czenie si ze rodowiskiem i korzystanie ze zdobytego konta
uytkownika (na wypadek gdyby przeoczono jak drog dostpu do rodowiska) oraz
by umoliwi wprowadzenie wzmocnionych zabezpiecze (np. przez przebudow serwera
Apache i uruchomienie go w rodowisku ograniczonym).
Dziaania strategiczne poniej znajduje si lista czynnoci z kategorii zalece
strategicznych:
przeprowadzenie dokadnej inspekcji kodu;
implementacja list ACL w celu ograniczenia moliwoci systemw w zakresie komunikacji
midzy sob z wyjtkiem wybranych portw uywanych do prowadzenia dziaalnoci;
implementacja systemu wykrywania wama nastawionego na monitorowanie midzy
systemami ruchu niemajcego zwizku z prowadzon dziaalnoci.
ROZDZIA 17. WPROWADZENIE DO TECHNIK NAPRAWCZYCH 565
Inne zalecenia strategiczne, ktre warto rozway, mimo e nie zostay zaproponowane
podczas burzy mzgw, poniewa nie s bezporednio zwizane z omawianym incydentem, to:
implementacja systemu zarzdzania informacjami i zdarzeniami bezpieczestwa
informatycznego (SIEM) w celu centralnego przechowywania danych dziennikw
w strefie DMZ;
monitorowanie bezpieczestwa strefy DMZ za pomoc zewntrznej usugi;
wyczenie moliwoci zdalnego zarzdzania przez internet systemami nalecymi do strefy
DMZ wszystkim uytkownikom oprcz tych, ktrzy stosuj uwierzytelniania wieloskadnikowe.
W nastpnym rozdziale opisujemy konkretne scenariusze i przedstawiamy wicej szczegw
podczas analizy przypadkw przeprowadzania procesu naprawczego. Jednak wczeniej chcielibymy
powici kilka sw typowym problemom, ktre mog przyczyni si do poraki procesu.
I CO Z TEGO
Proces naprawczy moe by bardzo skomplikowany i trudny do przeprowadzenia. Koordynacja
prac wielu zespow, okrelanie skutkw wprowadzenia zmian, dopilnowanie kwestii prawnych,
radzenie sobie w nagych przypadkach, stres zwizany ze strachem, e si co przeoczyo, oraz
uczestniczenie w niezliczonych spotkaniach jest wielkim testem cierpliwoci i przyczyn
cakowitego wyczerpania pracownikw. Dlatego tak wane jest dokadne zaplanowanie procesu,
skupienie si na zadaniu, zwracanie uwagi na szczegy oraz skuteczne koordynowanie dziaa.
Proces ten skada si z omiu etapw, ktre wymienilimy na pocztku rozdziau. Oto one.
Budowa zespou naprawczego.
Okrelenie punktw czasowych.
Okrelenie i wdroenie podstawowych czynnoci naprawczych.
Okrelenie i wdroenie rodkw majcych ograniczy zasig incydentu.
Opracowanie planu likwidacji zagroenia.
Okrelenie czasu likwidacji zagroenia i wdraanie planu dziaania.
Opracowanie zalece strategicznych.
Opis zdobytego dowiadczenia.
PYTANIA
1. Wymie przynajmniej pi czynnikw o kluczowym znaczeniu dla powodzenia akcji naprawczej.
2. Wymie przynajmniej trzy z piciu cech, jakie powinien posiada silny lider procesu naprawczego.
3. Czy w skad zespou naprawczego powinny wchodzi osoby z zespou ledczego? Dlaczego?
4. Podaj przynajmniej pi przykadw osb, ktre powinny wchodzi w skad zespou
naprawczego (wcznie z pracownikami pomocniczymi).
5. Zdefiniuj wstpne dziaania zaradcze. Zdefiniuj dziaania ograniczajce zasig incydentu.
Wymie kilka rnic midzy tymi dwiema kategoriami dziaa.
6. Wymie kilka najczstszych powodw niepowodzenia procesw likwidacji zagroenia.
7. Wyjanij pojcie redniego czasu do naprawy. Czy jest to przydatne pojcie?
8. Podaj przykad sytuacji, w ktrej lepszym rozwizaniem byoby zastosowanie czonej
metody reakcji ni podejcia natychmiastowego lub opnionego.
9. Wybierz wie notatk ujawniajc opinii publicznej wamanie do jakiego systemu
i stwrz plan ograniczenia incydentu na podstawie posiadanych informacji. Jakie dziaania
wykonaby w ramach procesu likwidacji zagroenia, ktrych nie przeprowadziby w trakcie
wdraania planu ograniczania zagroenia? Wyjanij swoje wybory.
10. Stwrz kompletny plan naprawczy z uwzgldnieniem akcji wdraania wstpnych czynnoci
naprawczych i ograniczania zasigu incydentu, planu eradykacji zagroenia oraz zalece
strategicznych dla jednego lub dwch przypadkw opisanych w rozdziale 1.
ROZDZIA 18.
Studium przypadku
procesu naprawczego
568 INCYDENTY BEZPIECZESTWA
W
rozdziale tym bdziemy opiera si na podstawowych pojciach zwizanych z procesem
naprawczym, opisanych w rozdziale 17. Proces naprawy systemu po incydencie nie zawsze
jest prosty, a na jego przebieg maj wpyw zarwno czynniki techniczne, jak i nietechniczne.
Do najwaniejszych czynnikw wpywajcych na czas i powodzenie operacji zalicza si m.in. to, czy
dane aplikacje s wane dla dziaalnoci firmy, a take moliwoci dziaania, koszty oraz dostpno
pracownikw. Uwarunkowania te czasami zmuszaj zesp naprawczy do wdraania nieoptymalnych
rozwiza, poniewa tylko na to mona sobie pozwoli w danej sytuacji.
W rozdziale tym opisujemy krok po kroku proces tworzenia planu naprawczego dla pierwszego
przypadku opisanego w rozdziale 1. Wyjaniamy, dlaczego wykonuje si niektre czynnoci, oraz
przedstawiamy realia, w jakich musz pracowa zespoy naprawcze. Ponadto opisujemy te skutki
dziaa naprawczych. Z niektrymi opisanymi metodami dziaania moesz si nie zgadza nie
dziwi nas to. Mowa jest o prawdziwym zdarzeniu, ktre miao miejsce w zoonym rodowisku, wic
nie zawsze dao si zastosowa idealne rozwizania. Ponadto na kocu rozdziau zamiecilimy
te zadanie polegajce na opracowaniu wasnego planu naprawczego dla drugiego z opisanych
przypadkw, wic bdziesz mie okazj wykaza si swoimi umiejtnociami.
Uwaga Nie ma jednej prawidowej metody przeprowadzania akcji naprawczej. O sukcesie mona mwi, gdy:
haker zostanie wydalony ze rodowiska,
zostanie przywrcona normalna dziaalno firmy,
rodowisko zostanie zabezpieczone lepiej ni byo przed incydentem,
kolejne incydenty s szybko wykrywane i likwidowane.
Uwaga Dalej w tym rozdziale czsto bdziemy odnosi si do tego, co napisalimy w rozdziale 1., dlatego
dobrym pomysem moe by ponowne przeczytanie opisu pierwszego przypadku i podrozdziau
o cyklu ataku.
ROZDZIA 18. STUDIUM PRZYPADKU PROCESU NAPRAWCZEGO 569
Ostrzeenie Zawsze naley sprawdza wszelkie otrzymywane informacje techniczne. Organizacje nie zawsze
dobrze rozumiej, w jaki sposb ruch sieciowy przepywa przez ich rodowiska oraz jak dziaaj
listy ACL. Dlatego wanie zesp naprawczy nie poprzesta na rozmowach z pracownikami i przejrzeniu
dokumentacji, tylko samodzielnie przeanalizowa te listy.
ROZDZIA 18. STUDIUM PRZYPADKU PROCESU NAPRAWCZEGO 571
Poniej znajduje si zestawienie zdobytych przez zesp naprawczy informacji na temat drg
wejciowych i wyjciowych z ograniczonego rodowiska finansowego.
Dostp ze rodowiska korporacyjnego do ograniczonego rodowiska finansowego
by moliwy tylko przez serwer wstpny JMPSRV.
Dostp ze rodowiska ograniczonego do rodowiska korporacyjnego by zabroniony.
Do rodowiska ograniczonego nie byy podczone adne bezprzewodowe punkty dostpowe.
Wybrane systemy komunikoway si z centrum autoryzacyjnym przez poczenie wirtualne.
Dostp z centrum autoryzacyjnego do ograniczonego rodowiska finansowego
przez poczenie wirtualne by zabroniony.
W strefach DMZ znajdoway si rne aplikacje sieciowe majce poczenie
ze rodowiskiem ograniczonym poprzez bazy danych.
Ruch wychodzcy ze rodowiska ograniczonego do internetu by zablokowany.
Analiza list ACL ujawnia, e ruch sieciowy ze rodowiska ograniczonego do rodowiska
korporacyjnego nie by zablokowany. Kto kiedy doda tymczasow regu przepuszczajc cay ruch
i ju jej nie usun. Wprawdzie haker nie wykorzysta tego bdu, ale jest to dobry przykad dowodzcy,
e zawsze warto rcznie przejrze ustawienia konfiguracyjne. Ponadto zesp dowiedzia si, e
centrum autoryzacyjne ma nieograniczony dostp do ograniczonego rodowiska finansowego
przez poczenie wirtualne. Nie byo adnej zapory chronicej poczenia z centrum, cho
w dokumentacji pozycja taka figurowaa. Poniszy schemat przedstawia struktur
ograniczonego rodowiska finansowego i moliwe cieki przepywu danych.
572 INCYDENTY BEZPIECZESTWA
Uwaga Bardzo wane jest regularne przeprowadzanie testw penetracyjnych kluczowych systemw,
poniewa w ten sposb mona wykry usterki konfiguracyjne oraz zapomniane tymczasowe
reguy i inne ustawienia. Ponadto za pomoc testw penetracyjnych mona zweryfikowa
zgodno wdroenia projektu z planem. Dalej w tym rozdziale piszemy, e przeprowadzanie
testw penetracyjnych jest podstawowym zaleceniem strategicznym dla wielu organizacji.
plan ograniczania zagroenia. S po temu dwa powody. Po pierwsze, chodzi o zdobycie wikszej
iloci informacji, ktre bd potrzebne zarwno podczas aktualnego ledztwa, jak i w przyszoci.
Po drugie, zesp ledczy jeszcze nie okreli dokadnie zasigu zagroenia, wic zesp naprawczy
ma troch czasu, zanim skoncentruje si na procesie eradykacji.
Uwaga Cho incydenty bezpieczestwa komputerowego to bardzo przykre zdarzenia dla kadej
organizacji, jednak stanowi te okazj do zastosowania wielu ulepsze. Wprawdzie zesp
naprawczy powinien skupi si na trwajcym incydencie, ale kad woln chwil musi powica
na opracowywanie zalece zwikszajcych poziom bezpieczestwa organizacji w duszej
perspektywie. Dyrektorzy zazwyczaj patrz przychylniej na wszelkie propozycje dotyczce
zabezpiecze wanie w czasie trwania incydentw i bezporednio po ich zakoczeniu. Jednak,
mimo e incydent jest te okazj do zdobycia rodkw na rne inicjatywy, zesp naprawczy
nie powinien pozwala sobie na rozproszenie uwagi.
Nasz zesp naprawczy przedstawi osiem zalece majcych zwikszy poziom bezpieczestwa
rodowiska i ujawni wicej szczegw dotyczcych dziaalnoci hakera. Zostay one wymienione
w poniszej licie w kolejnoci od najwaniejszego.
Wczenie rejestracji legalnych pocze we wszystkich zaporach sieciowych.
Wczenie alarmw wykrycia znanego szkodliwego ruchu.
Czsto popenianym bdem w konfiguracji zapory sieciowej jest rejestrowanie tylko
niedozwolonego ruchu. Jednak w czasie incydentu monitorowanie ruchu przepuszczonego
przez zapor jest waniejsze od wychwytywania zablokowanych transferw. Dziki
zastosowaniu si do tej wskazwki przez organizacj zesp ledczy otrzyma moliwo
analizowania aktywnoci hakera w sieci.
Nakazanie zmiany kont wszystkim uytkownikom, ktrych konta zostay zdobyte
przez hakera.
Wdroenie tego zalecenia umoliwi ledczym identyfikacj potencjalnej aktywnoci hakera.
Jeli prawowici waciciele kont przestan korzysta z tych kont, to wszelka zwizana z nimi
aktywno bdzie prawdopodobnie oznaczaa dziaania hakera. Napisalimy prawdopodobnie,
poniewa uytkownicy czasami przez pomyk wracaj do swoich starych kont. Naley te
poinstruowa uytkownikw, aby do nowych kont nie uywali starych hase.
Wczenie automatycznego powiadamiania o przypadkach uycia kont zdobytych przez
hakera, wcznie z lokalnym kontem administratora i administratora domeny.
Zesp naprawczy skierowa dzienniki zabezpiecze systemu Windows z kontrolerw domen
usugi Active Directory i pliki /var/log.auth.log z kluczowych linuksowych systemw, na ktrych
doszo do wamania, do systemu zarzdzania informacjami i zdarzeniami bezpieczestwa
informatycznego SIEM. Jak to zwykle bywa w duych przedsibiorstwach, nie wszystkie
kluczowe systemy przekazyway swoje dzienniki do systemu SIEM. Zesp musia rozwiza
ten problem przed wdroeniem kompletnego rozwizania alarmujcego o aktywnoci hakera.
576 INCYDENTY BEZPIECZESTWA
Uwaga Zesp naprawczy powinien dokadnie zbada i rozpozna wszelkie potencjalne trudnoci techniczne
zwizane z wprowadzaniem zalecanych rozwiza, jak rwnie rozway ewentualne korzyci
z ich wdroenia. W przypadku biaej listy aplikacji naley zdawa sobie spraw, e wdroenie
odpowiedniego oprogramowania moe by trudne, e program ten musi dziaa w trybie blokowania
oraz e powinien sprawdza zarwno skrty MD5, jak i sygnatury plikw binarnych, aby zapewni
najwyszy poziom bezpieczestwa. Bez tej wiedzy organizacja moe wdroy bia list aplikacji
w sposb niezwikszajcy bezpieczestwa systemw.
Uwaga Cho powyej wyjanilimy, dlaczego zmiana hase do kont uytkownikw przed procesem
eradykacji nie jest dobrym pomysem, musimy przyzna, e s wyjtki od tej reguy. W poprzednim
rozdziale opisalimy incydent, w ktrym haker za pomoc skryptw co noc instalowa szkodliwe
oprogramowanie na czterdziestu kontrolerach domen. Organizacja, ktra pada ofiar tego hakera,
codziennie przebudowywaa dotknite systemy i zmieniaa hasa dotknitych uytkownikw.
Robiono to, by uniemoliwi intruzowi wyrzdzenie realnych szkd w rodowisku (np. wykradzenie
danych) podczas prowadzenia przygotowa do kompleksowej akcji majcej na celu wyrugowanie
hakera ze rodowiska. Postanowiono zmusi hakera do cigego atakowania, tak aby nie mg
na dobre zadekowa si w rodowisku. Realizacja tego planu wymagaa wiele pracy oraz cisej
komunikacji zespow ledczego i naprawczego z kierownictwem. Ponadto przyjta strategia bya
skuteczna tylko dlatego, e zesp ledczy posiada szczegowe informacje na temat aktywnoci
hakera, wic bez problemu identyfikowa wszystkie systemy i konta, ktre udawao mu si zama
w godzinach nocnych.
578 INCYDENTY BEZPIECZESTWA
Kolejno wykonywania punktw planu eradykacji jest wana, poniewa kolejne czynnoci s
tak zaplanowane, aby ewentualny problem na ktrymkolwiek etapie, np. nieprawidowe odcicie
poczenia z internetem, nie umoliwia hakerowi odzyskania dostpu do rodowiska. Ponadto
w planie eradykacji uwzgldnia si ryzyko, e haker moe zachowa drog dostpu do rodowiska,
opisuje si dziaania pozwalajce ograniczy cieki dostpowe oraz wdraa mechanizmy zwikszajce
szans na wykrycie aktywnoci hakera. Powiedzmy np., e podczas ledztwa przeoczono system
z zainstalowanymi tylnymi drzwiami, ktry podczas procesu eradykacji poczy si ze swoim
serwerem dowodzcym. Dziki zmianie hase do wszystkich kont uytkownikw na wczesnym
etapie procesu likwidacji zagroenia i monitorowaniu wszelkiej podejrzanej aktywnoci na tych
kontach mona szybko wykry wszelkie prby wykorzystania przez hakera zdobytych wczeniej
kont. Do tego oczywicie konieczne jest zdefiniowanie alarmw dla wszystkich kont uytkownikw,
o ktrych wiadomo, e kto si na nie wama, ale zespoy ledcze czsto si na to decyduj i tak
te byo w omawianym przypadku.
Podczas planowania procesu eradykacji zesp naprawczy musia okreli ramy czasowe caego
przedsiwzicia. Czas jest bardzo wany ze wzgldu na opisan w poprzednim rozdziale koncepcj
strefy uderzeniowej zbyt wczesne rozpoczcie czynnoci moe spowodowa, e co przeoczymy,
natomiast zbyt dugie czekanie naraa nas na to, e haker wyrzdzi wicej szkd. Zesp naprawczy
w porozumieniu z zespoem ledczym, liderem incydentu i kierownictwem firmy wybra na
rozpoczcie procesu eradykacji weekend mniej wicej trzy tygodnie po dacie podjcia decyzji,
a wic sze tygodni od chwili rozpoczcia procesu reakcji na incydent. W ten sposb zapewniono
zespoowi ledczemu wystarczajco duo czasu do wdroenia wstpnych czynnoci zaradczych
i zaplanowania ostatecznego procesu likwidacji zagroenia.
Tydzie przed planowanym rozpoczciem procesu eradykacji zesp zajmujcy si
przenoszeniem danych z przestarzaej aplikacji sieciowej zacz mie problemy. Powiadomili
zesp naprawczy, e nie bd w stanie dokoczy prac przed rozpoczciem gwnego
przedsiwzicia. Wszystkie inne dziaania szy zgodnie z planem. W zwizku z zaistnia sytuacj
zespoy ledczy i naprawczy w porozumieniu z kierownictwem postanowiy przeoy akcj
eradykacji o tydzie. Ten dodatkowy czas wystarczy na przeniesienie w odpowiednie miejsce
wszystkich danych ze starej aplikacji sieciowej, zatem zminimalizowano negatywny wpyw procesu
na dziaalno przedsibiorstwa. W poprzednim rozdziale napisalimy, e przesuwanie terminu
moe by kopotliwe i naley tego unika, ale w tym przypadku dodatkowy czas pozwoli
zminimalizowa negatywne skutki procesu dla dziaania firmy oraz umoliwi grupom
technicznym wykonanie wszystkich zada. Potem proces eradykacji przebieg pomylnie
i bez wikszych problemw.
Podczas akcji eradykacyjnej zesp naprawczy suy tylko pomoc i nadzorowa przebieg
procesu nikt z jego czonkw nie bra bezporedniego udziau w pracach. Jedynym konkretnym
zadaniem tego zespou byo tylko sprawdzenie, czy wszystkie zalecenia zostay prawidowo
zrealizowane. Lider zorganizowa poczenie konferencyjne midzy wszystkimi zainteresowanymi
stronami z caego kraju i codziennie przeprowadza po trzy pgodzinne zebrania, na ktrych
poszczeglne zespoy mogy informowa o postpie swoich prac. Zebrania odbyway si na tyle
czsto, e kierownictwo miao poczucie panowania nad sytuacj, i jednoczenie byy na tyle krtkie,
e czonkowie zespow mogli skupi si na swojej pracy, a nie na przygotowywaniu raportw.
582 INCYDENTY BEZPIECZESTWA
Ponadto do obowizkw zespou naprawczego naleao dopilnowanie, aby punkty planu byy
wykonywane w odpowiedniej kolejnoci oraz by nikt nie rozpocz kolejnego etapu, jeli nie
zakoczono poprzedniego. W ten sposb zapewniono powodzenie caej akcji.
Strategia na przyszo
Zesp naprawczy odbywa zebrania jeszcze przez dwa tygodnie po zakoczeniu procesu eradykacji.
W pierwszym tygodniu sporzdzi list wnioskw wycignitych ze zdarzenia. Wiele informacji
otrzyma od zespow technicznych, ktre zajmoway si wdraaniem poszczeglnych punktw planu.
Jeden z wnioskw dotyczy sposobu korzystania z kont usugowych. Zesp odkry, e pewnego
konta usugowego uywao dwanacie serwerw Microsoft IIS, cho powinno by ich tylko pi.
Pozostaych siedem odkryto, gdy usuga IIS nie chciaa si na nich uruchomi z powodu zmiany
hasa. Jeli znowu bdzie trzeba przeprowadzi proces eradykacji, zesp bdzie ju wiedzia,
e to konto jest uywane w wikszej liczbie systemw ni pocztkowo sdzono.
W drugim tygodniu po zakoczeniu procesu eradykacji zesp naprawczy przejrza swoje notatki
i wyniki ledztwa oraz przystpi do opracowywania planu strategicznego. Zalecenia strategiczne maj
charakter oglny i opisuj oglne cele, wic czonkowie zespou nie musieli planowa szczegowych
dziaa ani zastanawia si, czy proponowane rozwizania s wykonalne w krtkim czasie. Dlatego
zesp przedstawi dziesi punktw, ktrych realizacja powinna zwikszy bezpieczestwo firmy.
Wybrano tak liczb, a nie inn, poniewa realizacja tylu zalece pozwala na znaczne podniesienie
poziomu bezpieczestwa, a jednoczenie jest ona na tyle maa, e kierownictwo nie powinno mie
problemu z dokadnym rozwaeniem kadego punktu. Oto ta lista zalece.
Implementacja uwierzytelniania dwuskadnikowego dla wszystkich kont administracyjnych
w systemach Windows i Linux. Dotyczy to take dostpu do serwera wstpnego.
Uwierzytelnianie dwuskadnikowe dla kont administracyjnych ograniczy ryzyko wamania
na ktrekolwiek konto administratora. Zdaniem zespou naprawczego jest to bardzo wany
punkt, poniewa jego realizacja uniemoliwi hakerowi posugiwanie si w rodowisku
pojedynczymi nazwami uytkownika i hasami.
Zatrudnienie na peny wymiar czasu dwch dodatkowych specjalistw od zabezpiecze.
Cho do tej pory du wag przywizywano do bezpieczestwa komputerowego, to jednak
bardziej skupiano si na kupowaniu sprztu do ochrony rodowiska ni na zatrudnianiu
wysoko wykwalifikowanych pracownikw. Zdaniem zespou naprawczego wzmocnienie
dziau bezpieczestwa o dwch specjalistw umoliwi wiksze skupienie na dostosowywaniu
ustawie urzdze zabezpieczajcych oraz na alarmach.
Okrelenie kwestii bezpieczestwa jako istotnego czynnika cyklu tworzenia wszystkich
wewntrznie wytwarzanych aplikacji.
W firmie aplikacje sieciowe tworzono i serwisowano zgodnie z ustalonym cyklem rozwoju
oprogramowania, ale nie obejmowa on kwestii bezpieczestwa. Zesp naprawczy uzna,
e zalecenie to pozwoli zminimalizowa ewentualne ryzyko wamania do rodowiska przez
luk w ktrej z publicznie dostpnych aplikacji sieciowych.
ROZDZIA 18. STUDIUM PRZYPADKU PROCESU NAPRAWCZEGO 583
W INTERNECIE
www.nsa.gov/ia/mitigation_guidance/security_configuration_guides
I CO Z TEGO
W rozdziale tym szerzej przedstawilimy koncepcje opisane w poprzednim rozdziale. Chcielimy
pokaza, jak ich stosowanie wyglda w praktyce. Proces naprawczy nigdy nie jest tak prosty jak
osiem punktw przedstawionych w poprzednim rozdziale. Zawsze s jakie wtpliwoci i wymogi
do spenienia. O powodzeniu operacji mona mwi, gdy haker zostanie cakowicie pozbawiony
dostpu do rodowiska, luka w zabezpieczeniach wykorzystana przez hakera zostanie zlikwidowana
oraz zostan wdroone rodki podnoszce poziom bezpieczestwa organizacji. Dopiero spenienie
tych trzech warunkw daje prawo do ogoszenia sukcesu nawet jeli nie wdroylimy
doskonaych zalece.
ROZDZIA 18. STUDIUM PRZYPADKU PROCESU NAPRAWCZEGO 585
Opisalimy nie tylko sposb przeprowadzenia procesu naprawczego, ale dodatkowo wyjanilimy,
dlaczego zostay przedstawione takie, a nie inne zalecenia. W tego typu akcjach nic nie zastpi
specjalistycznej wiedzy technicznej. Mamy nadziej, e skorzystasz z informacji zawartych w tym
rozdziale podczas rozwizywania wasnych problemw. Musisz jednak pamita, e kady incydent
jest inny, wic metody skuteczne w jednym rodowisku mog okaza si bezwartociowe w innym.
Z rozdziau tego naley zapamita przede wszystkim trzy rzeczy. Po pierwsze, nie ma jedynego
poprawnego sposobu przeprowadzenia procesu naprawy kada sytuacja jest inna i wymaga
rozwizania innych problemw. Po drugie, plany naprawcze musz by elastyczne, a nie ustalone
raz na zawsze. Zesp naprawczy powinien reagowa na zmieniajc si sytuacj i w zwizku
z otrzymywaniem nowych informacji, poniewa w wielu przypadkach ledztwo toczy si w czasie
aktywnoci hakera, wic sprawa jest dynamiczna. Po trzecie, odpowiedzialno za powodzenie
akcji naprawczej spoczywa na barkach zespou naprawczego. To jego czonkowie odpowiadaj
za prawidowe wykonanie wszystkich czynnoci w odpowiednim czasie.
PYTANIA
1. Wymie przynajmniej trzy inne zalecenia strategiczne, ktrych realizacja byaby Twoim
zdaniem korzystna dla organizacji opisanej w pierwszym studium przypadku.
2. Czy Twoim zdaniem wdroenie natychmiastowego planu ograniczajcego zasig incydentu
byo dobrym posuniciem w tym przypadku? Dlaczego?
3. Wymie trzy z czterech gwnych celw procesu eradykacji.
4. Czy czonkowie zespou naprawczego z dziaw o profilu nietechnicznym powinni mie
udzia w formuowaniu zalece technicznych?
5. Opracuj plan naprawczy dla przypadku drugiego. W planie tym przedstaw tylko oglne
zalecenia, bez szczegowych informacji o sposobie ich wdroenia. Uzasadnij kad
ze swoich propozycji.
586 INCYDENTY BEZPIECZESTWA
Skorowidz
A
ACH, automatyczny system rozrachunkowy, 149 danych, 269
ACL, access control list, 28 wybr metod, 282
adres pocztkowych, 141, 142
IP, 235 sieciowych, 215
MAC, 235 syslog, 424
ADS, Alternate Data Streams, 298 zebranych na ywo, 61
AFP, Apple File Protocol, 427 dowodw z list szybkiego dostpu, 367
AIM, America Online Instant Messenger, 478 dynamiczna, 506
artefakty, 479 rczna, 507
format dziennikw, 479 zautomatyzowana, 507
narzdzia, 481 dziennikw, 82
preferencje, 480 porady, 320
przechowywanie dziennikw, 478 zdarze, 321
akcja katalogu \Recycler, 370
mieszana, 541 kopii woluminu, 304
na ywo, 29 Kosza, 372
natychmiastowa, 540 list ACL, 571
opniona, 541 listy szybkiego dostpu, 368
algorytm acuchw, 498
MD5, 492 na serwerze, 209
SHA2, 492 na ywo, 60, 156, 163, 175
BASE64, 502 osi czasu, 246
alternatywne strumienie danych, ADS, 293, 298 pamici, 81, 376
analiza plikw
aktywnoci hakera, 315 .job, 326
artefaktw z Kosza, 369 OST, 467
czasowa, 392 PE, 504
czstotliwoci, 246 pobieranych z wyprzedzeniem, 308, 310
588 INCYDENTY BEZPIECZESTWA
analiza
B
pliku
\$Recycle.Bin, 371 backdoor, 31, 316, 484
SchedLgU.txt, 327 Poison Ivy, 347, 379
stronicowania, 382 badanie aplikacji, 437, 441
podejrzanych cieek wykonawczych, 246 Baker, 131
rejestru, 336, 363 baza danych, 263
ruchu sieciowego, 209 ESE, 449, 450
statyczna, 491 FileAdvisor, 493
systemu plikw, 291 MSSQL, 264
szkodliwego oprogramowania, 61, 486, 491, 506 MySQL, 265
ledcza, 61 Oracle, 267
tabeli MFT, 293, 300 sqlindex, 416
tropw wewntrznych, 133 SQLite, 480
tropw zewntrznych, 134 SQLite3, 474
typowych atakw na pami, 382 Beale, 131
usug, 344 bezpieczestwo, 485
zada zaplanowanych, 328 komputerowe, 68
zdarze, 312 BHO, Browser Helper Objects, 349
zdarze usug, 319 blackholing DNS, 555
znacznikw czasowych, 294 bloki rozruchowe, 401
anomalie sieciowe, 281 blokowanie
aplikacja, 276 adresw IP, 555
Apple Mail zapisu, 193, 194
format danych, 470 bdy procesu naprawczego, 565
narzdzia, 470 BOM, bill of materials, 432
przechowywanie danych, 470 botnet, 379
artefakt, 282, 392396, 433435 bufor danych o zgodnoci aplikacji, 339
Facebooka, 478
poczty gosowej, 474
C
w pamici, 381
wykonywanych plikw, 394 CAINE, 81
ASL, Apple System Log, 422 Caswell, 131
atak cele
metod phishingu, 239 reakcji na incydent, 47
na klawisze trwae, 389 ledztwa, 273
typu brute force, 313 certyfikaty S/MIME, 74
typu spear phishing, 37, 40, 463 charakterystyka incydentw, 101
typu SQL injection, 31, 141 chat na Facebooku, 476
ataki na pami, 382 CLF, Common Log Format, 260
atrybuty INDX, 300, 394 COM, Component Object Model, 349
automatyczne cookies, 446, 452, 456, 461
adowanie plikw, 341 cyberprzestpcy, 28
montowanie urzdze, 197 cyberszpiegostwo, 30
uruchamianie, 341 cykl
automatyzacja, 164 faz ataku, 40
autostart, 341 generowania wskanika, 120
SKOROWIDZ 589
inspekcja
K
aktywnoci, 420
bazy danych, 419 Kali Linux, 81
logowa, 264 katalog
systemu, 419 Applications, 410413
aplikacji, 443 audit, 419, 425
instalatory aplikacji, 346, 432 AutomaticDestinations, 367
integralno obrazu, 191 CustomDestinations, 367
Internet Explorer Developer, 410, 413
cookies, 452 db, 413
ESE, 450 dslocal, 416
format danych, 447 Eventlog, 312
historia, 451 Library, 410, 413
Index.dat, 449 Network, 410
lokalizacje, 447 opt, 413
narzdzia, 453 Prefetch, 307
pami podrczna, 452 receipts, 432
zakadki, 453 Recycler, 369
internetowe usugi pocztowe, 464 sandbox, 421
inwentaryzacja infrastruktury informatycznej, 86 security, 419
inynieria System, 410, 413
aplikacji, 569 Users, 415
sieciowa, 569 katalogi
systemw, 569 danych aplikacji, 439
IOC, Indicators of Compromise, 56 instalacyjne aplikacji, 439
IOC Editor, 57 w domenie uytkownika, 415
IR, incident response, 48 keylogger, 512
istotne informacje klawisze trwae, 389
lista klienty
aktualnie wykonywanych i zaplanowanych poczty elektronicznej, 463
dziaa, 63 wiadomoci byskawicznych, 472
dotknitych systemw, 63 klucz
dziaa hakera, 63 Active Setup, 346, 347
hostowych wskanikw zagroenia, 63 CIDSizeMRU, 360
interesujcych plikw, 63 ComDlg32, 359
kont, 63 deszyfrowania SSL, 225
sieciowych wskanikw zagroenia, 63 gwny sesji, 225
skradzionych danych, 63 Installed Components, 346
uytych plikw, 63 KnownDLLs, 390
zgromadzonych dowodw, 63 LastVisitedPidlMRU, 360
izolowane sieci wirtualne, 485 MonitorLog, 245
MUICache, 358, 359
OpenSavePidlMRU, 360, 361
J RecentDocs, 361
jako monitora sieciowego, 215 Run, 345
jdro typu BSD, 180 RunOnce, 345
RunMRU, 360
SKOROWIDZ 593
logowanie metody
wsadowe, 314 akcji naprawczej, 540
z podstawowym uwierzytelnianiem, 314 analizy, 271, 282
za pomoc domenowych danych duplikacji, 193
powiadczajcych, 315 MFT, Master File Table, 291
lokalizacje Microsoft Outlook, 465
dziennikw, 259 format danych, 467
plikw konfiguracyjnych, 259 narzdzia, 467
plikw wykonywalnych, 440 przechowywanie danych, 466
treci, 260 Microsoft Outlook for Mac, 470
LSA, Local Security Authority, 348 format danych, 471
narzdzia, 471
przechowywanie danych, 471
miejsca przechowywania danych, 274
adowanie usug, 344 migawka, 485
acuchy, 498 misja zespou RI, 72
w pamici, 381 modelowanie statystyczne, 208
modyfikowanie
kolejnoci wczytywania bibliotek, 389
M systemowych plikw binarnych, 388
Mac OS X monitor
podstawowe dane systemu, 410 procesw, 509
MACE, 295 dodawanie filtru, 509
macierz RAID, 188 sieciowy, 79, 204
magazyn ocena jakoci, 215
bazy danych, 263 wybr sprztu, 211
zarzdzany, 407 monitorowanie
malware, 484 systemu wykonawczego, 508
manual programu Snort, 206 zdarze, 205
mapowanie, 332 urzdze, 197
maszyna wirtualna, 485 Mozilla Firefox
materia dowodowy, 82 cookies, 461
mechanizmy utrwalania, 386 formaty danych, 458
meneder funkcja automatycznego uzupeniania, 461
kontroli usug, 320, 344 historia, 460
pakietw dpkg, 441 lokalizacje, 458
pakietw RPM, 441 narzdzia, 462
pamici, 307 pami podrczna, 460, 462
menu Uruchom, 360 pobierane pliki, 460
metadane, 126, 284, 292 preferencje, 461
dostpne w Koszu, 369 zakadki, 461
NTFS, 292 MPLS, Multiprotocol Label Switching, 214
plikw LNK, 366 MRU, most recently used, 359
pliku, 311 MSDN, Microsoft Developer Network, 495, 499
systemu plikw, 432 muteks, 379
SKOROWIDZ 595
DNSCAP, 243
N
Downloads Viewer, 462
nagwek Emailchemy, 463
pliku, 494 EnCase Forensic, 199
woluminu HFS+, 404 Event Log Explorer, 321
najlepsze praktyki gromadzenia danych, 161 fgdump, 87
naprawa, 529, 559 FileAdvisor, 493
narzdzia FileInsight, 494
analityczne, 386 Foremost, 285
dla Firefoksa, 462 GREP, 493
do analizowania dziennikw, 82 hashutils, 169
do analizy dziennikw zdarze, 321 History Viewer, 462
do analizy Kosza, 372 iBored, 404
do analizy na ywo, 158, 160, 175 INDXParse, 302
do analizy pamici, 345, 379, 384, 385 Internet Evidence Finder, 446, 465
do analizy plikw .pf, 311 Internet Examiner Toolkit, 465
do analizy plikw PE, 504 JumpLister, 368
do analizy rejestru, 363 JumpListParser, 368
do analizy sieciowej, 229 LfLe, 321
do analizy systemw, 168 libpff, 467
do analizy tabeli MFT, 300 Log Parser, 321
do obsugi kopii zapasowych, 275 LogFileParser, 303
do przechwytywania pakietw, 212 Mac Memory Reader, 182
do tworzenia obrazw, 195 Malcode Analysis Pack, 498
do tworzenia obrazw dyskw, 81 Mandiant Memoryze, 171, 174
do wykonywania zrzutw pamici, 385 Mantech MDD, 171
Mimikatz, 381 md5, 493
ledcze, 90 md5deep, 493
YARA, 57 Memoryze for the Mac, 181
narzdzie mft2csv, 300
010 Editor, 494 Microsoft autoruns, 169
AccessData FTK Imager, 198 Microsoft logparser, 169
AccessData FTK Imager Lite, 171, 172 Microsoft procdump, 174
Aid4Mail, 463 Microsoft pslist, 169
analyzeMFT, 300 Microsoft userdump, 174
Cache Viewer, 462 Moonsols Windows Memory Toolkit, 171
CFF Explorer, 503 NetAnalysis, 465
Cookie Viewer, 462 NirSoft DriverView, 169
cron, 429 NirSoft OpenedFilesView, 169
DC3dd, 195 Nirsoft Registry Analysis Tools, 365
DCFLdd, 195 NSRL, 493
DCode, 481 Ntsecurity.nupmdump, 174
dd, 195 parser-usnjrnl, 303
Dependency Walker, 503 PC-Tools.net md5sums, 169
DiamondCS openports, 169 persistence, 353
DigestIT2004, 493 PeView, 503
Digital Detective NetAnalysis, 446 PEiD, 501
596 INCYDENTY BEZPIECZESTWA
narzdzie
O
plaso, 300
Plaso, 321 obiekt wzajemnego wykluczania, 379
Podgld zdarze, 321 obiekty
Podczanie pulpitu zdalnego, 362 COM, 349
PsExec, 319 pomocnicze przegldarki, BHO, 349
PSLogList, 321 obraz dysku, 60, 81, 187, 277
Python-Evtx, 321 obraz logiczny, 187, 190
Redline, 379 obraz partycji, 187, 190
RedWolf Forensics Prefetch-Parser, 311 obrazy ledcze, 192
sbag, 365 obszar
services, 353 DCO, 188, 190
shellbags.py, 365 HPA, 188, 190
ShimCacheParser, 364 ochrona danych, 76
Simple File Parser, 367 osobowych, 71
Skype Analyzer, 476 odnoniki, 366
Skype Log View, 476 ograniczanie
SkypeAlyzer, 476 komunikacji, 95
SkypeParser, 476 zasigu incydentu, 545, 570
SysInternals strings, 498 okno waciwoci pliku, 294
ThreatExpert, 493 okrelanie zasigu incydentu, 139, 148
TZWorks Journal Parser, 303 operacja RegSetValue, 444
TZWorks lp, 367 operacje biznesowe, 569
TZWorks Prefetch Parser, 311 oprogramowanie
QExtract, 252 dla zespou RI, 79
rcracki_mt, 87 dodatkowe, 440
setmace, 295 ledcze, 82, 442
SLM Browser, 245 wirtualizacyjne, 485
Snort, 211 oprzyrzdowanie, 87, 97
Sqlmap, 226 organizacja, 68
Sysinternals PsSuite, 35 treci raportu, 521
tcpdump, 207, 211 ostatnio uywane elementy, MRU, 359
UserAssist Didiera Stevensa, 365 oszustwa
VirusTotal, 493 typu scareware, 463
Volatility Framework, 345, 379 w ACH, 149, 151
winacq.exe, 199
winen.exe, 199
P
WinMD5, 493
WinPrefetchView, 311 paczki aplikacji, Application Bundles, 411
Network Security Toolkit, 79 pakiet
noniki danych FPNWCLNT, 348
wewntrzne, 76 KDCSVC, 348
zewntrzne, 77 MSI Redline, 166
NTFS, NT File System, 291 scecli, 348
NTP, Network Time Protocol, 234 Sleuth Kit, 300
SLM, 246
SysInternals, 378
SKOROWIDZ 597
tworzenie usugi
dokumentacji, 82 dla przedsibiorstw, 233
duplikatw, 186 infrastruktury sieciowej, 234
filtru, 509 pomocnicze, 420
obrazu sieciowe, 98, 276
dysku, 81, 188 systemu plikw, 407
logicznego, 190 systemu Windows, 319, 341
partycji, 190 terminalowe, 362
systemu, 433 ustalanie oczekiwa, 114
systemu monitorowania sieci, 211 ustanowienie punktu wejcia, 41
wskanika, 121 ustawienia
wskanikw zagroenia, IOC, 56, 82 konfiguracyjne launchd, 430
zada, 322, 324 oprzyrzdowania, 443
zespou naprawczego, 536 zgodnoci, 339
tylne drzwi, backdoor, 31, 39 usunite pliki, 293
typ weryfikacji, 132 uwierzytelnianie
dwuskadnikowe, 93
Kerberos, 348
U szyfrowane, 348
UAC, User Access Control, 163 uzyskiwanie informacji, 135
uchwyty, 378 uycie Kosza, 371
ukad
dysku, 188
systemu plikw, 410
V
upowanienie, 50 VAD, Virtual Address Descriptor, 380
uprawnienia do wyszukiwania informacji, 49 VSC, Volume Shadow Copy, 303
uruchamianie
aplikacji, 443
systemu, 435
W
szkodliwego programu, 508 warto
urzdzenia AppInt_DLLs, 348
komputerowe, 84 EnablePrefetcher, 308
zarzdzanie, 85 HostingAppList, 308
usuga ImagePath, 343
ASL, 423 rejestru AppInt_DLLs, 347
DHCP, 234, 235 ServiceDll, 343
DHCP ISC, 237 Shell, 351
GINA, 350 StubPath, 347
Harmonogram zada, 325 Userinit, 351
katalogowa, 416 wdraanie
LanmanWorkstation, 343 czujnika sieciowego, 214
launchd, 429 wskanikw zagroenia, 57
LSA, 348 weryfikacja, 131
PsExec, 319 wewntrzna skadnica wiedzy, 83
Spotlight, 407 wze sharepoints, 417
usbmuxd, 427 Windows Server 2003, 236
wudfsvc, 344 Windows Server 2008, 236
SKOROWIDZ 603