Institute of Computer Science
  1. Courses
  2. 2020/21 spring
  3. Computer Security (LTAT.06.002)
ET
Log in

Computer Security 2020/21 spring

  • Pealeht
  • Loengud
  • Praktikumid
  • Referaat
  • Kirjandus
  • Turvauudised
  • Lingid

Praktikum 14 - Windows forensics & Ghidra

Windows 10 ja paljud teised operatsioonisüsteemid salvestavad regulaarselt kasutaja tegevusi. Aegajalt on meil vaja teada saada, kes mida süsteemis tegi ehk leida üles info mida arvuti hiljuti teinud on. inglise keeles kutsutakse sellist tegevus nimega forensics, mis eesti keeles tähendaks ekspertiisi või jälgede ajamist. Valdav enamik arvuti kasutajatest kasutavad igapäevaselt Windows operatsioonisüsteemi ja seega on küsimused ning vihjed nende lahendamiseks katsetatud operatsioonisüsteemiga Windows 10 ja/või Windows XP operatsioonisüsteemidega. Järgmistes praktikumides tutvume jälgede ajamise harjutustega ka Linux operatsioonisüsteemis ja uurime nutiseadme privaatsusküsimusi. Käesolevas praktikumis soovitame kasutada lahendamisel Microsofti ametlikku Windows 10 testimiseks mõeldud virtuaalmasinat https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/ või juba eelmistest praktikumidest tuttavat minimalistlikku Windows XP virtuaalmasinat. Olenevalt millist operatsioonisüsteemi te otsustate kasutate on lahendused ja tarkvarad millega lahendusi (infot) leida veidi erinevad. Tutvuge ka kindlasti pärast ülesande püstitust olevate vihjete ja abimaterjaliga.

Teie ülesandeks on uurida vabalt valitud Windows virtuaalmasinat ja vastata järgmistele küsimustele: (iga vastus annab 0.2p ja nimekirjast peaksite valima nii palju, et kokku saaksite vähemalt 2p jagu vastuseid. Võite lahendada ka rohkem ülesandeid, kuid kokku võib selle ülesande eest teenida maksimaalse mitte rohkem kui kaks punkti):

  1. Millal ja millised kasutajad teie arvutit kasutasid?
  2. Kuvada arvutis viimasena käivitatud/avatud faile. (Operatsioonisüsteemi tasemel Recent, Quick access)
  3. Enamik kasutaja programme omab eraldi viimati avatud failide nimekirja (Programmi tasemel recent, history). Vali ise programm ja kuva kasutaja programmi (Word, irfanview, jne) poolt salvestatud viimaste avatud/redigeeritud failide nimekirja.
  4. Millal viimati mingit programmi arvutis käivitati? (Executed programs list või Prefetch )
  5. Milline kaust teie arvutis (v.a. C:\ peakaust) võtab kõige rohkem ruumi kaasa arvatud selle alamkaustad? (WinDirStat programm aitab)
  6. Näha arvutisse salvestatud Wi-Fi paroole (Soovitatav teha isiklikus arvutis, Virtuaalmasinas ei pruugi teil olla WiFi paroole).
  7. Millal ja millist Wi-Fi võrku teie arvuti viimati kasutas?
  8. Näha SHIFT+DEL klahvikombinatsiooniga kustutatud faile. (permanentselt kustutatud mitte prügikastis olevaid faile)
  9. Millal ja milline USB andmekandja arvuti taha ühendati?
  10. Millal viimati süsteemi kellaaega muudeti?
  11. Millal ja (millise faili) jaoks viimati arvutiga ID-kaarti kasutati? (Vihje: ID kaardi jaoks on eraldi programmid Prefetch nimekirjas)
  12. Millal kasutaja viimati veebilehitseja käivitas?
  13. Kuvada veebilehitseja salvestatud piltide ajalugu. (cache)
  14. Kuvada veebilehitsejasse salvestatud kasutajatunnuseid ja paroole.
  15. Näha kasutaja viimaseid internetiotsinguid populaarseimates otsingumootorites ja veebilehitsejates.
  16. Näha milliseid veebilehti/veebiaadresse kasutaja viimase 24h jooksul incognito/private/Inprivate režiimis külastas? (vihje: DNS cache)
  17. Kuvada litsentseeritud tarkvarade (näiteks MS Office, Windows ise) litsentsi võtmeid (product key).
  18. Vabalt valitud muu huvitav info Operatsioonisüsteemi kasutamise ajaloo kohta ehk peab sobima valdkonda jälgede ajamine (forensics). Kes, mida, millal ja kuidas tegi uuritava arvutiga :) - 0.4p

Lahenduseks esitage iga küsimuse kohta pilt, millel on selgelt näha millise tarkvara (või käsuga) antud info saadi. Vastuse rida või kirje peab oleva esile tõstetud muust pildil olevast infost.

Vihjed & abi lahenduste leidmisel:

  • Enamik vastused on võimalik leida Windows masinas NirSoft tarkvarapaketi erinevate programmidega: http://www.nirsoft.net/utils/index.html. Teie ülesanne on leida nimistust sobiv programm, see käivitada ja tulemus pildina salvestada. NB! uusim Windows viirusetõrjetarkvara märgib osa nirsoft programme pahavaraks, seega nirsoft kasutamine isiklikus arvutis ei ole soovitatud (kasutage virtuaalmasinat). Virtuaalmasinaks võib kasutada Andmeturve Windows XP virtuaalmasinat või alla laadida Microsoft ametlik Windows 10 testmasin https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/ lehelt.
  • Et virtuaalamasina pildid oleksid huvitavamad tehke vajadusel käsitsi tegevusi läbi, et ajaloos oleks vastav info mille kirjeid otsite.
  • Kui vastus sisaldab tundlikke andmeid (näiteks paroole), siis lubame need osaliselt hägustada või peita.
  • Olge ettevaatlikud Internetist vastuseid otsides. Nii mõnigi Internetis pakutud (k.a. NirSoft paketist pärit) tarkvara võib sisaldada erinevat tüüpi soovimatut lisatarkvara (viirused, backdoors, spyware, jne..).

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 avalikustatud 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.

  1. Vaata tutvustavat Getting Started video https://ghidra-sre.org/ lehel. (8 min)
  2. Vaata Ghidra sissejuhatavat näidet ja kasutajaliidese ülevaadet (12 min)
  3. Vaata WannaCry krüptolunavara dekrüpteerimise näiteid (part 1 kuni part 3)(kokku 55 min)
  4. 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:

  1. Mis on Ghidra peamine funktsionaalsus?
  2. Kuidas Ghidra paigaldada Linux virtuaalmasinasse?
  3. Ghidra'ga koodi analüüsides kas ta suudab ise leida analüüsitavast programmist sobivad muutujate ja meetodite nimed?
  4. Millised 2 analüüsiakent on peamised kus toimub koodi analüüs Ghidra CodeBrowser tööriistaga?
  5. Milleks on vaja kasutada Edit Function Signature tegevust?
  6. Mis tüüpi kommentaarid on nähtavad Ghidra Decompile koodi vaates?
  7. Miks WannaCry võtab ühendust aadressiga http://www.iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com/?
  8. Mis nimega teenuse (Service) loob WannaCry iseenda käima panemiseks taaskäivituse järel?
  9. Kuidas WannaCry edastab krüpteerimiseks kasutatud privaatse võtme pahalastele?
  10. Kuidas WannaCry võimaldab dekrüpteerida 10 näidisfaili kuid mitte avalikustada ülejäänute dekrüpteerimiseks vajalikku võtit?

Esitada Praktikum14:

Praktikumi ülesande lahendamine annab neli punkti ja esitamiseks on umbes kaks nädalat alates praktikumi toimumisajast ( tähtaeg 48h enne teie eksami toimumist).

  • Ülesanne 1: Esitage vähemalt 10 ekraanivaadet olukorrast, kus te olete leidnud Windows operatsioonisüsteemist huvitavat kasutamise ajalugu. Ehk NirSoft või muu tarkvara/käsu abil saadud vastused näidisküsimustele - (iga alamvastus 0.2p kokku kuni 2.0p)
  • Ülesanne 2: Esitage vastused kontrollküsimustele Ghidra tarkvara kohta. -- (iga alamvastus 0.2p kokku kuni 2.0p)

Praktikumi ülesande lahendamine annab neli (4) punkti ja esitamiseks on umbes kaks nädalat alates praktikumi toimumisajast (kuni tähtajani) . Ülesannete lahendus lisage failina, arhiivina (kokkupakituna, ZIP, RAR, 7z), DOCX, PDF .

14. Praktikum 14 - Windows forensics & Ghidra
Solutions for this task can no longer be submitted.
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment