Reverzno inženjerstvo i analiza zloćudnog programa

Ishodi učenja

  1. Razumjeti strojni kod arhitekture x86 i njegovo izvođenje. Razumjeti preslikavanje konstrukcija iz višeg programskog jezika na strojni kod arhitekture x86. Prepoznati dijelove programa koji imaju zloćudni karakter.

Oblici nastave

Tjedni plan nastave

  1. Uvod u reverzno inženjerstvo i analizu zloćudnih programa
  2. Arhitektura procesora x86
  3. Zbirni jezik arhitekture x86
  4. Preslikavanje s programskog jezika više razine na zbirni jezik (varijable, skokovi, petlje, pozivi funkcija, rukovanje iznimkama, enkripcijske rutine, rutine za pakiranje i izdvajanje izvršnog programa)
  5. Povezivanje, punjenje i izvođenje izvršnih programa 1
  6. Formati izvršnog programa: PE (portable executable) 1
  7. Formati izvršnog programa: PE (portable executable) 2
  8. Pakiranje i izdvajanje izvršnih programa PE
  9. Osnove analize i klasifikacija zloćudnih programa
  10. Postavljanje sigurnog okruženja za analizu zloćudnih programa (virtualizacija, zaštitna kutija)
  11. Statička analiza zloćudnih programa (alati i metode) 1
  12. Statička analiza zloćudnih programa (alati i metode) 2
  13. Dinamička analiza zloćudnih programa (alati i metode)
  14. Metode anti-reverznog inženjering-a (perzistencijski mehanizmi, detekcija virtualnog okruženja, detekcija alata za dinamičku analizu)
  15. Praktična primjena: otkrivanje, analiza i uklanjanje zloćudnih programa

Studijski programi

Sveučilišni preddiplomski
Automatika (modul)
Vještine - 6.semestra (6. semestar)
Bežične komunikacijske tehnologije (modul)
Vještine - 6.semestra (6. semestar)
Elektroenergetika (modul)
Vještine - 6.semestra (6. semestar)
Elektroničko i računalno inženjerstvo (modul)
Vještine - 6.semestra (6. semestar)
Elektronika (modul)
Vještine - 6.semestra (6. semestar)
Elektrotehnika i informacijska tehnologija (studij)
Vještine - 4. semestra (4. semestar)
Obradba informacija (modul)
Vještine - 6.semestra (6. semestar)
Programsko inženjerstvo i informacijski sustavi (modul)
Vještine - 6.semestra (6. semestar)
Računalno inženjerstvo (modul)
Vještine - 6.semestra (6. semestar)
Računarska znanost (modul)
Vještine - 6.semestra (6. semestar)
Računarstvo (studij)
Vještine - 4. semestra (4. semestar)
Telekomunikacije i informatika (modul)
Vještine - 6.semestra (6. semestar)
Sveučilišni diplomski
Automatika (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Bežične komunikacijske tehnologije (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Elektroenergetika (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Elektroničko i računalno inženjerstvo (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Elektronika (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Elektrotehnički sustavi i tehnologija (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Obradba informacija (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Programsko inženjerstvo i informacijski sustavi (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Računalno inženjerstvo (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Računarska znanost (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)
Telekomunikacije i informatika (profil)
Vještine - dipl.studij - 2. semestar (2. semestar)

Laboratorijske vježbe

Izvedba

ID 167350
  Ljetni semestar
4 ECTS
R1 Engleski jezik
R1 E-učenje
40 Predavanja
0 Auditorne vježbe
20 Laboratorijske vježbe

Ocjenjivanje

izvrstan
vrlo dobar
dobar
dovoljan