Ghidra & WannaCry
Aegajalt võib olla turvaspetsialistil või tarkvara arendajal vaja uurida kompileeritud koodi lähemalt. Selleks on erinevaid tasuta ja tasulisi tööriistu, kuid 2019 NSA poolt avalikusatud Ghidra
tarkvara reverse engineering võimaldav platvorm kogub kiirelt populaarsust ja kasutajaid. Tarkvara pöördanalüüs (uurimine mida programm täpselt teeb) on üks keerulisemaid tegevusi turvalisuse valdkonnas. Tegevus eeldab kõrgeid alusteadmisi riistvarast, operatsioonisüsteemidest, programmeerimisest ja palju kogemust. Samas mitmed teist kurtsid referaati tehes, et pole materjale piisavalt saada või küsisid kuidas turvaaukude ja pahalaste analüüs päriselus käib. Järgnevalt vaatamegi kuulsa WannaCry
viiruse näitel kuidas tarkvara analüüsiprotsess käib.
Võrreldes varasemate praktikumidega on käesolev praktikum üles ehitatud loogikale, et vaatate ~1,5h mahus Ghidra
tutvustavaid videosid ning vastake seejärel kontrollküsimustele. Küsimustega on hea tutvuda juba enne videode vaatamist, sest siis oskate täpsemalt pöörata tähelepanu vastavatele kohtadele videos. Küsimustele võite vastata ka muid Interneti allikaid kasutades, kuid ennekõike soovime küsimustega kontrollida, et olete videod läbi vaadanud. Kui kasutate vastamiseks mõnda muud usaldusväärset ja aktuaalset allikat võrreldes meie antud videodega siis palun kindlasti märkida vastuse juurde viide allikale.
- Vaata tutvustavat
Getting Started
video https://ghidra-sre.org/ lehel. (8 min) - Vaata
Ghidra
sissejuhatavat näidet ja kasutajaliidese ülevaadet (12 min) - Vaata WannaCry krüptolunavara dekrüpteerimise näiteid (
part 1
kunipart 3
)(kokku 55 min) WannaCry
kohta on analüüse teinud ka mitmed teised asutused. Näiteks huvitav lugemine, mis WannaCry tegevust üldisemalt kirjeldab on leitav siin https://www.secureworks.com/research/wcry-ransomware-analysis .
Kontrollküsimused:
- Mis on
Ghidra
peamine funktsionaalsus? - Kuidas
Ghidra
paigaldada Linux virtuaalmasinasse? Ghidra
'ga koodi analüüsides kas ta suudab ise leida analüüsitavast programmist sobivad muutujate ja meetodite nimed?- Millised 2 analüüsiakent on peamised kus toimub koodi analüüs
Ghidra CodeBrowser
tööriistaga? - Milleks on vaja kasutada
Edit Function Signature
tegevust? - Mis tüüpi kommentaarid on nähtavad
Ghidra Decompile
koodi vaates? - Miks
WannaCry
võtab ühendust aadressigahttp://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com/
? - Mis nimega teenuse (
Service
) loobWannaCry
iseenda käima panemiseks taaskäivituse järel? - Kuidas
WannaCry
edastab krüpteerimiseks kasutatud privaatse võtme pahalastele? - Kuidas
WannaCry
võimaldab dekrüpteerida 10 näidisfaili kuid mitte avalikustada ülejäänute dekrüpteerimiseks vajalikku võtit?
Tagasiside
Praktikumi lõpus palume anda tagasisidet, sest see võimaldab meil antud praktikumi ja ka järgmisi praktikume paremaks muuta. Tagasiside on anonüümne ja tagasiside vormi leiate järgneva lingi abil: tagasiside ankeet.
Praktikumi ülesanded
Praktikumi ülesannete lahendamine annab kaks punkti. Praktikumi ülesanne võiks valmis saada nädala jooksul, kuid seoses eriolukorraga lubame esitada ka hilinenud esitusi kuni mõistlik aega enne esimese eksami toimumist.
- Praktikumi arvestuseks esita lühikesed ja konkreetse vastused kõigile praktikumijuhendis olevatele küsimustele.
Koduülesanne:
Praktikum 14 ei oma eraldiseisvat kodust ülesannet, sest Praktikum 15 kodune ülesanne on mahukam võrreldes mõne teise koduse tööga. Seega anname praktikum 15 koduse ülesande Windows forensics
eest 2 punkti
tavapärase 1p asemel.