Stjepan Groš

Supervised diploma thesis and related publications

Publications in this category, as well as the page itself, are written mostly in Croatian. If you do not understand Croatian, use Google Translate.

Akademska godina 2023/2024

Završni specijalistički radovi - poslijediplomski specijalistički studij Informacijska sigurnost

M. Merkaš, Kibernetička sigurnost nadzorno-upravljačkog sustava cestovnog tunela (), specijalistički završni rad, poslijediplomski specijalistički studij Informacijska sigurnost, FER, Sveučilište u Zagrebu, 2023.

Kibernetička sigurnost upravljačkih sustava od iznimne je važnosti za funkcioniranje kritične infrastrukture, a o njezinoj implementaciji potrebno je voditi računa već kod projektiranja samog sustava. Zbog toga je kod projektiranja sustava za nadzor i upravljanje cestovnim tunelom ključno odabrati arhitekturu koju će biti što je moguće lakše zaštiti od kibernetičkih napada. U radu je odabrana je ISA95 mrežna arhitektura u koju su uključeni svi nadzorni i sigurnosni sustavi u tunelu, a nakon čega je pomoću stabla napada razmatrana sigurnost dobivenog sustava. Zaključeno je da je ISA95 arhitektura primjenjiva u slučaju da se ne koriste IIoT uređaji i da je ključno osigurati vezu između razine 2 – serverske infrastrukture nadzorno- upravljačkog sustava i razine 4 – poslovne mreže tvrtke koja upravlja tunelom. Zaštitu je potrebno provoditi pravilno dizajniranom DMZ zonom.

Diplomski radovi

Završni radovi

Akademska godina 2022/2023

Završni specijalistički radovi - poslijediplomski specijalistički studij Informacijska sigurnost

M. Jurčević, Vježbe za kibernetičke incidente u bankarskom sektoru (), specijalistički završni rad, poslijediplomski specijalistički studij Informacijska sigurnost, FER, Sveučilište u Zagrebu, 2023.

Cilj ovog rada je definirati prijedlog procesa, scenarije i popratne materijale za provođenje vježbi odgovora na kibernetičke incidente u bankarskom sektoru. U okviru istraživanja za rad provedena je temeljita analiza postojećih praksi za vježbe odgovora na kibernetičke incidente, uključujući vrste vježbi, njihove ciljeve i metodologije.

Rezultati istraživanja ukazuju na to da su vježbe odgovora na incidente ključni alat za unapređenje pripravnosti financijskih institucija u suočavanju s raznovrsnim prijetnjama. Zaključak je da priprema i definiranje relevantnog i realnog scenarija koristeći dijelove TIBER- EU okvira omogućava dobru pripremu za odgovor na incidente, što pridonosi bržoj i učinkovitijoj reakciji u slučaju stvarnih incidenata, smanjujući potencijalne gubitke i štetu.

Ovaj će rad dati opće smjernice za planiranje, pripremu, razvoj i provođenje tih vježbi slijedeći važeće regulative i zakone kao i najbolje prakse u bankarskom sektoru, kako bi financijske institucije provođenjem vježbi unaprijedile proces odgovora na incidente. Također, u ovom su radu predloženi materijali koji se mogu koristiti prilikom pripreme i izvođenja vježbe, kao i konfiguracija vježbe u OpenEX simulatoru.

K. Matić, Uloga dobavljača opreme u sigurnosti 5G mreže (), specijalistički završni rad, poslijediplomski specijalistički studij Informacijska sigurnost, FER, Sveučilište u Zagrebu, 2022.

Karakteristike pete generacije mobilnih mreža (5G) i zabrana korištenja opreme kineskih dobavljača u Australiji, Japanu, SAD-u i drugim zemljama bili su motivirajući faktori za proučavanje utjecaja dobavljača opreme na sigurnost 5G mreže i pisanje ovog rada.

Opremu kineskih dobavljača sve veći broj zemalja smatra visokorizičnom pa je tako i u Europskoj Uniji preporuka izbjegavati njenu uporabu jer može ugroziti sigurnost 5G mreže. Utjecaj Kine na kineske tvrtke je značajan, zakonom je propisano osnivanje organizacije Komunističke partije i provođenje nadzora u tvrtkama te dostava zatraženih informacija. Huawei je najveći kineski dobavljač 5G opreme i iako se nastoji prilagoditi sigurnosnim zahtjevima zapadnih zemalja i mnogo ulaže u razvoj i sigurnost svoje opreme i usluga, podliježe kineskim zakonima i smatra se visokorizičnim.

Cilj rada je opisati 5G tehnologiju, 5G sigurnosnu arhitekturu, vodeće dobavljače opreme s naglaskom na one visokorizične te mjere koje bi operatori trebali uzeti u obzir kod odabira dobavljača, s ciljem očuvanja povjerljivosti, cjelovitosti i dostupnosti podataka u prijenosu, obradi i pohrani.

A. Adanić, Analiza sustava za upravljanje identitetima i pristupom Keycloak (), specijalistički završni rad, poslijediplomski specijalistički studij Informacijska sigurnost, FER, Sveučilište u Zagrebu, 2022.

Ovaj je rad za glavni cilj imao analizu i utvrđivanje slijednosti dnevničkih zapisa Keycloak sustava za upravljanje identitetima i pristupom i aplikacije integrirane preko OpenID Connect protokola. U svrhu tog cilja analizirane su i opisane glavne funkcionalnosti svih sustava za upravljanje identitetima, a nakon toga opisan je i sam Keycloak. Kod Keycloak sustava opisane su njegove funkcionalnosti kroz administrativnu konzolu, konzolu za upravljanje korisničkim računom i integracije. U nastavku navedenog izrađena je aplikacija s bibliotekom za bilježenje koja se integrirala na Keycloak sustav. Uz pomoć aplikacije i Keycloak sustava izvedeni su tokovi autentifikacije i autorizacije OpenID Connect protokola, prikupljeni su njihovi dnevnički zapisi i metodama izvlačenja i pretvaranja podataka zapisani u zajedničku tablicu. Posljedično, u tablici se utvrđivala slijednost dnevničkih zapisa u svim slučajevima. Nakon analize predloženi su ostali standardi koji se mogu analizirati u Keycloak sustavu te su predloženi sustavi za prikupljanje i analizu dnevničkih zapisa koji bi optimizirali cijeli proces analize.

Diplomski radovi

D. Bezuk, Programski sustav za korištenje prototipa generatora modela IT sustava (), diplomski rad br. 184, FER, Sveučilište u Zagrebu, rujan 2023.

Za potrebe pripreme vježbi i eksperimenata u kibernetičkoj sigurnosti korisno je imati sustav za generiranje modela IT sustava na proizvoljnoj razini apstrakcije. Sastavni dio modela IT sustava su i sigurnosne politike. U ovom trenutku postoji prototip alata koji gradi modele IT sustava za opisanu svrhu, no za korištenje tog prototipa potrebna je značajna količina predznanja i vještine. U sklopu diplomskoga rada potrebno je razviti sustav koji će omogućiti udaljeni pristup prototipu za generiranje modela IT sustava putem programskih sučelja. Sustav treba omogućiti upravljanje svim aspektima prototipa. Pozornost obratiti i na upravljanje pristupom kako bi različiti korisnici mogli upotrebljavati sustav bez mogućnosti pregleda tuđih podatka. Programsko rješenje mora biti modularno i razvijeno u skladu s dobrim praksama. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Gračner, Podešavanje i ispitivanje vatrozida na temelju zadanih politika visoke razine apstrakcije (Configuration and testing of firewalls based on given high-level policies), diplomski rad br. 185, FER, Sveučilište u Zagrebu, srpanj 2023.

Vatrozid je uređaj koji provodi filtriranje mrežnog prometa u skladu s postavljenom politikom. Kod postojećih vatrozida se ova politika u pravilu implementira kroz skup pravila koja definiraju način postupanja s mrežnim prometom na temelju njegovih tehničkih karakteristika. Posljednjih godina se razvijaju pristupi koji omogućuju zadavanje politike vatrozida na visokoj razini apstrakcije, primjerice uporabom domenskih jezika ili opisa temeljenih na grafovima. Potom se te politike visoke razine apstrakcije prevode u skup pravila, optimiziraju i raspoređuju na mrežu vatrozid uređaja. U sklopu diplomskoga rada potrebno je razviti programsko rješenje koje politiku opisanu uporabom modela temeljenog na grafu i dani opis ciljne računalne mreže, automatski prevodi u skup pravila za postavljanje mreže vatrozida. Dobiveni skup pravila treba optimirati. Na posljetku, potrebno je razviti i alat za automatsko ispitivanje postavljenih s obzirom na izvorno zadanu politiku. Programsko rješenje mora biti modularno i robustno. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

H. Kristić, Smještanje i podešavanje vatrozida u mreži na temelju politika visoke razine apstrakcije (Network placement and configuration of firewalls based on high-level policies), diplomski rad br. 185, FER, Sveučilište u Zagrebu, srpanj 2023.

Vatrozid je uređaj koji provodi filtriranje mrežnog prometa u skladu s postavljenom politikom. Kod postojećih vatrozida se ova politika u pravilu implementira kroz skup pravila koja definiraju način postupanja s mrežnim prometom na temelju njegovih tehničkih karakteristika. Posljednjih godina se razvijaju pristupi koji omogućuju zadavanje politike vatrozida na visokoj razini apstrakcije, primjerice uporabom domenskih jezika ili opisa temeljenih na grafovima. Potom se te politiku visoke razine apstrakcije prevode u skup pravila, optimiziraju i raspoređuju na mrežu vatrozid uređaja. U sklopu diplomskoga rada potrebno je razviti programsko rješenje koje kao ulaz prima mrežnu politiku opisanu uporabom modela temeljenog na grafovima te opis topologije ciljane računalne mreže. Na temelju ulaza programsko rješenje traži optimalne pozicije za vatrozide u mreži, a potom generira konfiguracije svakog od vatrozida kako bi se ispoštovala politika visoke razine dana na ulazu. Programsko rješenje mora biti modularno i robustno. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

K. Lončar, Aplikacija za vizualizaciju i uređivanje modela IT sustava i pripadajuće implementacije sigurnosnih politika (Application for visualization and modification of IT system models and their security policy implementations), diplomski rad br. 185, FER, Sveučilište u Zagrebu, srpanj 2023.

Za potrebe pripreme vježbi i eksperimenata u kibernetičkoj sigurnosti korisno je imati sustav za generiranje modela IT sustava na proizvoljnoj razini apstrakcije. Sastavni dio modela IT sustava su i sigurnosne politike. U ovom trenutku postoji prototip alata koji gradi modele IT sustava za opisanu svrhu, no za korištenje tog prototipa potrebna je značajna količina predznanja i vještine. U sklopu diplomskoga rada potrebno je razviti aplikaciju koja će putem programskog sučelja pristupati prototipu te omogućiti njegovo korištenje. Bitna funkcionalnost aplikacije mora biti vizualizacija dobivenih modela, ali i mogućnost njihova uređivanja u smislu promjene parametara korištenih za generiranje modela. Aplikacija mora poštivati sve dobre prakse razvoja programske podrške, a posebice mora biti modularna i lako nadogradiva.

S. Marjanović, Implementacija igre za uvježbavanje kibernetičkog ratovanja na strateškoj razini (Game implementation for practicing cyber war on a strategic level), diplomski rad br. 3094, FER, Sveučilište u Zagrebu, veljača 2023.

Kibernetičke vježbe bitan su dio izgradnje sposobnosti obrane tvrtki. Svrha kibernetičkih vježbi je uvježbavanje timova koji brane neki informacijski sustav kako bi u slučaju stvarnih napada reagirali što bolje i na taj način umanjili štetu koja nastaje organizaciji. Kibernetičke vježbe mogu se provoditi na tehničkoj, taktičkoj, operativnoj i strateškoj razini. Za svaku razinu koriste se različite metode provođenja vježbi. Jedan od pristupa na operativnoj i strateškoj razini su igre koje podsjećaju na igre s kartama, kao što je monopoli. U sklopu ovog diplomskog rada potrebno je implementirati vježbu koja je opisana u doktorskoj disertaciji Haggman, Andreas. Cyber wargaming: finding, designing, and playing wargames for cyber security education. Diss. Royal Holloway, University of London, 2019. Vježba treba biti u formi Web aplikacije koja omogućava pristup više korisnika, praćenje uspjeha korisnika, spremanje stanja i slično. U diplomskom radu jasno naznačiti koji elementi sustava su nadograđeni, odnosno nisu opisani u disertaciji. Provesti eksperimente s aplikacijom. Citirati korištenu literaturu i navesti dobivenu pomoć.

Kod dostupan na https://github.com/sgros/Marjanovic-Stjepan-Diplomski.

L. Srdarev, Izrada dodatka za alat BurpSuite za detekciju nesigurnih deserijalizacija objekata (Implementation of a plugin for BurpSuite tool for detecting insecure deserialization vulnerabilities), diplomski rad br. 190, FER, Sveučilište u Zagrebu, srpanj 2023.

Često se prilikom izrade Web aplikacija koristi serijalizacija objekata kao način perzistiranja podataka. Iz perspektive programera, to je puno jednostavnije nego pohranjivati pojedinačne vrijednosti u bazu podataka. Takav pristup pohrani podataka uvodi ranjivosti jer napadač potencijalno može modificirati serijaliziran objekt na način da u njega uključi nekakav maliciozni kôd. Ako se tijekom deserijalizacije ne obrati pozornost na tu mogućnost, napadač može ostvariti udaljeno izvršavanje kôda što je vrlo opasno po sigurnost sustava. U sklopu diplomskoga rada potrebno je razviti dodatak za alat BurpSuite koji će omogućiti detekciju serijaliziranih objekata u HTTP zahtjevima i odgovorima te koji će automatski pokušati detektirati postojanje ranjivosti u procesu deserijalizacije. Ograničiti se na serijalizaciju i deserijalizaciju u programskim jezicima Python i Java. Programsko rješenje mora biti modularno i razvijeno u skladu s dobrim praksama programskog inženjerstva. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

Kod dostupan na https://github.com/sgros/Diplomski-Srdarev-Luka-PySoSerial.

F. Todorić, Implementacija igre za uvježbavanje kibernetičkog ratovanja na strateškoj razini (Implementation of a game for practicing cyber war on a strategic level), diplomski rad br. 3161, FER, Sveučilište u Zagrebu, srpanj 2023.

Kibernetičke vježbe bitan su dio izgradnje sposobnosti obrane tvrtki. Svrha kibernetičkih vježbi je uvježbavanje timova koji brane neki informacijski sustav kako bi u slučaju stvarnih napada reagirali što bolje i na taj način umanjili štetu koja nastaje organizaciji. Kibernetičke vježbe mogu se provoditi na tehničkoj, taktičkoj, operativnoj i strateškoj razini. Za svaku razinu koriste se različite metode provođenja vježbi. Jedan od pristupa na operativnoj i strateškoj razini su igre koje podsjećaju na igre s kartama, kao što je monopoli. U sklopu ovog diplomskog rada potrebno je implementirati vježbu koja je opisana u doktorskoj disertaciji Haggman, Andreas. Cyber wargaming: finding, designing, and playing wargames for cyber security education. Diss. Royal Holloway, University of London, 2019. Vježba treba biti u formi Web aplikacije koja omogućava pristup više korisnika, praćenje uspjeha korisnika, spremanje stanja i slično. U diplomskom radu jasno naznačiti koji elementi sustava su nadograđeni, odnosno nisu opisani u disertaciji. Provesti eksperimente s aplikacijom. Citirati korištenu literaturu i navesti dobivenu pomoć

Kod backend dijela aplikacije dostupan je na https://github.com/sgros/Todoric-Filip-Diplomski-csw-backend, a frontend na https://github.com/sgros/Todoric-Filip-Diplomski-csw-frontend.

A. Trejić, Detekcija anomalija u zapisima s vatrozida temeljena na grafovima (), diplomski rad br. 188, FER, Sveučilište u Zagrebu, rujan 2023.

U računalnim mrežama svakodnevno se generira velika količina zapisa koji sadrže mnogo korisnih informacija o samoj strukturi mreže i njenom ponašanju. Zapisi koji se generiraju na vatrozidu su posebno zanimljivi jer sadrže podatke o uspostavljenim konekcijama između aplikacija povezanih preko različitih sučelja vatrozida. Napadi na velike računalne mreže su nerijetko dobro sakriveni u gustom mrežnom prometu, te se njihovo otkrivanje svodi na otkrivanje anomalija koje se pojavljuju u generiranom mrežnom prometu. U tu svrhu se sve češće koriste razne metode strojnog učenja. U sklopu diplomskog rada potrebno je za zadane zapise s vatrozida istražiti metode kojima ih je moguće predstaviti kao grafove. Nad tako izgrađenom strukturom grafa potrebno je odabrati podskup atributa koji će se koristiti kao značajke za metode strojnog učenja. Temeljem odabranih značajki potrebno je istražiti metode strojnog učenja koje se mogu koristiti kod detekcije anomalija. Provesti proces detekcije anomalija korištenjem odabranih metoda strojnog učenja. Dobivene rezultate u vidu klasifikacijskih metrika potrebno analizirati te usporediti s rezultatima dobivenim korištenjem učitanog skupa podataka bez transformacije u oblik grafa. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Vladić, Implementacija mehanizma upravljanja kriptografskim ključevima u programskoj biblioteci libiec61850 (), diplomski rad br. 189, FER, Sveučilište u Zagrebu, srpanj 2023.

Upravljački sustavi vrlo su osjetljivi iz perspektive sigurnosti te se njihovom manipulacijom mogu načiniti značajne štete, potencijalno i gubitak ljudskih života. Jedan od bitnih mehanizama zaštite je zaštita cjelovitosti, tajnosti i integriteta podataka i naredbi u takvim sustavima. Međutim, cjelovito kriptografsko rješenje za te potrebe uključuje i upravljanje i razmjenu ključeva kao bitan element rješenja. U načelu, uvijek su neki ključevi ili barem materijali za ključeve raspodijeljeni ne-kriptografskim metodama i onda se na temelju toga gradi mehanizam raspodjele ključeva. U ovom diplomskom radu potrebno je nadograditi programsku biblioteku libiec61850 sa mehanizmom upravljanja ključeva koji će omogućiti kriptografsku zaštitu protokola podržanih u navedenoj biblioteci. Odgovarajući mehanizam za implementaciju treba odabrati iz znanstvene ili stručne literaturi. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

Kod dostupan na https://github.com/sgros/Diplomski-Vladic-Marko.

M. Zaninović, Napadi uskraćivanja usluge na PSD2 API i zaštita bez prekidanja TLS tunela (), diplomski rad br. 3157, FER, Sveučilište u Zagrebu, srpanj 2023.

PSD2 je direktiva Europske unije koja je stupila na snagu u rujnu 2019. godine. Navedenom direktivom Europska unija traži od financijskih institucija, prvenstveno banaka, da omoguće pristup svojim poslovnim sustavima putem API-ja kako bi se omogućilo nuđenje financijskih usluga svim tvrtkama te na taj način liberaliziralo financijsko tržište. Međutim, otvaranjem novog komunikacijskog kanala koji zadire u samu jezgru IT sustava financijskih institucija otvara novi potencijalni vektor napada o kojemu treba voditi računa. U sklopu diplomskog rada potrebno je definirati scenarije napada uskraćivanja usluge koji se mogu izvršiti na izložen API. Potrebno je definirati moguće zaštite s posebnim naglaskom na zaštitu u oblaku. S obzirom na osjetljivost podataka koji se prenose preko PSD2 API-ja potrebno je istražiti mogućnosti pružanja zaštite bez prekidanja TLS tunela. Eksperimentalno verificirati predložena rješenja. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

I. Baričević, Određivanje ulaganja i dobiti napadača u provođenje napada (Determining investment and gain for attackers when performing cyber attack), završni rad br. 1077, FER, Sveučilište u Zagrebu, srpanj 2023.

Tijekom i nakon kibernetičkog napada napadači moraju trošiti određene resurse kako bi proveli napad. Količina utrošenih resursa i dobiti određuje hoće li napadač započeti napad te hoće li ga provesti do kraja. Jako je malo poznate literature koja se bavi tim pitanjem budući da su obično ponašanja napadača slabo dokumentirana u odnosu na ponašanja branitelja. Zahvaljujući načinu kako se u CCS-u provode napadi postoji mogućnost preciznijeg određivanja koliko napadači mogu uložite te koju dobit će imati. U sklopu završnog rada potrebno je uzeti model neke generičke organizacije te u toj organizaciji definirati što je moguće više mjesta na kojima napadač troši resurse. Ta mjesta ulaganje je potrebno ugraditi u model napadače te potom simulirati napad i obranu i odrediti ulaganje i dobit napadača korištenjem simulatora CCS. Citirati korištenu literaturu i navesti dobivenu pomoć.

N. Sokol, Određivanje ekonomske štete u organizaciji nastale kao posljedica kibernetičkog napada (Determining economic damages in organizations caused by cyber security attack), završni rad br. 1075, FER, Sveučilište u Zagrebu, srpanj 2023.

Tijekom i nakon kibernetičkog napada na neku organizaciju generiraju se ekonomske štete. Dosta je teško odrediti točan iznos gubitka te se često štete paušalno procjenjuju. Međutim, postoji mogućnost preciznijeg određivanja štete korištenjem simulatora CCS gdje simulator simulira napad i obranu i tijekom te simulacije izračunava kolika je šteta. U sklopu završnog rada potrebno je uzeti model neke generičke organizacije te u toj organizaciji definirati što je moguće više mjesta na kojima nastaje šteta. Kako bi se odredili mogući izvori štete treba koristiti javno dostupne izvore koji se bave s tom temom. Te izvore štete potrebno je ugraditi u model organizacije nad kojim se potom simulira napad i obrana korištenjem simulatora CCS. Dodatno, treba pokušati varirati izvore šteta i koliko doprinosi svaki izvor ukupnoj šteti te odrediti na koje su parametre konačna šteta najosjetljivija. Citirati korištenu literaturu i navesti dobivenu pomoć.

V. Kežman, Određivanje ekonomske štete u organizaciji u ovisnosti od načina obrane (Determining economic damages in organizations with respect to the way defense is done), završni rad br. 1076, FER, Sveučilište u Zagrebu, srpanj 2023.

Tijekom i nakon kibernetičkog napada na neku organizaciju generiraju se ekonomske štete. Dosta je teško odrediti točan iznos gubitka te se često štete paušalno procjenjuju. Međutim, postoji mogućnost preciznijeg određivanja štete korištenjem simulatora CCS gdje simulator simulira napad i obranu i tijekom te simulacije izračunava kolika je šteta. U sklopu završnog rada potrebno je uzeti model neke generičke organizacije te u toj organizaciji definirati što je moguće više mjesta na kojima nastaje šteta. Kako bi se odredili mogući izvori štete treba koristiti javno dostupne izvore koji se bave s tom temom. Te izvore štete potrebno je ugraditi u model organizacije nad kojim se potom simulira napad i obrana korištenjem simulatora CCS. Dodatno, treba varirati različite pristupe rješavanju kibernetičkog incidenta te pratiti kako se šteta mijenja. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Golem, Analiza korištenja stručnih izvora u znanstvenim radovima iz područja kibernetičke sigurnosti (Analysis of use of professional sources in cyber security scientific papers), završni rad br. 1175, FER, Sveučilište u Zagrebu, srpanj 2023.

Mnogi autori tijekom pisanja znanstvenih radova iz područja kibernetičke sigurnosti koriste izvore informacija koji nisu prošli recenzijski postupak, prvenstveno različite stručne izvore kao što su blogovi, novinski članci, stučne konferencije. Zanimljivo pitanje je koji od tih izvora se koristi i za koje potrebe u znanstvenim radovima. Kada bi postojala ta informacija mogli bi ju koristiti svi koji pišu znanstvene radove u području kibernetičke sigurnosti da pronađu vjerodostojnije izvore informacija. U sklopu završnog rada potrebno je razviti aplikaciju koja dohvaća članke iz određenog repozitorija u PDF obliku te parsira sadržaj rada kako bi dohvatila podatke o korištenim stručnim izvorima i mjestima gdje se u članku oni referenciraju. Stručni izvori mogu se prepoznati po korištenju URL-ova ili ključnih riječi. Razvijena aplikacija mora slijediti sve dobre prakse razvoja kvalitetnog programskog koda. Citirati korištenu literaturu i navesti dobivenu pomoć.

Kod dostupan na https://github.com/sgros/Golem-Adrian-Zavrsni-PDF-Parser.

V. Jakopec, Kibernetička vježba za zdravstveni sektor ostvarena upotrebom alata OpenEx (), završni rad br. 1177, FER, Sveučilište u Zagrebu, srpanj 2023.

Kibernetičke vježbe bitan su dio izgradnje sposobnosti obrane tvrtki. Svrha kibernetičkih vježbi je uvježbavanje timova koji brane neki informacijski sustav kako bi u slučaju stvarnih napada reagirali što bolje i efikasnije te na taj način umanjili štetu koja nastaje organizaciji. Kibernetičke vježbe mogu se provoditi na tehničkoj, taktičkoj, operativnoj i strateškoj razini. Za svaku razinu koriste se različite metode provođenja vježbi, od kojih su najčešće "table-top" vježbe za upravljačku razinu te kibernetički poligoni za tehničku razinu. U sklopu završnog rada potrebno je definirati kibernetičku vježbu za upravljačku razinu neke zdravstvene organizacije. Vježbu je potrebno implementirati i provoditi korištenjem alata otvorenog koda OpenEx. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Jelavić, Analiza i mjerenje izlaza obfuskatora JavaScript koda (), završni rad br. 1174, FER, Sveučilište u Zagrebu, srpanj 2023.

Obfusciranje JavaScript koda često se koristi za prikrivanje zloćudnih aktivnosti. Prema tome, detektiranjem obfusciranog JavaScript koda moguće je detektirati potencijalno zloćudan kod za koji se naknadnom analizom može utvrditi je li zloćudan ili nije. Problem je što nije jednostavno razlikovati obfuscirani kod od minificiranog, tj. od koda koji je mijenjan isključivo s ciljem smanjenja količine podataka koji je potrebno dohvaćati. Strojno učenje je potencijalni pristup detekciji obfusciranog koda, ali kako bi se strojno učenje primijenilo nužno je imati veliku količinu podataka nad kojima će se obavljati učenje. S obzirom da moguć broj alata i opcija na ulazu potrebno je utvrditi koji je minimalan smisleni skup podataka koji treba generirati. U sklopu završnog rada potrebno je pronaći slobodno raspoložive obfuskatore za programski jezik JavaScript te ih usporediti sa alatom obfuscator.io. Treba utvrditi jesu li njihove mogućnosti kao i izlaz dovoljno različiti od alata obfuscator.io kako bi se uključili u proces generiranja skupa podataka. Radi utvrđivanja različitosti potrebno je definirati mjeru ili nekakav kriterij koji će određivati različitost. Dodatno, potrebno je proučiti koje opcije alata obfuscator.io treba koristiti, a koje se mogu zanemariti na temelju kriterija što bi napač koji želi prikriti zloćudni kod koristio. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Miljković, Vizualizacija OT elemenata trafostanice opisane jezikom SCL (), završni rad br. 1205, FER, Sveučilište u Zagrebu, srpanj 2023.

Za opis konfiguracije u pametnoj trafostanici temeljenoj na normi IEC 61850 koristi se jezik SCL (engl. Substation Configuration Language). Opis trafostanice, koji koristi jezik SCL, smješten je tekstnu datoteku koja se često naziva datoteka SCL. S obzirom da su trafostanice vrlo složeni objekti, i sadržaj jedne datoteke SCL je vrlo složen te je teško nekoj osobi analizirati tu datoteku i njen sadržaj. U ovom završnom zadatku potrebno je osmisliti vizualizaciju datoteke SCL koja će omogućiti lakše razumijevanje sadržaja datoteke i strukture trafostanice. Obratiti pozornost da se unutar ostvarene vizualizacije lako dolazi do što veće količine informacija dostupnih u datoteci SCL.

B. Puvača, Sustav za generiranje skupa podataka obfusciranog JavaScript koda (System for Generating Obfuscated JavaScript Code Dataset), završni rad br. 1173, FER, Sveučilište u Zagrebu, srpanj 2023.

Obfusciranje JavaScript koda često se koristi za prikrivanje zloćudnih aktivnosti. Prema tome, detektiranjem obfusciranog JavaScript koda moguće je detektirati potencijalno zloćudan kod za koji se naknadnom analizom može utvrditi je li zloćudan ili nije. Problem je što nije jednostavno razlikovati obfuscirani kod od minificiranog, tj. od koda koji je mijenjan isključivo s ciljem smanjenja količine podataka koji je potrebno dohvaćati. Strojno učenje je potencijalni pristup detekciji obfusciranog koda, ali kako bi se strojno učenje primijenilo nužno je imati veliku količinu podataka nad kojima će se obavljati učenje. U sklopu završnog rada potrebno je razviti sustav koji na ulazu prima JavaScript kod, odnosno URL-ove s kojih je potrebno dohvatiti kod te potom generira niz obfusciranih primjera. Sustav treba biti neovisan o konkretnom alatu za obfuskaciju, a specifični alati i metode se trebaju uključiti korištenjem sustava dodataka. Programsko rješenje mora biti modularno i razvijeno u skladu s dobrim praksama. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Sever, Poboljšanje kvalitete mamaca za operatora prijenosnog sustava temeljem javno dostupnih podataka (Raising the quality of a honeypot system for a transmission system operator based on publicly available data), završni rad br. 1206, FER, Sveučilište u Zagrebu, srpanj 2023.

Mamci imitiraju stvarne uređaje i sustave u računalnoj mreži kako bi privukli napadače. Kada napadači kompromitiraju mamac, moguće je proučavati njihovo djelovanje i prikupljati spoznaje o alatima i tehnikama koje koriste. Tako dobivene spoznaje mogu pomoći u povećanju razine sigurnosti stvarnih sustava. U sklopu ranijeg projekta razvijena je jezgra prototipa mamca koja imitira dio mreže operatora prijenosnog sustava. Navedeni prototip potrebno je dovršiti kako bi ga se moglo koristiti u daljnjim eksperimentima. U sklopu završnoga rada potrebno je istražiti javno dostupne informacije o operatoru prijenosnog sustava i materijale koji opisuju SCADA sustav otvorenog koda Hat Open. Na temelju prikupljenih informacija i postojećih komponenti prototipa potrebno je razviti korisničko sučelje za ugrađeni SCADA sustav i proširiti prototip s imitacijama dodatnih komponenti karakterističnih za prijenosni sustav. Uz navedeno, potrebno je i predložiti daljnje korake koje je potrebno poduzeti kako bi uobičajene metode prikupljanja OSINT podataka napadače dovele do mamca. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

J. Skokandić, Zaštita protokola SMV korištenjem kodova za zaštitu integriteta poruka (Protection of SMV protocol using message authentication codes), završni rad br. 1218, FER, Sveučilište u Zagrebu, srpanj 2023.

Unutar trafostanice temeljene na IEC 61850 normi koriste se protokoli MMS, GOOSE i SMV. Navedeni protokoli služe za upravljanje trafostanice te se njihovim korištenjem prenose kritični podaci. Međutim, ti protokoli nemaju ugrađenu nikakvu kriptografsku zaštitu te ih je lako napasti i presretati, lažirati, mijenjati i slično. Protokol SMV (Sampled Values) služi za prijenos mjerenih vrijednosti unutar trafostanice te je vremenski kritičan. U sklopu ovog završnog rada potrebno je predložiti korištenje kodova za zaštitu integriteta poruke (MAC) na protokol SMV. Implementirati naveden prijedlog u biblioteci libiec61850. Analizirati memorijske te vremenske performanse napravljene zaštite.

F. Šimičević, Detekcija kibernetičkih napada i zaštita vanjskih sustava u kontekstu mamaca za operatora prijenosnog sustava (Detection of cyber attacks and protection of external systems in context of a honeypot system for a transmission system operator), završni rad br. 1207, FER, Sveučilište u Zagrebu, srpanj 2023.

Mamci imitiraju stvarne uređaje i sustave u računalnoj mreži kako bi privukli napadače. Kada napadači kompromitiraju mamac, moguće je proučavati njihovo djelovanje i prikupljati spoznaje o alatima i tehnikama koje koriste. Tako dobivene spoznaje mogu pomoći u povećanju razine sigurnosti stvarnih sustava. U sklopu ranijeg projekta razvijena je jezgra prototipa mamca koja imitira dio mreže operatora prijenosnog sustava. Navedeni prototip potrebno je dovršiti kako bi ga se moglo koristiti u daljnjim eksperimentima. U sklopu završnoga rada potrebno je istražiti javno dostupne alate za detekciju napada i metode logiranja koje se mogu koristiti u sklopu mamca. Na temelju pronađenih informacija potrebno je proširiti postojeći prototip mamca kako bi se pomoću njega moglo detektirati napade i bilježiti aktivnosti napadača. Nadalje, potrebno je postaviti konfiguraciju vatrozida koja će napadaču koji ostvari pristup mamcu onemogućiti napadanje vanjskih sustava, i postaviti VPN kojim će biti moguće pristupiti mamcu s vanjske mreže. Radu priložiti izvorni kôd. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2021/2022

Završni specijalistički radovi - poslijediplomski specijalistički studij Informacijska sigurnost

I. Hitrec, Uvođenje sigurnosnog operacijskog centra za zaštitu poslovanja srednje velike tvrtke (), specijalistički završni rad, poslijediplomski specijalistički studij Informacijska sigurnost, FER, Sveučilište u Zagrebu, 2021.

Svrha ovoga rada jest opisati razloge i način uvođenja funkcije sigurnosnog operacijskog centra (SOC) kao centraliziranog načina nadzora i akcije prevencije i reakcije na sigurnosne događaje koji mogu ugroziti poslovanje tvrtke. Stoga je postupak opisan na primjeru zamišljene tvrtke ACME čiji poslovna i proizvodna funkcija isključivo ovisi o dostupnosti računalnih sustava kojima se upravlja sa ovim procesima i koja ima potrebu odgovoriti na suvremene rizike kibernetičke sigurnosti. Opisan je način odabira operacijskog modela SOC- a koji će odgovoriti ovome zadatku, način odabira potrebnih ljudskih resursa, tehnologije koja će zadovoljiti potrebe nadzora proizvodnje i poslovanja. Opisat će se procesi kojima će se osigurati da SOC ispunjava svoju funkciju i potom opisati način mjerenja učinkovitosti SOC- a koji mora pokazati njegovu učinkovitost i mogućnosti za stalna unaprijeđena u radu. Obzirom na poslovne zahtjeve i veličinu tvrtke u radu su prikazani razlozi odabira SOC-a koji za većinu svojih manje zahtjevnih funkcija koristi vanjske ljudske resurse a za važnije funkcije razvija ljudski potencijal unutar ACME tvrtke. Odabranom tehnologijom i sigurnosnim kontrolama ovaj SOC je osigurati kvalitetno pokrivanje svih ključnih proizvodnih i poslovnih procesa unutar tvrtke i onih koji se naslanjaju na računalne servise u oblaku. Primijenjena metodologija mjerenja učinkovitosti osigurat će i optimalno upravljanje i stalno poboljšavanje usluge koju ovako postavljen SOC pruža svojoj tvrtki.

Diplomski radovi

Cyber Conflict Simulator

K. Grubešić, Izgradnja složenog kibernetičkog poligona za vježbe napada i obrane (Building complex cyber ranges for offense and defence exercises), diplomski rad br. 3045, FER, Sveučilište u Zagrebu, srpanj 2022.

Kibernetičke vježbe bitan su dio izgradnje sposobnosti obrane tvrtki. Svrha kibernetičkih vježbi je uvježbavanje timova koji brane neki informacijski sustav kako bi u slučaju stvarnih napada reagirali što bolje i na taj način umanjili štetu koja nastaje organizaciji. S druge strane, napade obavljaju tzv. crveni timovi koji se sastoje od ljudi koji pokušavaju kompromitirati informacijski sustav. Za provođenje vježbi potrebno je imati odgovarajući informacijski sustav koji će plavi tim braniti, a crveni napadati. S obzirom da se produkcijski sustavi ne smiju napadati koriste se sintetički informacijski sustavi koji se nazivaju kibernetički poligoni te koji se implementiraju korištenjem virtualizacijskih tehnologija ili se simuliraju u simulatorima. U sklopu ovog diplomskog rada potrebno je izgraditi složen kibernetički poligon na kojima može vježbati veći broj crvenih i plavih timova. Poligon treba biti parametriziran kako bi se mogao povećavati ili smanjivati po potrebi, a također je potrebno parametrizirati obrambene mehanizme na način da se po potrebi pojedini mehanizmi mogu ukloniti ili dodati u poligon. Izgrađeni poligon treba ispitati u simulatoru Cyber Conflict Simulator na način da se provede probni napad i obrana. Citirati korištenu literaturu i navesti dobivenu pomoć.

R. Benić, Strojno generiranje izvješća specijalista tijekom rukovanja sigurnosnim incidentom (Machine generating specialist reports during security incident handling), diplomski rad br. 3050, FER, Sveučilište u Zagrebu, srpanj 2022.

Tijekom rješavanja incidenta zadaju se zadaće pojedinim specijalistima, primjerice, forenzičarima da provjere neko računalo ili administratorima da pregledaju sistemske i operativne zapise. Kada obave posao, specijalisti izvješća upućuju nadređenima koji na temelju njih donose odluke o daljnjem postupanju. Prilikom simulacije upravljanja incidentnom situacijom, nema na raspolaganju specijalista te se sva izvješća moraju generirati strojnim putem. Način na koji se to radi je da postoje predlošci koji se koriste, ali ti predlošci umanjuju realističnost simulacije. Iz tog razloga bilo bi dobro imati odgovarajuće modele temeljene na strojnom učenju koji bi generirali sintetička izvješća. U sklopu diplomskog rada potrebno je složiti metodologiju treniranja modela koji generiraju izvješća specijalista. Nadalje, potrebno je istražiti potencijalne primjere takvih izvješća te ih dohvatiti za potrebe treniranja modela. Korištenjem definirane metodologije i dohvaćenih primjera, treba istražiti mogućnost generiranja izvješća u simulatoru Cyber Conflict Simulator. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Zaštita PSD2 sučelja

T. Karamehmedović, Implementacija PSD2 klijenta (PSD2 client implementation), diplomski rad br. 3055, FER, Sveučilište u Zagrebu, srpanj 2022.

PSD2 je direktiva Europske unije koja je stupila na snagu u rujnu 2019. godine. Navedenom direktivom Europska unija traži od financijskih institucija, prvenstveno banaka, da omoguće pristup svojim poslovnim sustavima putem API-ja kako bi se omogućilo nuđenje financijskih usluga svim tvrtkama te na taj način liberaliziralo financijsko tržište. Međutim, otvaranjem novog komunikacijskog kanala koji zadire u samu jezgru IT sustava financijskih institucija otvara novi potencijalni vektor napada o kojemu treba voditi računa. U sklopu diplomskog rada potrebno je razviti jednostavnu programsku implementaciju sustava koji pristupa API-jima banke i provodi određene radnje na njima. Navedenu implementaciju potrebno je testirati na probnim instancama koje banke nude za potrebe testiranja. Implementacija treba biti implementirana u obliku programske biblioteke koja dodatno ima GUI sučelje za upravljanje upitima koji se prosljeđuju probnim instancama. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

J. Šestan, Napadi na PSD2 API (Attacks on PSD2 API), diplomski rad br. 3051, FER, Sveučilište u Zagrebu, srpanj 2022.

PSD2 je direktiva Europske unije koja je stupila na snagu u rujnu 2019. godine. Navedenom direktivom Europska unija traži od financijskih institucija, prvenstveno banaka, da omoguće pristup svojim poslovnim sustavima putem API-ja kako bi se omogućilo nuđenje financijskih usluga svim tvrtkama te na taj način liberaliziralo financijsko tržište. Međutim, otvaranjem novog komunikacijskog kanala koji zadire u samu jezgru IT sustava financijskih institucija otvara novi potencijalni vektor napada o kojemu treba voditi računa. U sklopu diplomskog rada potrebno je definirati scenarije napada koji se mogu provesti putem izloženog API-ja. Za svaki scenario potrebno je opisati štete koje mogu nastati te razviti zaštitne metode koje se mogu koristiti. Korištenjem nekakvog programskog alata implementirati napade. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Špoljar, Implementacija PSD2 poslužitelja (PSD2 server implementation), diplomski rad br. 3058, FER, Sveučilište u Zagrebu, srpanj 2022.

PSD2 je direktiva Europske unije koja je stupila na snagu u rujnu 2019. godine. Navedenom direktivom Europska unija traži od financijskih institucija, prvenstveno banaka, da omoguće pristup svojim poslovnim sustavima putem API-ja, kako bi se omogućilo nuđenje financijskih usluga svim tvrtkama, te na taj način liberaliziralo financijsko tržište. Međutim, otvaranje novog komunikacijskog kanala koji zadire u samu jezgru IT sustava financijskih institucija otvara novi potencijalni vektor napada o kojemu treba voditi računa. U sklopu diplomskog rada potrebno je razviti poslužiteljsku komponentu PSD2 sustava koja prihvaća REST API zahtjeve klijenata, te ih potom šalje u RabbitMQ red poruka. Poslužiteljska komponenta treba voditi računa o ispravnosti upita, te o zahtjevima koji su poslani u red poruka, ali na koje nije odgovoreno. Također, poslužiteljska komponenta treba ima mogućnost praćenja stanja sustava, te odgovarajući GUI putem kojega je moguće pratiti to stanje. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Emulacija PLC firmwarea

P. Kovač, Izvršavanje firmwarea PLC-a korištenjem alata QEMU (PLC firmware execution using QEMU), diplomski rad br. 3054, FER, Sveučilište u Zagrebu, srpanj 2022.

Programirljivi logički kontroleri (engl. Programmable logic controller, PLC) su industrijska računala koja se koriste za automatizaciju industrijskih procesa. U industrijskim postrojenjima oni primjerice reguliraju temperaturu u nekoj smjesi ili brzinu vrtnje centrifuge. Njihov rad ima utjecaj na kvalitetu proizvoda te su posljedice neispravnog rada PLC-a financijske štete, a moguće su i ugroze ljudskih života. U novije vrijeme su se događali kibernetički napadi na industrijska postrojenja kojima je cilj zloupotrijebiti ranjivosti koje se nalaze u programskoj podršci industrijskih računala. Radi toga je bitno otkriti ranjivosti prije nego što mogu biti zloupotrebljene, što je otežano činjenicom da većina programske podrške za PLC-ove nije javno dostupna. Za otkrivanje ranjivosti potrebno je istraživačima olakšati pristup i testiranje programske podrške PLC-ova. U sklopu ovog diplomskog rada potrebno je istražiti mogućnost izvršavanja nekog proizvoljno odabranog firmwarea PLC-a u alatu QEMU. Dodatno, definirati metodu reverzanja firmwarea te reverzati firmware u dovoljnoj mjeri da se postigne osnovni cilj diplomskog rada, pokretanje firmwarea u emulatoru. Opisati izazove koji su riješeni te identificirane probleme koje nije moguće riješiti. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Pantina, Implementacija podrške za emulaciju PLC-a u alatu QEMU (Implementing support for QEMU emulation of PLCs), diplomski rad br. 3052, FER, Sveučilište u Zagrebu, srpanj 2022.

Programirljivi logički kontroleri (engl. Programmable logic controller, PLC) su industrijska računala koja se koriste za automatizaciju industrijskih procesa. U industrijskim postrojenjima oni primjerice reguliraju temperaturu u nekoj smjesi ili brzinu vrtnje centrifuge. Njihov rad ima utjecaj na kvalitetu proizvoda te su posljedice neispravnog rada PLC-a financijske štete, a moguće su i ugroze ljudskih života. U novije vrijeme su se događali kibernetički napadi na industrijska postrojenja kojima je cilj zloupotrijebiti ranjivosti koje se nalaze u programskoj podršci industrijskih računala. Radi toga je bitno otkriti ranjivosti prije nego što mogu biti zloupotrebljene, što je otežano činjenicom da većina programske podrške za PLC-ove nije javno dostupna. Za otkrivanje ranjivosti potrebno je istraživačima olakšati pristup i testiranje programske podrške PLC-ova. U sklopu ovog diplomskog rada potrebno je istražiti mogućnosti emulacije PLC-a u alatu QEMU. Konkretno, potrebno se je pozabaviti emulacijom periferije u alatu QEMU te dokumentirati postupak dodavanja novih uređaja i složiti jedan jednostavan primjer novog uređaja. Potrebno je također opisati način traženja grešaka tijekom razvoja novih perifernih uređaja korištenjem programa za tu namjenu (debuggers). Diplomskom radu priložiti napisani kod te citirati korištenu literaturu i navesti dobivenu pomoć.

I. Ivanković, Automatizirano testiranje uz pomoć alata AFL (Automated testing using the AFL tool), diplomski rad br. 3053, FER, Sveučilište u Zagrebu, srpanj 2022.

Ranjivosti u programskoj podršci su značajan vektor napada preko kojega se kompromitiraju sustavi. Iz tog razloga vrlo je bitno otkriti ranjivosti i ukloniti ih. Međutim, to je vrlo težak zadatak budući da u iole složenijoj programskoj podršci nije moguće provjeriti sve moguće puteve kroz kod, što ovisi o ulaznim podacima, ali i o njihovom sadržaju. Često korištena metoda za otkrivanje ranjivosti je neizrazito testiranje (engl. fuzzing). U osnovi, radi se o nasumičnom generiranju podataka koji se potom predaju sustavu koji se testira te se promatra njegov odziv na temelju čega se zaključuje je li došlo do pogreške. Dodatno se takva testiranja za složenije sustave odvijaju u virtualiziranim okolinama, kakav je primjerice QEMU. U sklopu ovog diplomskog rada potrebno je istražiti mogućnosti alata American fuzzy lop (AFL) koji se koristi za neizrazito testiranje i njegovu integraciju s alatom QEMU. Ispitati sustav traženja pogrešaka na nekim primjerima te složiti metodologiju testiranja cijelog operacijskog sustava koji se izvršava unutar QEMU.

Ostali diplomski radovi

S. Bakula, Sustav za analizu te analiza komentara novinskih članaka (System for analysis, and analysis of news articles comments), diplomski rad br. 3060, FER, Sveučilište u Zagrebu, rujan 2022.

Internet je omogućio nastanak mnogih portala koji prenose ili generiraju vijesti iz lokalnog, regionalnog, nacionalnog ili svjetskog života. Internet je također omogućilo rast društvenih mreža koje nude uslugu komentiranja vijesti koje se objave. Te podatke zanimljivo je analizirati iz raznih razloga. Analize mogu biti, primjerice, koje vijesti su najkomentiranije, tko komentira i kada, na koliko portala se istovremeno komentira. To su primjeri samo jednostavnijih analiza, a moguće su i složenije analize koje bi dale uvid u stanje tog dijela društvenog života. U sklopu ovog diplomskog rada potrebno je složiti sustav za analizu komentara koji se ostavljaju na novinske članke korištenjem ELK stoga. Korištenjem tog sustava potom treba napraviti analizu virtualnih osoba koje komentiraju - cilj je utvrditi mogu li se korelirati lažni profili koje otvara jedna osoba te doći do podatka koliko je to prisutno. Omogućiti vizualizaciju dobijenih podataka. Sustav mora biti napravljen na takav način da omogući jednostavno dodavanje novih analiza. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Brcković, Ispitivanje alata za provođenje napada društvenim inženjeringom i treniranje zaposlenika (Evaluation of tools for social engineering attacks and training of employees), diplomski rad br. 3057, FER, Sveučilište u Zagrebu, srpanj 2022.

Jedan od temeljnih vektora napada na korisnike je slanje phishing poruka elektroničke pošte koje potom vode žrtvu na stranice na kojima se traže povjerljivi podaci. Zaštita od takvih napada je jako teška, a edukacija je svakako jedan od temeljnih načina na koji se to postiže. Iz tog razloga napravljen je niz alata koji služe za provođenje napada društvenim inženjeringom, ali i alata koji se koriste za treniranje zaposlenika kao i za provođenje napada. Ti alati dijele određene zajedničke karakteristike te su zbog toga srodni. U sklopu diplomskog rada potrebno je pronaći i proučiti alate za provođenje napada društvenim inženjeringom te za treniranje zaposlenika kako bi bili otporni od takvih napada. Demonstrirati rad tih alata na nekom kontroliranom primjeru, a također razviti mehanizme za procjenu rizika od napada društvenim inženjeringom. Citirati korištenu literaturu i navesti dobivenu pomoć.

B. Skendrović, Model strojnog učenja za detekciju kompromitiranih web-stranica u hrvatskom domenskom prostoru (Machine learning model for detection of malicious web pages in Croatian domain space), diplomski rad br. 3064, FER, Sveučilište u Zagrebu, rujan 2022.

Količina aktivnih web stranica na internetu se broji u stotinama milijuna te njihov broj neprestano raste. Shodno tome, sve je više napadnutih stranica koje napadači kompromitiraju postupcima poput trovanja tražilica (engl. SEO poisoning), zlonamjerno oglašavanje (engl. malvertising). No sigurnost web prostora i web stranica je sve zahtjevniji i izazovniji zadatak, a ručne metode provjere stranica postaju nedostatne i nepouzdane. Strojno učenje pruža zanimljive i obećavajuće tehnike detekcije malicioznih web stranica. U sklopu diplomskog rada potrebno je pronaći maliciozne skupove podataka za treniranje detekcije kompromitiranih web stranica. Također, potrebno je istražiti i odabrati prikladne algoritme strojnog učenja za navedeni problem. Korištenjem pronađenih malicioznih skupova potrebno je istrenirati model strojnog učenja koji otkriva je li zadana stranica kompromitirana ili ne. Istrenirane modele strojnog učenja potrebno je potom ispitati na web stranicama u hrvatskom domenskom prostoru. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

Cyber Conflict Simulator

I. Ljubičić, Automatizirano postavljanje kibernetičkog poligona za potrebe kibernetičkih vježbi (), završni rad br. 760, FER, Sveučilište u Zagrebu, rujan 2022.

Kibernetičke vježbe bitan su dio izgradnje sposobnosti obrane tvrtki. Svrha kibernetičkih vježbi je uvježbavanje timova koji brane neki informacijski sustav kako bi u slučaju stvarnih napada reagirali što bolje i na taj način umanjili štetu koja nastaje organizaciji. Za provođenje vježbi potrebno je imati odgovarajući informacijski sustav koji će plavi tim braniti, a crveni napadati. S obzirom da se produkcijski sustavi ne smiju napadati, koriste se sintetički informacijski sustavi koji se nazivaju kibernetički poligoni. Kako bi se omogućilo višestruko korištenje komponenti kibernetičkih poligona i modularno postavljanje zadataka za uvježbavanje, korisno je u što većoj mjeri automatizirati postavljanje kibernetičkog poligona i simuliranog informacijskog sustava. U sklopu završnoga rada potrebno je istražiti tehnologije za opisivanje i postavljanje IT sustava pomoću koda, iskoristiti istražene tehnologije za postavljanje kibernetičkog poligona s barem jednim zadatkom za vježbu te naposljetku demonstrirati rješavanje postavljenih zadataka. Razvijeno rješenje mora biti modularno i u razvijenom poligonu mora biti moguće zadavati dodatne zadatke bez značajnih izmjena u kodu. Citirati korištenu literaturu i navesti dobivenu pomoć.

T. Šupljika, Vizualizacija podataka prikupljenih tijekom upravljanja incidentom (), završni rad br. 737, FER, Sveučilište u Zagrebu, srpanj 2022.

Kada u nekoj organizaciji dođe do sigurnosnog incidenta aktiviraju se mehanizmi čija zadaća je utvrditi kako je do incidenta došlo, što se trenutno dešava te je glavni cilj ukloniti incident, tj. ukloniti napadača iz sustava. Što je incident složeniji to u njegovom rješavanju sudjeluje više ljudi različitih profila i vještina, a istovremeno se generiraju značajne količine podataka. Procesom rješavanja incidenta upravlja jedna osoba koja koordinira sve aktivnosti i donosi odluke o postupanjima. Zbog tolike količine podataka vrlo je teško koordinirati složene incidente te su potrebna rješenja koja će omogućiti vizualizaciju prikupljenih podataka. U sklopu ovog završnog rada potrebno je implementirati prototipni sustav koji bi vizualizirao podatke prikupljene tijekom rješavanja incidenta. Minimalno je potrebno implementirati vremensku crtu na kojoj se nalaze naznačeni događaji prikupljeni tijekom rješavanja incidenta, a potrebno je razmotriti mogućnost korištenja i drugih metoda vizualizacije. Sustav treba biti implementiran u obliku Web aplikacije. Citirati korištenu literaturu i navesti dobivenu pomoć.

K. Zadrić, Pregled fizičkih i hibridnih simulacijskih okvira za simulaciju kibernetičkih napada koji imaju posljedice u fizičkom svijetu (), završni rad br. 761, FER, Sveučilište u Zagrebu, srpanj 2022.

Posljednjih godina, uz klasične napade na IT infrastrukturu, sve češće se pojavljuju napadi i na infrastrukturu industrijskih sustava. Takvi napadi mogu izazvati fizičku štetu na proizvodnom procesu kojim se upravlja, a posljedično ugroziti život i zdravlje ljudi. Zbog skupe fizičke infrastrukture i nemogućnosti testiranja na sustavima koji su u neprekidnom pogonu postoji potreba za razvojem simulacijskih okvira za istraživanje o mogućim posljedicama takvih napada. U sklopu ovog završnog rada potrebno je napraviti pregled postojećih fizičkih I hibridnih simulacijskih okvira za kibernetičke napade koji simuliraju nastanak fizičke štete na sustavu. Završni rad treba sadržavati pregled postojećih rješenja fizičkih i hibridnih simulacijskih okvira za kibernetičke napade s ukratko opisanim svakim pojedinim okvirom te sumiranim relevantnim informacijama vezanima za okvir kao što su opis fizičkog procesa koji je simuliran, licenciranje, cijena, ponovljivost eksperimenta, skalabilnost, vjernost dobivenih rezultata itd. Citirati korištenu literaturu i navesti dobivenu pomoć.

D. Filipović, Programska podrška za planiranje i provođenje kibernetičkih napada na zadanom informacijskom sustavu (), završni rad br. 769, FER, Sveučilište u Zagrebu, rujan 2022.

Tijekom planiranja napada za potrebe provođenja kibernetičkih vježbi potrebno je imati definirano okruženje u kojemu se napad provodi, a također je potrebno voditi računa o raspoloživim resursima. Pri tome je izazov što tijekom planiranja napada potencijalno nisu poznati svi detalji okruženja već kako se napad razvija, tako napadač saznaje sve više o okolini u kojoj se nalazi i mijenja svoje ponašanje. Dodatno, moguće je da se planirane aktivnosti ne mogu provesti iz raznih razloga. U sklopu ovog završnog rada potrebno je ispitati mogućnost integracije alata za planiranje napada s podacima o informacijskom sustavu koji se napada. Nadalje, treba razraditi načine kako prikazati i upravljati alternativnim pravcima napada na informacijski sustav te kako upravljati planom napada u ovisnosti o novim informacijama koje se saznaju o informacijskom sustavu tijekom pada.

Sigurnost HR Web prostora (projekt eŠkole)

A. Brajković, Detekcija korištenih web tehnologija upotrebom alata Wappalyzer (), završni rad br. 762, FER, Sveučilište u Zagrebu, srpanj 2022.

U današnje vrijeme se od svake tvrtke očekuje da posjeduju vlastita web sjedišta. Za mnoge je tvrtke to zahtjevno pa se koriste razna CMS (engl. Content Management System) rješenja koja pojednostavljuju i ubrzavaju njihovu izradu. Za mnoge CMS-ove nije potrebno nikakvo prethodno programersko znanje te je njihova uporaba, za mnoge tvrtke, isplativa i pristupačna. No većina CMS-ova je otvorenog koda koji napadači proučavaju i pronalaze ranjivosti koje se onda mogu iskoristiti. Stoga je važno što ranije detektirati kada web stranica koristi ranjivu verziju CMS-a jer napad na takvu stranicu može rezultirati velikim financijskim gubicima za tvrtku, snižavanjem reputacije, krađom osjetljivih podataka klijenata i sl. U sklopu završnog rada potrebno je istražiti mogućnosti alata Wappalyzer. Potrebno je istražiti koje sve tehnike Wappalyzer koristi za otkrivanje korištenih tehnologija na Web sjedištu te usporediti verziju otvorenog koda koja se može dohvatiti s GitHuba i verziju alata koji se izvršava u oblaku. Ispitati lokalnu verziju nad podacima koji će biti dani kandidatu i utvrditi kolika je uspješnost detekcije u danom skupu podataka. Citirati korištenu literaturu i navesti dobivenu pomoć.

F. Domović, Detekcija promjene Web-stranice temeljem analize njene strukture (), završni rad br. 763, FER, Sveučilište u Zagrebu, srpanj 2022.

Na Internetu je aktivno stotine milijuna web stranica. One olakšavaju razmjenu informacija i omogućuju korištenje brojnih usluga. Zbog broja korisnika koji redovito posjećuju web stranice i putem njih razmjenjuju podatke te web tražilica koje ih indeksiraju, napadačima je u interesu kompromitirati web stranice te u njih ugraditi vlastite komponente. Te komponente mogu, između ostalog, služiti za maliciozno oglašavanje, širenje zloćudnog koda i krađu osobnih podataka. Zbog količine web stranica na Internetu i kreativnih načina kojima napadači prikrivaju ubačene komponente, vrlo je zahtjevno otkrivati i tražiti takve komponente ručno. Također, kod web pauka (engl. crawlera) bi rješenje obrnutog problema, tj. otkrivanje stranica koje ne sadrže promjene strukture, omogućilo izbjegavanje suvišnog dohvaćanja web stranica i smanjio potrebu za diskovnim prostorom. U sklopu završnog rada potrebno je istražiti kako se struktura HTML-a može koristiti za detekciju promjene web stranica. Potrebno je razviti rješenje koji će na temelju dvaju zadanih struktura HTML dokumenata uspoređivati i detektirati razlike te utvrditi je li web stranica promijenjena. Nadalje, potrebno je istražiti kako se i na koji način HTML dokument može filtrirati (odstraniti atribute, sadržaje teksta i sl.) kako bi se pospješili rezultati otkrivanja promjena. Naposljetku, potrebno je testirati rješenje nad podacima dohvaćenih web-paukom, među kojima se nalaze i označeni primjeri web stranica za koje je poznato da sadrže zlonamjerno ubačene HTML komponente. Na temelju rezultata potrebno je odgovoriti na pitanje može li se struktura HTML dokumenta koristiti za detekciju promjene stranica te može li se na temelju takve detekcije utvrditi maliciozna promjena. Citirati korištenu literaturu i navesti dobivenu pomoć.

T. Dujmović, Detekcija i analiza obfusciranih i minificiranih JavaScript biblioteka (), završni rad br. 764, FER, Sveučilište u Zagrebu, srpanj 2022.

Obfuskacija je postupak kojim se nešto čini težim za razumjeti. Kod programskog koda se ona koristi kako bi se zaštitilo intelektualno vlasništvo ili poslovna tajna te spriječilo reverzno inženjerstvo programa. Minifikacija je postupak uklanjanja nepotrebnih ili suvišnih podataka nekog resursa bez utjecaja na njegovo izvršavanje, a kod programskog koda se odnosi na uklanjanje suvišnog koda, skraćivanje naziva funkcija i varijabli, uklanjanje komentara, formatiranja koda i sl. U kontekstu JavaScript biblioteka, obfuskacija otežava čitanje i modifikaciju JavaScript koda na Web-stranicama kako napadač ne bi mogao iskoristiti slabosti nezaštićenog koda. No, s pojavom brojnih algoritmima obufskacije i deobfuskacije, postavlja se pitanje kolika je snaga obfuskacije sa sigurnosnog aspekta, tj. koliko je ta tehnika dobra kod zaštite koda. Oko 97% modernih web stranica koristi JavaScript, stoga problem njegove zaštite sve više poprima na značaju. U završnom radu potrebno je istražiti metode i alate za obfuskaciju i minifikaciju JavaScript biblioteka. Zatim je potrebno istražiti koji su najpopularniji obfuskatori, deobfuskatori i minifikatori te parametre obfuskacije koje isti primaju. Također, potrebno je istražiti zašto se radi obfuskacija i minifikacija te gdje se ona primjenjuje. Potrebno je razviti rješenje koje će detektirati koja je biblioteka obfuscirana, a koja minificirana. Program treba ispitati nad podacima dohvaćenih web paukom i odrediti koliko je prisutna obfuskacija, a koliko minimizacija u hrvatskom domenskom prostoru. Citirati korištenu literaturu i navesti dobivenu pomoć.

Na temelju ovog završnog rada napisan je znanstveni rad Dujmović, Toni, et al. "Detection and Analysis of Obfuscated and Minified JavaScript in the Croatian Web Space." 2023 46th MIPRO ICT and Electronics Convention (MIPRO). IEEE, 2023.

S. Lončarević, Detekcija JavaScript biblioteka i njihovih dodataka korištenjem identifikatora i kriptografskih sažetaka (), završni rad br. 765, FER, Sveučilište u Zagrebu, srpanj 2022.

Na Internetu su dostupne stotine milijuna web stranica koje olakšavaju razmjenu informacija i omogućuju korištenje brojnih usluga. Uslijed loših praksi u održavanju, brojne web stranice koriste zastarjele i ranjive komponente, poput JavaScript biblioteka ili sustava za upravljanje sadržajem (engl. Content Management System, CMS). Napadači mogu zloupotrijebiti ranjivosti takvih komponenti kako bi ostvarili svoje ciljeve, poput izmjene sadržaja Web-stranica, napadanja njihovih posjetitelja, širenja neželjeni poruka i širenja zloćudnog koda. Pronalaženje ranjivih i zastarjelih komponenti bilo bi korisno jer bi se na stranicama koje ih sadrže moglo aktivnije tražiti znakove kompromitacije i proaktivno obavijestiti njihove vlasnike o pronađenim problemima. Zbog brojnosti Web-stranica na Internetu nemoguće je to obaviti bez automatizacije te je za njihovo otkrivanje i prioritiziranje važan razvoj automatskih metoda detekcije. U završnom radu potrebno je razviti rješenje koje za zadanu JavaScript datoteku utvrditi radi li se o nekoj od popularnih JavaScript biblioteka, poput jQuery, Bootstrap ili AngularJS. Nadalje, potrebno je istražiti kako se JavaScript biblioteku može obraditi kako bi se pospješilo rezultate prepoznavanja nepoznate JavaScript datoteke. Rješenje je potrebno evaluirati nad zadanim skupom podataka s JavaScript bibliotekama i prokomentirati dobivene rezultate. Citirati korištenu literaturu i navesti dobivenu pomoć.

Na temelju ovog završnog rada napisan je znanstveni rad Lončarević, Saša, et al. "Detecting JavaScript libraries using identifiers and hashes." 2023 46th MIPRO ICT and Electronics Convention (MIPRO). IEEE, 2023.

V. Pagon, Detekcija JavaScript biblioteka i njihovih dodataka korištenjem identifikatora i kriptografskih sažetaka (), završni rad br. 766, FER, Sveučilište u Zagrebu, srpanj 2022.

Na Internetu su dostupne stotine milijuna web stranica koje olakšavaju razmjenu informacija i omogućuju korištenje brojnih usluga. Uslijed loših praksi u održavanju, brojne web stranice koriste zastarjele i ranjive komponente, poput JavaScript biblioteka ili sustava za upravljanje sadržajem (eng. Content Management System, CMS). Napadači mogu zloupotrijebiti ranjivosti takvih komponenti kako bi ostvarili svoje ciljeve, poput izmjene sadržaja web stranica, napadanja njihovih posjetitelja, širenja neželjenih poruka i širenja zloćudnog koda. Pronalaženje ranjivih i zastarjelih komponenti bilo bi korisno jer bi se na stranicama koje ih sadrže moglo aktivnije tražiti znakove kompromitacije i proaktivno obavijestiti njihove vlasnike o pronađenim problemima. Zbog brojnosti Web-stranica na Internetu to je teško izvesti bez automatizacije te je za njihovo otkrivanje i prioritiziranje važan razvoj automatskih metoda detekcije. U završnom radu potrebno je razviti rješenje koje za zadanu JavaScript biblioteku otkriva njezinu verziju. Potrebno je napisati program koji provjerava razlike između dvije verzijski susjedne biblioteke i izdvaja specifičnosti, tj. dijelove koji su promijenjeni u novijoj verziji. Razvijeno rješenje je potrebno testirati nad zadanim skupom podataka s JavaScript bibliotekama te diskutirati uspješnost pronalaska razlika između uspoređivanih verzija biblioteka. Također, potrebno je analizirati duplicirane (engl. forked) JavaScript biblioteke, koje ne odgovaraju službenim verzijama, te prokomentirati razloge i učestalost dupliciranja JavaScript biblioteka, uključujući posljedice takvih praksi po pitanju kibernetičke sigurnosti. Za kraj, nad skupom podataka potrebno je istražiti učestalost ažuriranja dupliciranih JavaScript biblioteka. Citirati korištenu literaturu i navesti dobivenu pomoć.

Ostali završni radovi

L. Grgurić-Mileusnić, Implementacija algoritma LZP3 za kompresiju (), završni rad br. 556, FER, Sveučilište u Zagrebu, srpanj 2022.

Firmware za programirljive logičke kontrolere (engl. Programmable logic controller, PLC) tvrtke Siemens isporučuje se u arhivi koja je komprimirana nestandardnom varijantom LZP algoritma zbog čega je otežana njena dekompresija. To otežava pristup kodu unutar arhive te njenu analizu radi traženja sigurnosnih propusta. U sklopu ovog završnog rada potrebno je istražiti korišteni algoritam za komprimiranje (pretpostavka je da s radi o LZP3 algoritmu) te napraviti dekompresor. Također, potrebno je istražiti potencijalne zaštite kojima podliježe navedeni algoritam, a koje mogu spriječiti javnu objavu implementacije. Priložiti završnom radu opis algoritma, implementaciju te citirati korištenu literaturu i navesti dobivenu pomoć.

T. Ivasić, Sustav za automatizirano testiranje fiskalnih blagajni (), završni rad br. 754, FER, Sveučilište u Zagrebu, srpanj 2022.

Kako bi se spriječilo crno tržište u RH uvedene su fiskalne blagajne čija zadaća je da svaki izdani račun prijave Poreznoj upravi. Međutim, fiskalne blagajne rade razni proizvođači programske podrške te se postavlja pitanje koliko su implementacije ispravne, odnosno, bez pogrešaka u kodu. Dodatno, zbog toga što je u proces prijave uključena kriptografija to znači da je vjerojatnost pogreške još veća budući da upotreba kriptografije, a posebno certifikata i digitalnog potpisa, nije toliko raširena. Zbog svega toga oportuno je razviti sustav koji bi omogućio ispitivanje ispravnosti implementacije fiskalnih blagajni. U sklopu ovog završnog rada potrebno je razviti proširiv sustav za ispitivanje ispravnost zahtjeva koje šalju fiskalne blagajne te manipulaciju odgovorima kako bi se ispitala ispravna reakcija fiskalnih blagajni na pogreške. Voditi računa o lakoći korištenja sustava, automatizaciji testiranja te mogućnosti istovremenog pristupa više korisnika. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2020/2021

Diplomski radovi

Borba protiv govora mržnje, lažnih vijesti i slično

I. Bratović, Sustav za prikupljanje novinskih članaka s portala i pridruženih komentara na društvenim mrežama (System for collecting news articles from portals and their associated comments on social networks), diplomski rad br. 2658, FER, Sveučilište u Zagrebu, srpanj 2021.

Internet je omogućio nastanak mnogih portala koji prenose ili generiraju vijesti iz lokalnog, regionalnog, nacionalnog ili svjetskog života. Internet je također omogućilo rast društvenih mreža koje nude uslugu komentiranja vijesti koje se objave. Te podatke zanimljivo je analizirati iz raznih razloga. Primjerice, koji portali su najposjećeniji, koje vijesti su najkomentiranije, tko komentira i kada, na koliko portala se istovremeno komentira. To su primjeri samo jednostavnijih analiza, a moguće su i složenije analize koje bi dale uvid u stanje tog dijela društvenog života. Izazov je pratiti kada se objavljuju novi članci, a potom ih dohvatiti zajedno s komentarima. Također, treba uzeti u obzir da broj komentara s vremenom raste pa treba odrediti kada je najbolje vrijeme za dohvat. U sklopu ovog diplomskog rada potrebno je napraviti sustav praćenja objave novih članaka koji potom dohvaća članak i pridružene komentare i pohranjuje ih u bazu. Sustav treba biti temeljen na Twisted ili nekom sličnom okviru. Za praćenje rada sustava potrebno je koristiti Grafanu. Istražiti baze koje bi se mogle koristiti za pohranu podataka te odabrati neku od njih na temelju jasno definiranih kriterija. Sustav mora biti napravljen tako da bude lako proširiv te u skladu sa svim dobrim praksama programskog inženjerstva. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Lovrec, Sustav za provođenje analize novinskih članaka i pridruženih komentara na društvenim mrežama (System for analysis of news on portals and associated comments on social networks), diplomski rad br. 2653, FER, Sveučilište u Zagrebu, srpanj 2021.

Internet je omogućio nastanak mnogih portala koji prenose ili generiraju vijesti iz lokalnog, regionalnog, nacionalnog ili svjetskog života. Internet je također omogućio rast društvenih mreža koje nude uslugu komentiranja vijesti koje se objave. Te podatke zanimljivo je analizirati iz raznih razloga. Primjerice, koji portali su najposjećeniji, koje vijesti su najkomentiranije, tko komentira i kada, na koliko portala se istovremeno komentira. To su primjeri samo jednostavnijih analiza, a moguće su i složenije analize koje bi dale uvid u stanje tog dijela društvenog života. U sklopu ovog diplomskog rada potrebno je istražiti mogućnosti analize podataka o novinskim člancima te komentarima koji se ostavljaju ispod novinskih članaka. Na temelju definiranih analiza izgraditi sustav koji će omogućiti obavljanje analize i vizualizaciju dobivenih podataka. Sustav mora biti napravljen na takav način da omogući jednostavno dodavanje novih analiza. Citirati korištenu literaturu i navesti dobivenu pomoć.

Š. Matešić, Biblioteka za dohvat novinskog članka s portala i pridruženih komentara na društvenim mrežama (Library for downloading news article on portals and associated comments on social networks), diplomski rad br. 2652, FER, Sveučilište u Zagrebu, srpanj 2021.

Internet je omogućio nastanak mnogih portala koji prenose ili generiraju vijesti iz lokalnog, regionalnog, nacionalnog ili svjetskog života. Internet je također omogućilo rast društvenih mreža koje nude uslugu komentiranja vijesti koje se objave. Te podatke zanimljivo je analizirati iz raznih razloga. Primjerice, koji portali su najposjećeniji, koje vijesti su najkomentiranije, tko komentira i kada, na koliko portala se istovremeno komentira. To su primjeri samo jednostavnijih analiza, a moguće su i složenije analize koje bi dale uvid u stanje tog dijela društvenog života. Izazov je što su formati sustava za komentiranje različiti i složeni što otežava masovni dohvat članak i komentara. Primjerice, neki portali koriste Facebookov sustav komentiranja, neki Disqus, a dio ima i vlastiti sustav komentiranja. U sklopu ovog diplomskog rada potrebno je istražiti način kako se integriraju sustavi rasprave, tj. komentiranja u novinske članke na portalima. Također, potrebno je istražiti kako se mogu dohvatiti komentari s društvenih mreža vezani uz novinske članke. Na temelju tih analiza izgraditi Python biblioteku koji će za zadani članak dohvatiti tekst članka i njegove pridružene komentare. Biblioteka mora biti napravljen tako da bude lako proširiva s novim sustavima komentiranja i novim portalima. Također, mora biti u skladu sa svim dobrim praksama programskog inženjerstva. Dodatno, treba izraditi automatizirane detekcije promjena u Web stranicama s kojih se dohvaćaju podaci, kako bi se detektirale sve promjene koje mogu onemogućiti dohvat. Citirati korištenu literaturu i navesti dobivenu pomoć.

H. Fabris, Emulacija automatiziranih napadača u kibernetičkoj sigurnosti (Emulation of Automated Attackers in Cybersecurity), diplomski rad br. 2659, FER, Sveučilište u Zagrebu, srpanj 2021.

U kibernetičkoj sigurnosti su crveni timovi organizirane skupine stručnjaka koje u dogovoru s organizacijom nastoje kompromitirati njezin informacijski sustav i u njemu ostvariti neke postavljene ciljeve. Za razliku od penetracijskog testiranja, kod testiranja crvenim timovima se tehnike za pojedine korake napada mora pomno birati, kako ih branitelj ciljanog informacijskog sustava ne bi uočio i prekinuo napad, te kako bi napad što više odgovarao ponašanju stvarnih prijetnji. Problem kod takvog testiranja je da iziskuje velike resurse i angažman stručnjaka, zbog čega se u posljednje vrijeme razvijaju brojni alati za automatizaciju crvenih timova i emulaciju stvarnih prijetnji. U sklopu diplomskog rada je potrebno detaljno proučiti tehnike koje se koriste u razvoju agenata za emulaciju prijetnji, na temelju saznanja izgraditi model informacijskog sustava, te nad izgrađenim modelom demonstrirati rad nekoliko agenata za simulaciju prijetnji. Potrebno je usporediti tako dobivena rješenja i prokomentirati njihovu kvalitetu u kontekstu kibernetičke sigurnosti. Rješenje mora biti modularno i mora biti moguće bez značajnih izmjena razvijenog kôda mijenjati komponente informacijskog sustava, akcije koje agent može poduzimati, te dodavati nove agente. Dodatno, rješenje mora sadržavati komponentu za vizualizaciju modela informacijskog sustava. Radu priložiti izvorni kôd razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Ostale teme

T. Žukina, Detekcija ubačenih zlonamjernih HTML i JavaScript fragmenata u Web stranicama (Detecting injected malicous HTML and JavaScript fragments in Web pages), diplomski rad br. 2654, FER, Sveučilište u Zagrebu, srpanj 2021.

Web je danas sveprisutna tehnologija na kojoj se temelje mnoge aktivnosti. Zahvaljujući Webu informacije se brže prenose nego ikada, a istovremeno imaju daleko širi doseg nego su to imale druge metode u povijesti. Međutim, Web nije bez opasnosti. Napadači koriste Web kako bi u njega ubacili zlonamjerne HTML i JavaScript kodove uz pomoć kojih pokušavaju, direktno ili indirektno, ostvariti nekakvu zaradu. Pravovremena detekcija takvih stranica izuzetno je bitna kako bi se zaštitili svi oni koji pristupaju Webu, ali i da bi se sam Web ostao koristan. Detekcija ubačenih JavaScript i HTML fragmenata nije trivijalna te je mnoštvo predloženih metoda koje pokušavaju riješiti taj problem. U sklopu ovog diplomskog rada potrebno je istražiti predložene načine detekcije ubačenih zlonamjernih HTML i JavaScript elemenata u Web stranice. Istražene metode trebaju za svoj rad koristiti isključivo HTML Web stranice, tj. nemaju mogućnosti pristupa izvornom kodu Web aplikacije. Na temelju tog istraživanja odabrati tri metode koje je potrebno implementirati te potom testirati na skupu podataka koje će biti dani na raspolaganje studentu. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

Cyber Threat Intelligence

D. Bezuk, Primjena alata ElasticSearch, LogStash i Kibana za analizu podataka o IP adresama (Application of ElasticSearch, LogStash and Kibana for analysis of IP addresses data), završni rad br. 7189, FER, Sveučilište u Zagrebu, srpanj 2021.

Alati za agregaciju podataka o mrežnoj aktivnosti vezanoj uz IP adrese vrlo su korisni za stvaranje situacijske svijesti o događanjima u mreži te vanjskim prijetnjama. Njihova zadaća je da iz sistemskih i operativnih zapisa koje dobiju od raznih uređaja i aplikacija ekstrahiraju podatke kao što su IP adrese te potom dohvate što je moguće više raspoloživih podataka s Interneta. Te podatke je potom potrebno obraditi i agregirati na način koji će omogućiti korisnicima donošenje zaključaka o izvorima prijetnje, a na temelju čega će se definirati strategija, taktika i tehnika obrane. U sklopu ovog završnog rada potrebno je proučiti sustave ElasticSearch, LogStash i Kibana te ispitati mogućnost njihova korištenja za pohranu podataka o IP adresama i drugim mrežnim artefaktima. Potrebno je usporediti te sustave sa Neo4J bazom. Također, ispitati mogućnost korištenja Grafana vizualizacijskog alata za prikaz stanja svih navedenih sustava. Citirati korištenu literaturu i navesti dobivenu pomoć.

N. Brašnović, Sustav dodataka za dohvat podataka o IP adresama i drugim mrežnim artefaktima iz izvora na Internetu (Plugin system for retrieval of data about IP addresses and other network artefacts from sources on the Internet), završni rad br. 7193, FER, Sveučilište u Zagrebu, srpanj 2021.

Alati za agregaciju podataka o mrežnoj aktivnosti vezanoj uz IP adrese vrlo su korisni za stvaranje situacijske svijesti o događanjima u mreži te vanjskim prijetnjama. Njihova zadaća je da iz sistemskih i operativnih zapisa koje dobiju od raznih uređaja i aplikacija ekstrahiraju podatke kao što su IP adrese te potom dohvate što je moguće više raspoloživih podataka s Interneta. Te podatke je potom potrebno obraditi i agregirati na način koji će omogućiti korisnicima donošenje zaključaka o izvorima prijetnje, a na temelju čega će se definirati strategija, taktika i tehnika obrane. U sklopu ovog završnog rada potrebno je pronaći i proučiti raspoložive izvore podataka o IP adresama i ostalim korisnim artefaktima te razviti sustav dodataka (engl. plugins) i same dodatke koji će omogućiti dohvat i agregaciju podataka. Za implementaciju sustava dodataka koristiti Python modul pluggy. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Gračner, Korištenje baze Neo4J za pohranu, obradu i vizualizaciju podataka o IP adresama i drugim mrežnim artefaktima (Using Neo4J database for storage, processing and visualization of data abou IP addresses and other network artefacts), završni rad br. 139, FER, Sveučilište u Zagrebu, srpanj 2021.

Alati za agregaciju podataka o mrežnoj aktivnosti vezanoj uz IP adrese vrlo su korisni za stvaranje situacijske svijesti o događanjima u mreži te vanjskim prijetnjama. Njihova zadaća je da iz sistemskih i operativnih zapisa koje dobiju od raznih uređaja i aplikacija ekstrahiraju podatke kao što su IP adrese te potom dohvate što je moguće više raspoloživih podataka s Interneta. Te podatke je potom potrebno obraditi i agregirati na način koji će omogućiti korisnicima donošenje zaključaka o izvorima prijetnje, a na temelju čega će se definirati strategija, taktika i tehnika obrane. U sklopu ovog završnog rada potrebno je proučiti sustav za pohranu podataka Neo4J te ga ispitati na primjeru IP adresa i drugih mrežnih artefakata. Potrebno je također istražiti mogućnosti vizualizacije tako pohranjenih podataka i mogućnosti njihove analize. Bazu Neo4J potrebno je integrirati u Django okvir. Citirati korištenu literaturu i navesti dobivenu pomoć.

K. Lončar, Web klijent za pregled i manipulaciju IP adresa i drugih mrežnih artefakata (Web client for review and manipulation of IP addresses and other network artefacts), završni rad br. 7201, FER, Sveučilište u Zagrebu, srpanj 2021.

Alati za agregaciju podataka o mrežnoj aktivnosti vezanoj uz IP adrese vrlo su korisni za stvaranje situacijske svijesti o događanjima u mreži te vanjskim prijetnjama. Njihova zadaća je da iz sistemskih i operativnih zapisa koje dobiju od raznih uređaja i aplikacija ekstrahiraju podatke kao što su IP adrese te potom dohvate što je moguće više raspoloživih podataka s Interneta. Te podatke je potom potrebno obraditi i agregirati na način koji će omogućiti korisnicima donošenje zaključaka o izvorima prijetnje, a na temelju čega će se definirati strategija, taktika i tehnika obrane. U sklopu ovog završnog rada potrebno je implementirati klijentski sustav korištenjem Angular okvira koji će omogućiti pregled podataka vezanih uz IP adrese i druge mrežne artefakte kao i njihovu vizualizaciju. Prilikom izrade sustava treba obratiti pozornost na sigurnost sustava i zaštitu API-ja. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Trejić, Poslužiteljski sustav za pohranu i manipulaciju IP adresama i drugim mrežnim artefaktima (Server system for storage and manipulation of IP addresses and other network artefacts), završni rad br. 240, FER, Sveučilište u Zagrebu, srpanj 2021.

Alati za agregaciju podataka o mrežnoj aktivnosti vezanoj uz IP adrese vrlo su korisni za stvaranje situacijske svijesti o događanjima u mreži te vanjskim prijetnjama. Njihova zadaća je da iz sistemskih i operativnih zapisa koje dobiju od raznih uređaja i aplikacija ekstrahiraju podatke kao što su IP adrese te potom dohvate što je moguće više raspoloživih podataka s Interneta. Te podatke je potom potrebno obraditi i agregirati na način koji će omogućiti korisnicima donošenje zaključaka o izvorima prijetnje, a na temelju čega će se definirati strategija, taktika i tehnika obrane. U sklopu ovog završnog rada potrebno je implementirati poslužiteljski sustav korištenjem Django okvira koji će omogućiti pregled podataka vezanih uz IP adrese i druge mrežne artefakte kao i njihovu vizualizaciju. Sustav također treba implementirati REST API koji će omogućiti unos podataka iz, primjerice, sistemskih i operativnih zapisa koje generira CheckPoint vatrozid. Prilikom izrade sustava treba obratiti pozornost na sigurnost sustava i zaštitu API-ja. Citirati korištenu literaturu i navesti dobivenu pomoć.

Sigurnost fiskalnih blagajni

A. Magaš, Razvoj dodataka za provjeru ispravnosti zahtjeva fiskalnih blagajni i manipulaciju odgovorima (Development of plugins for validation of request correctness sent by fiscal cash registers and response manipulation), završni rad br. 27 FER, Sveučilište u Zagrebu, srpanj 2021.

Kako bi se spriječilo crno tržište u RH uvedene su fiskalne blagajne čija zadaća je da svaki izdani račun prijave Poreznoj upravi. Međutim, fiskalne blagajne rade razni proizvođači programske podrške te se postavlja pitanje koliko su implementacije ispravne, odnosno, bez pogrešaka u kodu. Dodatno, zbog toga što je u proces prijave uključena kriptografija to znači da je vjerojatnost pogreške još veća budući da upotreba kriptografije, a posebno certifikata i digitalnog potpisa, nije toliko raširena. Zbog svega toga oportuno je razviti sustav koji bi omogućio ispitivanje ispravnosti implementacije fiskalnih blagajni. U sklopu ovog završnog rada potrebno je razviti proširiv sustav temeljen na dodacima (engl. Plugins) za ispitivanje ispravnost zahtjeva koje šalju fiskalne blagajne te manipulaciju odgovorima kako bi se ispitala ispravna reakcija fiskalnih blagajni na pogreške. Citirati korištenu literaturu i navesti dobivenu pomoć.

T. Prhat, Implementacija poslužiteljskog sustava za ispitivanje ispravnosti fiskalnih blagajni (Implementation of server system for testing correctes of fiscal cash registers), završni rad br. 26, FER, Sveučilište u Zagrebu, srpanj 2021.

Kako bi se spriječilo crno tržište u RH uvedene su fiskalne blagajne čija zadaća je da svaki izdani račun prijave Poreznoj upravi. Međutim, fiskalne blagajne rade razni proizvođači programske podrške te se postavlja pitanje koliko su implementacije ispravne, odnosno, bez pogrešaka u kodu. Dodatno, zbog toga što je u proces prijave uključena kriptografija to znači da je vjerojatnost pogreške još veća budući da upotreba kriptografije, a posebno certifikata i digitalnog potpisa, nije toliko raširena. Zbog svega toga oportuno je razviti sustav koji bi omogućio ispitivanje ispravnosti implementacije fiskalnih blagajni. U sklopu ovog završnog rada potrebno je razviti poslužiteljski sustav koji prihvaća upite od fiskalnih blagajni te generira odgovore koji se potom vraćaju klijentu. Sustav mora omogućiti korištenje dodataka (engl. plugins) koji omogućavaju provjeru ispravnosti zahtjeva fiskalnih blagajni te manipulaciju odgovora radi ispitivanja korektnosti implementacije blagajni. Obratiti pozornost na vođenje evidencije o provedenim testovima te testovima koje je tek potrebno provesti. Potrebno je također implementirati klijentsku aplikaciju koja imitira pojednostavljenu fiskalnu blagajnu. Citirati korištenu literaturu i navesti dobivenu pomoć.

V. Prpić, Web aplikacija za upravljanje ispitivanjem fiskalnih blagajni (Web application for management of fiscal cash register testing), završni rad br. 273, FER, Sveučilište u Zagrebu, srpanj 2021.

Kako bi se spriječilo crno tržište u RH uvedene su fiskalne blagajne čija zadaća je da svaki izdani račun prijave Poreznoj upravi. Međutim, fiskalne blagajne rade razni proizvođači programske podrške te se postavlja pitanje koliko su implementacije ispravne, odnosno, bez pogrešaka u kodu. Dodatno, zbog toga što je u proces prijave uključena kriptografija to znači da je vjerojatnost pogreške još veća budući da upotreba kriptografije, a posebno certifikata i digitalnog potpisa, nije toliko raširena. Zbog svega toga oportuno je razviti sustav koji bi omogućio ispitivanje ispravnosti implementacije fiskalnih blagajni. U sklopu ovog završnog rada potrebno je razviti sustav na temelju okvira Django te Angular koji bi omogućio vlasnicima fiskalnih blagajni registraciju, prijavu blagajni za ispitivanje, provođenje i nadzor ispitivanja te pregled rezultata ispitivanja. Citirati korištenu literaturu i navesti dobivenu pomoć.

Sigurnost HR Web prostora (projekt eŠkole)

M. Bašić, Detekcija ubačenog zlonamjernog HTML koda na temelju HTML tagova u Web stranici (Detecting injected malicous HTML code based on HTML tags in Web page), završni rad br. 152, FER, Sveučilište u Zagrebu, srpanj 2021.

Web je danas sveprisutna tehnologija na kojoj se temelje mnoge aktivnosti. Zahvaljujući Webu informacije se brže prenose nego ikada, a istovremeno imaju daleko širi doseg nego su to imale druge metode u povijesti. Međutim, Web nije bez opasnosti. Napadači koriste Web kako bi u njega ubacili zlonamjerne HTML i JavaScript kodove uz pomoć kojih pokušavaju, direktno ili indirektno, ostvariti nekakvu zaradu. Pravovremena detekcija takvih stranica izuzetno je bitna kako bi se zaštitili svi oni koji pristupaju Webu, ali i da bi se sam Web ostao koristan. Detekcija ubačenih JavaScript i HTML fragmenata nije trivijalna te je mnoštvo predloženih metoda koje pokušavaju riješiti taj problem. U sklopu ovog završnog rada potrebno je istražiti mogućnost detekcije zlonamjerno ubačenog HTML koda korištenjem samo HTML tagova i njihove strukture. U tu svrhu potrebno je implementirati testnu skriptu te potom eksperimentirati na Web stranicama dohvaćenim s Interneta. Također, potrebno je ispitati korištenje navedene metode za usporedbu sličnosti Web stranica radi efikasnije pohrane podataka. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Srdarev, Tehnike otkrivanja ranjivosti web sjedišta s klijentske strane (Client-Side Website Vulnerability Detection Techniques), završni rad br. 221, FER, Sveučilište u Zagrebu, srpanj 2021.

Web sjedišta uslijed loših praksi u razvoju, konfiguraciji i održavanju mogu sadržavati brojne ranjivosti. Iskorištavanjem ranjivosti napadači mogu ostvariti pristup poslužiteljima na kojima su ta web sjedišta smještena i/ili računalima i Web preglednicima posjetitelja. Osim što je takve ranjivosti poželjno prijavljivati i otklanjati, može se očekivati i da će web sjedišta koja obiluju poznatim težim ranjivostima biti češće kompromitirana nego usporediva web sjedišta na kojima su iste odsutne, zbog čega se nameće potreba za učestalijim nadgledanjem ranjivih web sjedišta i povećanjem stupnja opreza njihovih posjetitelja. U sklopu završnoga rada potrebno je istražiti tehnike kojima se s klijentske strane može otkrivati ranjivosti web sjedišta, razviti rješenje koje na temelju preuzetih web stranica i popratnih sadržaja pronalazi što veći broj njihovih ranjivosti, te provesti evaluaciju razvijenog rješenja nad skupom podataka i prokomentirati dobivene rezultate. Rješenje mora uključivati testove i biti robusno. Radu priložiti izvorni kôd razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

J. Zubčić, Tehnike otkrivanja zloćudnog koda na web stranicama (Techniques for Detecting Malware on Websites), završni rad br. 232, FER, Sveučilište u Zagrebu, srpanj 2021.

Na Internetu je dostupno mnoštvo kompromitiranih i lažnih web sjedišta koja sadrže zloćudni kôd. Lažna web sjedišta mogu primjerice nuditi preuzimanje zaraženih dokumenata, a kompromitirane web trgovine mogu sadržavati zloćudni JavaScript kôd koji unesene osobne podatke i podatke o kreditnim karticama prosljeđuje napadačima. U sklopu završnoga rada potrebno je istražiti tehnike kojima se s klijentske strane može otkriti zloćudni kôd na web stranicama, razviti rješenje koje na temelju preuzetih web stranica i popratnih sadržaja nastoji pronaći i identificirati zloćudni kôd, te provesti evaluaciju razvijenog rješenja nad skupom podataka i prokomentirati dobivene rezultate. Rješenje mora uključivati testove i biti robusno. Radu priložiti izvorni kôd razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2019/2020

Diplomski radovi

Cyber Conflict Simulator

M. Krmpotić Đurđević, Programska podrška za planiranje i provođenje kibernetičkih napada, diplomski rad br. 2214, FER, Sveučilište u Zagrebu, srpanj 2020.

Pripremu kibernetičkih vježbi kojima se uvježbavaju branitelji najbolje je raditi tako da se prvo razrađuje tijek napada. Razrađivanjem i praćenjem provedbe napada i njegovih efekata određuju se potom događaji vidljivi branitelju. Na taj način dobija se konzistentan slijed događaja koji se prikazuje braniteljima. Na napadačkoj strani se pri tome pretpostavlja postojanje nekakve grupe ljudi određenih kompetencija. Izazov u takvom načinu pripreme predstavlja alokacija resursa napadača za provođenje napada te nesigurnost uspjeha pojedinih akcija. Dodatno, kompleknost značajno povećava interakcija branitelja. Iz tog razloga nužna je programska podrška za planiranje napada te vođenje evidencije o njegovu tijeku. Na temelju nekih eksperimenata utvrđeno je kako najveći potencijal imaju alati za planiranje i praćenje provedbe projekata, ali je pri tome nužno koristiti domensko specifično znanje - u ovom slučaju iz područja planiranja i provođenja napada, odnosno, iz kibernetičke sigurnosti. U sklopu ovog diplomskog rada potrebno je isprojektirati i implementirati alat koji bi organizatorima vježbe omogućio planiranje napada, uvrštavanje potencijalnih nesigurnosti u provedbi te praćenje provedbe. Alat bi također trebao omogućiti automatizirano planiranje alokacije pojedinih koraka napada u skladu s raspoloživim resursima. Korištenjem alata potrebno je prikazati planiranje i provođenje barem jednog zamišljenog napada. Opisati također iskustva stečena prilikom planiranja vježbi. Citirati korištenu literaturu i navesti dobivenu pomoć.

D. Šarić, Automatizacije kibernetičkih napada na kibernetičkim poligonima, diplomski rad br. 2319, FER, Sveučilište u Zagrebu, srpanj 2020.

Moderni informacijski sustavi podložni su napadima putem kibernetičkog prostora te su tvrtke svjesne te činjenice i za nju se odgovarajuće pripremaju. Jedna bitna komponenta tih priprema je treniranje ljudi koji održavaju takve sustave da prepoznaju napade te da ih na odgovarajući način uklone. Izazov je što uvježbavanje na stvarnim sustavima nije dozvoljeno budući da im se tijekom vježbe može naštetiti, a istovremeno, napadi nisu tako česti. Iz tog razloga teži se kreiranju simuliranih okolina unutar koji se provode vježbe. Takve vježbe primarno služe za uvježbavanje tehničkih sposobnosti te se nazivaju kibernetički poligoni (engl. cyber range). Bitna komponenta kibernetičkih poligona je modul za automatizaciju napada, odnosno emulaciju crvenih timova, jer je dosta teško naći kompetentne ljude za tu zadaću. U sklopu ovog diplomskog rada potrebno je istražiti metode automatizacije napada te kako se implementiraju na postojećim kibernetičkim poligonima. Nadalje, potrebno je istražiti koji alati otvorenog koda već postoje a koji bi se mogli koristiti za automatizaciju napada. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Kandić, Izrada i ispitivanje kibernetičkog poligona za uvježbavanje tehničkih sposobnosti, diplomski rad br. 2075, FER, Sveučilište u Zagrebu, veljača 2020.

Moderni informacijski sustavi podložni su napadima putem kibernetičkog prostora te su tvrtke svjesne te činjenice i za nju se odgovarajuće pripremaju. Jedna bitna komponenta tih priprema je treniranje ljudi koji održavaju takve sustave da prepoznaju napade te da ih na odgovarajući način uklone. Izazov je što uvježbavanje na stvarnim sustavima nije dozvoljeno budući da im se tijekom vježbe može naštetiti, a istovremeno, napadi nisu tako česti. Iz tog razloga teži se kreiranju simuliranih okolina unutar koji se provode vježbe. Takve vježbe primarno služe za uvježbavanje tehničkih sposobnosti te se nazivaju kibernetički poligoni (engl. cyber range). U sklopu ovog diplomskog rada potrebno je istražiti što čini kibernetičke poligone te kako se organiziraju takve vježbe. Nadalje, potrebno je istražiti koji alati otvorenog koda već postoje a koji bi se mogli koristiti za izradu kibernetičkog poligona. Konačno, potrebno je demonstrirati kibernetički poligon i jednu vježbu koja bi se odvijala na njemu. Citirati korištenu literaturu i navesti dobivenu pomoć.

Ostalo

I. Dujmić, Sustav za nadgledanu nadogradnju programskih komponenti, diplomski rad br. 2229, FER, Sveučilište u Zagrebu, srpanj 2020.

Jedna od temeljnih kontrola zaštite informacijske sigurnosti organizacija, koja se smatra i najboljom praksom, je redovita nadogradnja programske podrške u organizaciji. Nadogradnje se obično izdaju u ciklusima koji mogu biti kratki i po tjedan dana, a istovremeno postoje i izvanredne situacija koje se dešavaju kada se otkriju posebno kritične ranjivosti. Izazov u primjeni te kontrole predstavlja činjenica kako određene usluge nije moguće nadograditi, ili je vremenski period nadogradnje ograničen zbog čega organizacije koriste ranjivu programsku podršku te se izlažu prijetnjama koje mogu te ranjivosti iskoristiti. Razlog nemogućnosti nadogradnje je mogućnost da nakon nadogradnje nešto neće raditi zbog čega bi mogla nastati značajna šteta pa čak i gubici života. Kada bi se moglo jamčiti da programska podrška nakon nadogradnje radi identično kao i prije nadogradnje, omogućila bi se primjena nadogradnji u tim osjetljivim situacijama. U sklopu ovog diplomskog rada potrebno je razviti sustav koji će omogućiti paralelno izvršavanje dvije različite verzije aplikacije, jedne starije te njene nadograđene verzije. Sustav treba omogućiti usporedbu ponašanja tih dviju aplikacija s idejom da - ako nadograđena aplikacija radi kao i stara - razlike u njihovim ponašanjima moraju biti ograničene samo na parametre koji ovise o slučajnim brojevima. Tako razvijen sustav potrebno je ispitati na nizu aplikacija i utvrditi potencijalna ograničenja. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Rački, Detekcija fragmenata koda raspoloživih na portalu Stack Overflow u aplikacijama na GitHubu, diplomski rad br. 2232, FER, Sveučilište u Zagrebu, srpanj 2020.

Programeri u svom radu često koriste portale kao što je Stack Overflow. Za pretpostaviti je da tom prilikom kopiraju fragmente koda u svoje aplikacije koje potom u većoj ili manjoj mjeri prilagođavaju svojim potrebama. Tu pretpostavku, ako je točna, može se iskoristiti u nizu situacija. Primjerice, prilikom dekompajliranja koda moguće je detektirati te fragmente te poboljšati kvalitetu dekompajliranja. Isto tako, ako su fragmenti prisutni na StackOverflow ranjivi, moguće je detekcijom tih fragmenata detektirati ranjivosti u aplikacijama. Iz tog razloga zanimljivo je pitanje je li pretpostavka o čestom korištenju Stack Overflow točna, a također je pitanje mogu li se za početak, i kako teško, ti fragmenti detektirati u izvornim kodovima. U sklopu ovog diplomskog rada potrebno je istražiti mogućnosti prepoznavanja fragmenata koda objavljenih na Stack Overflow portalu te ispitati tu metodu na odabranom skupu aplikacija raspoloživih na repozitoriju koda GitHub. Radi prilagodbe složenosti zadatka odabrati jedan konkretan programski jezik, primjerice programski jezik Java. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

S. Bakula, Sigurnosni propusti aplikacija za Android operacijski sustav, završni rad br. 6807, FER, Sveučilište u Zagrebu, srpanj 2020.

Mobilne aplikacije sve se intenzivnije koriste u situacijama u kojima njihovom zloupotrebom može nastati značajna financijska šteta korisniku aplikacije, a također može doći i do narušavanja privatnosti. Temeljna zaštitna mjera od takvih zloupotreba je pisanje koda koji ne sadrži ranjivosti koje bi napadač mogao iskoristiti. Prvi korak u pisanju sigurnog koda je znati koje je pogreške moguće učiniti, potom je potrebno educirati programere i konačno, potrebno je automatizirati postupke otkrivanja takvih pogreški. To je dugotrajan i složen proces u kojemu treba krenuti s katalogiziranjem i upoznavanjem s pogreškama. U sklopu završnog rada potrebno je pronaći aplikaciju za Android operacijski sustav koja sadrži namjerno umetnute ranjivosti. Potom je potrebno proučiti te ranjivosti i demonstrirati iskorištavanje nekih od njih. Također, potrebno je istražiti mogu li se bar neke od tih ranjivosti detektirati strojnim putem. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

R. Benić, Izrada algoritma za izračun jedinstvenog otiska autora nekog programskog koda, završni rad br. 6831, FER, Sveučilište u Zagrebu, srpanj 2020.

Tijekom rješavanja incidenta zadaju se zadaće pojedinim specijalistima, primjerice, forenzičarima da provjere neko računalo ili administratorima da pregledaju sistemske i operativne zapise. Kada obave posao, specijalisti izvješća upućuju nadređenima koji na temelju njih donose odluke o daljnjem postupanju. Prilikom simulacije upravljanja incidentnom situacijom, nema na raspolaganju specijalista te se sva izvješća moraju generirati strojnim putem. Način na koji se to radi je da postoje predlošci koji se koriste, ali ti predlošci umanjuju realističnost simulacije. Iz tog razloga bilo bi dobro imati odgovarajuće modele temeljene na strojnom učenju koji bi generirali sintetička izvješća. U sklopu diplomskog rada potrebno je složiti metodologiju treniranja modela koji generiraju izvješća specijalista. Nadalje, potrebno je istražiti potencijalne primjere takvih izvješća te ih dohvatiti za potrebe treniranja modela. Korištenjem definirane metodologije i dohvaćenih primjera, treba istražiti mogućnost generiranja izvješća u simulatoru Cyber Conflict Simulator. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Brcković, Alati za analizu potencijalno zloćudnih računalnih dokumenata, završni rad br. 6829, FER, Sveučilište u Zagrebu, srpanj 2020.

Jedan od temeljnih vektora napada na korisnike je slanje phishing poruka elektroničke pošte koje sadrže u privitku nekakav maliciozni dokument. Dokument može primjerice biti u Word, PDF, ODT formatima. Kada korisnik otvori dokument on obavlja nekakvu zloćudnu akciju koja za posljedicu ima kompromitiranje korisnikovog računala, odnosno, omogućava se pristup napadaču. Zaštita od takvih napada je teška i obuhvaća nekoliko različitih aktivnosti, od kojih je jedna i analiza privitaka kako bi se utvrdila točna zloćudna funkcionalnost. Tijekom postupka analize alati su nužni jer bez njih posao nije moguće obaviti niti efektivno niti efikasno. U sklopu završnog rada potrebno je proučiti alate za analizu barem jednog formata dokumenta. Pokazati kako se u odabranoj vrsti dokumenta može ubaciti zloćudna funkcionalost te kako se može detektirati. Nadalje, treba pokazati kako alati pomažu u analizi. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Cvitanović, Slabosti kriptografske zaštite u bazi podataka MariaDB, završni rad br. 6808, FER, Sveučilište u Zagrebu, srpanj 2020.

Sa sve prisutnijom upotrebom računarstva u oblaku postavlja se pitanje sigurnosti podataka i baza podataka smještenih u oblak. Jedna često korištena metoda zaštite je primjena kriptografskih algoritama kojima se onemogućava pristup podacima na disku. Međutim, upotreba kriptografske zaštite nije idealno rješenje jer bolja zaštita onemogućava filtriranje podataka na poslužitelju. S druge strane, što više obrade se želi obaviti na poslužitelju, to su podaci slabije zaštićeni. U sklopu ovog završnog rada potrebno je istražiti načine kriptografske zaštite koja se može upotrijebiti u bazi MariaDB. Nadalje, potrebno je definirati model prijetnje te na temelju toga istražiti mogućnosti rekonstrukcije kriptografski zaštićenih podataka bez poznavanja ključa za šifriranje. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Ivanković, Generiranje korisničkog prometa na kibernetičkim poligonima, završni rad br. 6820, FER, Sveučilište u Zagrebu, srpanj 2020.

Moderni informacijski sustavi podložni su napadima putem kibernetičkog prostora te su tvrtke svjesne te činjenice i za nju se odgovarajuće pripremaju. Jedna bitna komponenta tih priprema je treniranje ljudi koji održavaju takve sustave da prepoznaju napade te da ih na odgovarajući način uklone. Izazov je što uvježbavanje na stvarnim sustavima nije dozvoljeno budući da im se tijekom vježbe može naštetiti, a istovremeno, napadi nisu tako česti. Iz tog razloga teži se kreiranju simuliranih okolina unutar koji se provode vježbe. Takve vježbe primarno služe za uvježbavanje tehničkih sposobnosti te se nazivaju kibernetički poligoni (engl. cyber range). Bitna komponenta kibernetičkih poligona je modul za generiranje benignog prometa kako bi branitelji imali teži posao otkrivanja prometa napadača. U sklopu završnog rada potrebno je proučiti raspoložive generatore korisničkog prometa. Definirati poželjne karakteristike generiranog prometa. Korištenjem sustava Imunes demonstrirati generiranje korisničkog prometa u nekoj mrežnoj topologiji. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

T. Karamehmedović, Ocjena kvalitete dekompajliranog Java koda, završni rad br. 6809, FER, Sveučilište u Zagrebu, srpanj 2020.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Iz tog razloga razvijen je cijeli niz alata koji pomažu prilikom analize ciljane aplikacije od kojih su najbitniji dekompajleri. Za evaluaciju dekompajlera kao i za razvoj kvalitetnih dekompajlera potrebno je razviti računalnu metodu ocjenu kvalitete dekompajliranog koda. U sklopu završnog rada potrebno je proučiti metode ocjene kvalitete dekompajliranog koda te implementirati i testirati jednu metodu na aplikacijama pisanim u programskom jeziku Java. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

P. Kovač, Ocjena kvalitete dekompajliranog C# koda, završni rad br. 6810, FER, Sveučilište u Zagrebu, srpanj 2020.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Iz tog razloga razvijen je cijeli niz alata koji pomažu prilikom analize ciljane aplikacije od kojih su najbitniji dekompajleri. Za evaluaciju dekompajlera kao i za razvoj kvalitetnih dekompajlera potrebno je razviti računalnu metodu ocjenu kvalitete dekompajliranog koda. U sklopu završnog rada potrebno je proučiti metode ocjene kvalitete dekompajliranog koda te implementirati i testirati jednu metodu na aplikacijama pisanim u programskom jeziku C#. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Matošević, Slabosti kriptografske zaštite u bazi podataka Postgres, završni rad br. 6811, FER, Sveučilište u Zagrebu, srpanj 2020.

Sa sve prisutnijom upotrebom računarstva u oblaku postavlja se pitanje sigurnosti podataka i baza podataka smještenih u oblak. Jedna često korištena metoda zaštite je primjena kriptografskih algoritama kojima se onemogućava pristup podacima na disku. Međutim, upotreba kriptografske zaštite nije idealno rješenje jer bolja zaštita onemogućava filtriranje podataka na poslužitelju. S druge strane, što više obrade se želi obaviti na poslužitelju, to su podaci slabije zaštićeni. U sklopu ovog završnog rada potrebno je istražiti načine kriptografske zaštite koja se može upotrijebiti u bazi Postgres. Nadalje, potrebno je definirati model prijetnje te na temelju toga istražiti mogućnosti rekonstrukcije kriptografski zaštićenih podataka bez poznavanja ključa za šifriranje. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Špoljar, Razvoj dodatka za omogućavanje statičke analize koda u programu Android Studio, završni rad br. 6993, FER, Sveučilište u Zagrebu, srpanj 2020.

Mobilne aplikacije sve se intenzivnije koriste u situacijama u kojima njihovom zloupotrebom može nastati značajna financijska šteta korisniku aplikacije, a također može doći i do narušavanja privatnosti. Temeljna zaštitna mjera od takvih zloupotreba je pisanje koda koji ne sadrži ranjivosti koje bi napadač mogao iskoristiti. Međutim, to je vrlo zahtjevan proces zbog čega će svatko tko piše aplikacije neminovno činiti pogreške. Kako bi se količina pogrešaka minimizirala, potrebno je što je više moguće koristiti programsku podršku. Temeljna programska podrška za tu namjenu je statička analiza koda koja pokušava uočiti ranjivosti te što ranije upozoriti programera na njih. U sklopu završnog rada potrebno je izraditi dodatak za Android Studio koji će omogućiti korištenje alata za statičku analizu koda tijekom pisanja aplikacije. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

F. Todorić, Dekompajliranje aplikacija pisanih u programskom jeziku Kotlin, završni rad br. 6813, FER, Sveučilište u Zagrebu, srpanj 2020.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Iz tog razloga razvijen je cijeli niz alata koji pomažu prilikom analize ciljane aplikacije od kojih su najbitniji dekompajleri. Međutim, većina dekompajlera za operacijski sustav Android napisana je za programski jezik Java, a u međuvremenu sve je popularniji programski jezik Kotlin za koji ne postoje dekompajleri. U sklopu završnog rada potrebno je proučiti mogućnosti dekompajliranja aplikacija pisanih u programskom jeziku Kotlin. Razraditi metode dekompajliranja te napraviti demonstracije mogućnosti dekompajliranja. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Veršić, Metode i alati za istraživanje napada društvenim inženjerstvom na internetu, završni rad br. 6475, FER, Sveučilište u Zagrebu, srpanj 2020.

Društveno inženjerstvo obuhvaća niz tehnika kojima napadači manipuliraju žrtvama kako bi ih potaknuli na neke radnje, od njih dobavili osjetljive informacije ili ostvarili pristup njihovim računalima. Internet pruža brojne mogućnosti za uspostavu kontakta sa žrtvama i olakšava skrivanje i lažiranje identiteta, pa ga napadači često koriste za izvođenje napada. Dobro provedeno društveno inženjerstvo može biti vrlo uvjerljivo i teško za otkriti. Nakon napada se može provoditi istraga, pri čemu se koriste određene metode i alati s ciljem otkrivanja identiteta napadača i njegove infrastrukture. Iako u većini slučajeva identitet napadača ostaje nepoznat, u pravilu se može se utvrditi neke odrednice i indikatore kojima se može otežati ponavljanje takvog napada. U sklopu završnoga rada je potrebno istražiti neke metode društvenog inženjerstva, te istražiti i demonstrirati odabrane metode i alate koje istražitelji koriste prilikom istraživanja takvih napada. Opcionalno, može se istražiti i mogućnosti zavaravanja i zavlačenja napadača dopisivanjem. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2018/2019

Diplomski radovi

K. Ledenko, Dodatak za Android Studio za lakše snalaženje u dekompajliranim APK datotekama, diplomski rad br. 1950, FER, Sveučilište u Zagrebu, srpanj 2019.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. Iz tog razloga koriste se razni dekompajleri koji pretvaraju kod iz niske razine u Java programski kod. Pri tome se tijekom analize stručne osobe susreću s problemom povezivanja raznih klasa u nekakav smisleni tok. Olakšavajuća okolnost je kako se prilikom izrade Android aplikacija upotrebljavaju standardni programski uzorci, međutim, zbog toga što je kod često obfusciran potrebno je dosta truda da se uoče te da se složi slijed pozivanja klasa prilikom korištenja Android aplikacije. U sklopu ovog diplomskog rada potrebno je razviti dodatak za integrirano okruženje Android Studio koji bi tražio predefinirani skup programskih uzoraka te ih na odgovarajući način prezentirao stručnoj osobi. Taj dodatak treba također omogućiti jednostavno kretanje po kodu radi njegove inspekcije. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Petr, Prototip sustava za uvježbavanje analitičara za kibernetičke prijetnje, diplomski rad br. 1946, FER, Sveučilište u Zagrebu, srpanj 2019.

Sigurnost tvrtki i država temelji se na dobrom poznavanju prijetnji kako bi se uvele odgovarajuće zaštite te u slučaju napada umanjila šteta zbog incidenta. Ključna aktivnost u tom smislu je područje koje se bavi analizom kibernetičkih prijetnji, a koje je spoj klasičnog obavještajnog rada i kibernetičke sigurnosti. Analizu prijetnji provode osobe - analitičari - te se radi o vrlo specifičnoj vještini koju je vrlo teško automatizirati. Iz tog razloga postoji potreba za takvim kadrom, ali edukacija kadra je dugotrajna i zahtjevna te se uglavnom temelji na radu s iskusnim analitičarima, pokušajima i pogreškama. Sustav koji bi stavljao analitičara u fiktivnu situaciju u kojoj mora istraživati neku konkretnu prijetnju bi značajno pomogao budući da se ne bi moralo čekati na stvarne događaje koji se potom istražuju. Na taj način uvježbavanje bi se moglo provoditi brže i u kontroliranoj okolini. U sklopu ovog diplomskog rada potrebno je izraditi prototip sustava za uvježbavanje analitičara za kibernetičke prijetnje te demonstrirati njegov rad na jednom scenariju otkrivanja informacija o kibernetičkoj prijetnji. Identificirati probleme koji se mogu očekivati prilikom izrade proizvoda temeljenog na prototipu te ukazati na tehnologije koje bi bilo pogodno koristiti za implementaciju proizvoda. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

Reverzno inženjerstvo

S. Marjanović, Analiza programske podrške Ghidra za provođenje reverznog inženjerstva, završni rad br. NN, FER, Sveučilište u Zagrebu, srpanj 2019.

Reverzno inženjerstvo je postupak razumijevanja rada aplikacije bez dostupnosti izvornog koda. Najbolji primjer gdje je reverzno inženjerstvo važno je analiza malicioznih programa. Postupak se primarno obavlja ručno i zahtjeva veliku količinu znanja i vremena. Kako bi se olakšao postupak reverznog inženjeringa, postoje različiti sustavi koji pomažu čovjeku u čim bržem razumijevanju aplikacije koju analizira. Svaki sustav ima svoje prednosti i nedostatke te je važno razumjeti koji radi bolje u kojim okolnostima. Ghidra je nov sustav koji je razvila Američka Nacionalna Sigurnosna Agencija i nedavno je objavljen te je količina znanja o njemu još relativno mala. U sklopu završnog rada potrebno je proučiti funkcionalnosti programske podrške Ghidra i na primjerima pokazati njeno korištenje. Na temelju proučenih funkcionalnosti potrebno je usporediti Ghidru s ostalim sustavima za reverzno inženjerstvo. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Pentest/Redteaming

V. Ivetić, Penetracijsko testiranje Android aplikacija, završni rad br. 6292, FER, Sveučilište u Zagrebu, srpanj 2019.

Penetracijsko testiranje se provodi kako bi se pronašlo ranjivosti u računalnim sustavima i aplikacijama i time omogućilo njihovo uklanjanje i postavljanje primjerenih mjera zaštite. Neke organizacije, kao što su primjerice banke, moraju provoditi penetracijsko testiranje svojih računalnih sustava i aplikacija zbog usklađivanja s regulatornim zahtjevima ili zahtjevima za certificiranje, dok ga ostale organizacije mogu provoditi kako bi osigurale višu razinu sigurnosti vlastitih usluga. Obavljanje penetracijskog testiranja iziskuje veliku količinu znanja o pozadini sustava kojeg je potrebno testirati, te ga u pravilu provode zasebne organizacije sa stručnjacima specijaliziranima za pojedine vrste sustava ili aplikacija. Primjer jedne vrste sustava nad kojim se može provoditi penetracijsko testiranje su Android aplikacije. U sklopu završnoga rada potrebno je detaljno proučiti odabrane napade na Android aplikacije, razviti vlastitu demonstracijsku Android aplikaciju s ugrađenim primjerima ranjivosti koje proučeni napadi iskorištavaju, te demonstrirati i komentirati provođenje tih napada. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Lovrec, Kombiniranje gramatički i mutacijski baziranih tehnika za fuzzing, završni rad br. NN, FER, Sveučilište u Zagrebu, srpanj 2019.

Moderne aplikacije vrlo su kompleksne, a posljedica toga je velika vjerojatnost postojanja sigurnosnih propusta. Za uspješno otkrivanje propusta potrebno je testiranje, koje je zbog manjka sigurnosnih stručnjaka potrebno što više automatizirati. Fuzzing je automatska tehnika testiranja koja se temelji na nasumičnom generiranju testova za aplikacije. Dijeli se u dvije skupine, ovisno o tome koriste li se gramatičke ili mutacijske tehnike generiranja testova. Gramatičke tehnike generiraju testove na osnovu kontekstno-neovisne gramatike koju zadaje korisnik, a mutacijske tehnike rade mutacije na već postojećim ulaznim testovima. Fuzzing sustavi se često temelje na samo jednoj skupini tehnika, a kombiniranjem gramatičkih i mutacijskih tehnika moguće je dobiti robusniji fuzzing sustav. U sklopu završnog rada potrebno je definirati koje će se gramatičke i mutacijske tehnike koristiti, te na koji način će se izvesti instrumentacija. Na temelju definiranih svojstava, potrebno je razviti sustav koji će na temelju instrumentacijskih podataka odrediti hoće li koristiti gramatičke ili mutacijske tehnike generiranja novih testova. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Š. Matešić, Fuzzing testiranje web aplikacija radi otkrivanja sigurnosnih ranjivosti, završni rad br. NN, FER, Sveučilište u Zagrebu, srpanj 2019.

Broj web aplikacija, njihova kompleksnost i popularnost konstantno rastu te je potrebna njihova ispravna zaštita jer potencijalni sigurnosni propust može imati utjecaj na veliki broj korisnika. Zbog manjka sigurnosnih stručnjaka koji bi detaljno testirali sigurnost pojedinih aplikacija potrebno je postupak testiranja što više automatizirati. Fuzzing je popularna automatska tehnika testiranja koja se temelji na nasumičnom generiranju korisničkog unosa. Usprkos velikoj količini literature i alata iz fuzzinga, malo je toga usmjereno prema web aplikacijama koje pružaju nove izazove za automatsko testiranje. U sklopu završnog rada potrebno je definirati skup ranjivosti koje se mogu otkriti primjenom fuzzing tehnika. Na temelju definiranog skupa ranjivosti potrebno je razviti sustav koji će omogućiti primjenu fuzzing tehnika za testiranje web aplikacija. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Bratović, Simulacija crvenih timova u kibernetičkoj sigurnosti, završni rad br. NN, FER, Sveučilište u Zagrebu, srpanj 2019.

Crveni timovi su u kibernetičkoj sigurnosti organizirane skupine napadača koji nastoje sa što manje ostavljenih tragova kompromitirati informacijski sustav i u njemu ostvariti neke postavljene ciljeve. Za razliku od penetracijskog testiranja, kod crvenih timova se koraci napada moraju pomno birati kako ih branitelj ciljanog informacijskog sustava ne bi uočio i prekinuo napad. U sklopu sigurnosnog testiranja sustava se često provodi i testiranje crvenim timom, čiji je cilj simulirati napad realističnog napadača na sustav kako bi se uklonile ključne ranjivosti i postavile primjerene protumjere. Problem kod takvog testiranja je da iziskuje velike resurse i angažman stručnjaka, te se u posljednje vrijeme razvijaju alati za automatizaciju crvenih timova, koja ostaje otvoreno istraživačko područje. U sklopu završnoga rada potrebno je detaljno proučiti alate po izboru za simulaciju crvenog tima, izraditi demonstracijski ranjivi računalni sustav, identificirati neke napadačke korake u tom sustavu, demonstrirati simulaciju crvenog tima uz pomoć ranije proučenih alata, te - ako je potrebno - razviti prototip vlastitog alata za simuliranje crvenog tima koji koristi ranije identificirane napadačke korake. Usporediti rezultate provedenih simulacija. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2017/2018

Diplomski radovi

N. Kupec, Analiza sigurnosti slika diskova za alat Docker, diplomski rad br. 1672, FER, Sveučilište u Zagrebu, srpanj 2018.

U svijetu, pa tako i u Hrvatskoj, sve više se kao model razvoja programske podrške koriste mikroservisi. Radi se o tome da se cjelokupna funkcionalnost aplikacije dijeli u manje cjeline koje se potom međusobno povezuju. To omogućava određenu fleksibilnost prilikom izvršavanja aplikacije u smislu dodijeljenih računalnih resursa. Najčešći mehanizam za implementaciju mikroservisa je alat Docker, istoimene tvrtke. Radi se o sustavu otvorenog koda koji se vrlo intenzivno razvija. Međutim, prilikom razvoja samog alata Docker ne vodi se previše računa o njegovoj sigurnosti, a istovremeno velik broj korisnika tog alata nije upoznat sa sigurnosnim problemima. U sklopu diplomskog rada potrebno je napraviti model prijetnje korištenja alata Docker, na temelju njega analizirati potencijalne sigurnosne probleme te u konačnici napisati program čija zadaća će biti provjera sigurnosti pojedine Docker instance. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

K. Mravunac, Dodatak za Android studio za podršku sigurnosne analize APK datoteka, diplomski rad br. 1673, FER, Sveučilište u Zagrebu, srpanj 2018.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Iz tog razloga razvijen je cijeli niz alata koji pomažu prilikom analize ciljane aplikacije. Međutim, ti alati razvijani su nezavisno jedni od drugih i dosta su nepovezani, a dodatno, nemaju sposobnosti integriranih razvojnih okruženja koje imaju vrlo napredne metode analize koda na temelju čega omogućavaju korisniku vrlo jednostavno kretanje po kodu. U sklopu ovog diplomskog rada potrebno je razviti dodatak za integrirano okruženje Android Studio koje bi omogućavalo jednostavniju sigurnosnu analizu aplikacija za koje nije dostupan izvorni kod. Taj dodatak treba integrirati razne dekompajlere te omogućiti korisniku jednostavno manipuliranje njihovim izlazima i kretanje po dekompajliranom kodu aplikacije. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Kramarić, Modeliranje ponašanja napadača na Internetu prije i tijekom provođenja napada, diplomski rad br. 1674, FER, Sveučilište u Zagrebu, srpanj 2018.

Napadači koji putem Interneta pokušavaju kompromitirati razne sustave više nisu osobe slabih tehničkih znanja već se radi o vrlo dobro organiziranim skupinama s raspodjelom poslova unutar skupine. Najjače takve skupine su napredne ustrajne prijetnje (Advanced Persistent Threat, APT) koje sponzoriraju države iako i kriminalne skupine djeluju u grupama te predstavljaju značajnu prijetnju. Te grupe koriste strukturirane metode po kojima djeluju te je u znanstvenoj i stručnoj literaturi moguće pronaći razne modele koji opisuju ponašanje napadača. Modeliranje je vrlo bitno budući da olakšava njihovu detekciju prilikom napada na neki sustav, a također omogućava predviđanje ponašanja koje se potom može iskoristiti za preventivna djelovanja. U sklopu ovog diplomskog potrebno je proanalizirati dostupne modele ponašanja napadača te ih pokušati primjeniti na par primjera stvarnih napada koji su se desili i o kojima postoji dovoljno informacija dostupnih na Internetu. U praktičnom dijelu potrebno je razmotriti mogućnosti programske implementacije modela radi mogućnosti simulacije i analize napada. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Kucijan, Dekompajliranje Java aplikacija potpomognuto metodama strojnog učenja, diplomski rad br. 1675, FER, Sveučilište u Zagrebu, srpanj 2018.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Slični problemi javljaju se i prilikom analize zloćudnog koda kako bi se utvrdilo što je taj kod u stanju napraviti. Kako bi se olakšao postupak analize razvijaju se dekompajleri čiji cilj je generirati izvorni kod na temelju nekog oblika strojnog koda. Međutim, prilikom prevođenja izvornog koda u strojni kod gubi se velika količina informacija visokog nivoa apstrakcije važna za razumijevanje aplikacije. Dekompajleri također upotrebljavaju dosta heuristika pri čemu je njihova uspješnost prilično upitna. U sklopu ovog diplomskog rada potrebno je utvrditi mogućnost korištenja algoritama strojnog učenja kako bi se poboljšao izlaz dekompajlera koji generira izvorni kod aplikacija pripremljenih za izvršavanje na Java platformi na temelju binarnog koda. Citirati korištenu literaturu i navesti dobivenu pomoć.

F. Varga, Dekompajliranje aplikacija pisanih u programskom jeziku C/C++ potpomognuto metodama strojnog učenja (Decompilation of Applications Written in C/C++ Supported by Machine Learning Algorithms), diplomski rad br. 1676, FER, Sveučilište u Zagrebu, srpanj 2018.

Radi poboljšanja sigurnosti raznih aplikacija redovito se provodi njihova sigurnosna analiza, koja se ponekad naziva i penetracijsko ispitivanje. Postupak se svodi na to da stručna osoba analizira aplikaciju u potrazi za potencijalnim ranjivostima. Međutim, najčešće za aplikaciju nije na raspolaganju izvorni kod već samo prevedeni. To, zajedno s nekim metodama sprečavanja reverznog inženjerstva, značajno otežava sigurnosnu analizu. Slični problemi javljaju se i prilikom analize zloćudnog koda kako bi se utvrdilo što je taj kod u stanju napraviti. Kako bi se olakšao postupak analize razvijaju se dekompajleri čiji cilj je generirati izvorni kod na temelju nekog oblika strojnog koda. Međutim, prilikom prevođenja izvornog koda u strojni kod gubi se velika količina informacija visokog nivoa apstrakcije važnih za razumijevanje aplikacije. Dekompajleri također upotrebljavaju dosta heuristika pri čemu je njihova uspješnost prilično upitna. U sklopu ovog diplomskog rada potrebno je utvrditi mogućnost korištenja algoritama strojnog učenja kako bi se poboljšao izlaz dekompajlera koji generira izvorni kod iz aplikacija pisanih u programskom jeziku C/C++. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

Reverzno inženjerstvo

D. Šarić, Tehnike zaštite programskog koda od reverznog inženjerstva na operacijskom sustavu Linux, završni rad br. 5854, FER, Sveučilište u Zagrebu, srpanj 2018.

Zloćudni kod koristi vrlo složene metode zaštite od reverznog inženjerstva čija zadaća je što više otežati otkrivanje funkcionalnosti koju kod sadrži. Međutim, takve metode i tehnike koriste se i prilikom zaštite komercijalne programske podrške budući da proizvođači pokušavaju zaštiti svoje intelektualno vlasništvo i spriječiti neovlaštenu distribuciju. U sklopu ovog rada potrebno je popisati i analizirati neke od metoda zaštite te napisati aplikaciju koja će demonstrirati njihovo korištenje. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

H. Fabris, Tehnike zaštite programskog koda od reverznog inženjerstva na operacijskom sustavu Windows, završni rad br. 5827, FER, Sveučilište u Zagrebu, srpanj 2018.

Zloćudni kod koristi vrlo složene metode zaštite od reverznog inženjerstva čija zadaća je što više otežati otkrivanje funkcionalnosti koju kod sadrži. Međutim, takve metode i tehnike koriste se i prilikom zaštite komercijalne programske podrške budući da proizvođači pokušavaju zaštiti svoje intelektualno vlasništvo i spriječiti neovlaštenu distribuciju. U sklopu ovog rada potrebno je popisati i analizirati neke od metoda zaštite te napisati aplikaciju koja će demonstrirati njihovo korištenje. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

D. Marinac, Zaštita programskog koda od reverznog inženjerstva pisanog u programskom jeziku C/C++, završni rad br. 5826, FER, Sveučilište u Zagrebu, srpanj 2018.

Zloćudni kod koristi vrlo složene tehnike i metode zaštite od reverznog inženjerstva čija zadaća je što više otežati otkrivanje funkcionalnosti koju kod sadrži. Međutim, takve metode i tehnike koriste se i prilikom zaštite komercijalne programske podrške budući da proizvođači pokušavaju zaštiti svoje intelektualno vlasništvo i spriječiti neovlaštenu distribuciju. U sklopu ovog rada potrebno je popisati i analizirati neke od metoda zaštite koje se upotrebljavaju prilikom pisanja Windows aplikacija u programskom jeziku C/C++. Također, potrebno je napisati aplikaciju koja će demonstrirati korištenje navedenih tehnika. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

K. Poje, Zaštita programskog koda za Windows operacijski sustav od reverznog inženjerstva, završni rad br. 5828, FER, Sveučilište u Zagrebu, srpanj 2018.

Neki proizvođači programske podrške kao i pisci zloćudnog koda upotrebljavaju vrlo složene tehnike kako bi svoj kod zaštitili od reverznog inženjerstva. Na taj način žele spriječiti otkrivanje funkcionalnosti koda koju pokušavaju obaviti reverzni inženjeri. Razlog takvog ponašanja u slučaju proizvođača je zaštita intelektualnog vlasništva i neovlaštene distribucije, a pisaca zloćudnog koda sprečavanje otkrivanja funkcionalnosti koju zloćudni kod posjeduje. U sklopu ovog rada potrebno je popisati i analizirati neke od metoda zaštite te napisati aplikaciju koja će demonstrirati njihovo korištenje. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Rački, Tehnike zaštite mobilnih aplikacija tijekom njihova korištenja, završni rad br. 5825, FER, Sveučilište u Zagrebu, srpanj 2018.

Mobilne aplikacije upotrebljavaju se u raznim situacijama te dio njih, kao primjerice bankarske aplikacije, rukuje osjetljivim podacima. Sigurnost takvih aplikacija vrlo je bitna jer narušavanjem njihove sigurnosti može doći do značajne financijske štete za korisnika. Jedan dio aktivnosti kojima se osigurava sigurnost aplikacija provodi se tijekom razvoja. Međutim, problem je zaštita aplikacije tijekom njena korištenja kada je aplikacija pod potpunim nadzorom napadača te on na mobilnom uređaju može primjenjivati razne tehnike uz pomoć kojih pokušava narušiti sigurnost aplikacije. Za takve slučajeve razvijen je cijeli niz tehnika i metoda koje se upotrebljavaju tijekom korištenja aplikacije. U ovom radu potrebno je definirati model prijetnje te potom popisati i kratko opisati metode i tehnike koje se upotrebljavaju za zaštitu aplikacija. Odabrani podskup zaštita treba obraditi detaljnije što podrazumijeva pisanje koda za demonstraciju i detaljnu analizu prednosti i mana svake od njih. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2016/2017

Diplomski radovi

B. Gutlić, Praćenje upotrebe računala radi detekcije neovlaštenog korištenja, diplomski rad br. 1444, FER, Sveučilište u Zagrebu, srpanj 2017.

Temeljni mehanizam utvrđivanja indentiteta na današnjim računalnim sustavima temelji se na upotrebi lozinki odnosno nekakvih tajni. Takav sustav je tijekom vremena iskazao niz nedostataka zbog čega se kontinuirano traže novi mehanizmi utvrđivanja identiteta. Primjerice, ljudi su vrlo loši u pamćenju stvarno dobro generiranih i dovoljno dugih lozinki zbog čega su podložni napadima pogađanja. Dodatno, većina korisnika će vrlo lako otkriti svoju lozinku drugim osobama što narušava sigurnost cijelog sustava. Također, ništa ne sprečava napadača da preuzme sjednicu te nastavi koristiti sustav umjesto legitimnog korisnika nakon što se on prijavi. U sklopu diplomskog rada potrebno je ispitati mogućnost praćenja korisnika sustava na temelju stanja varijabli operacijskog sustava i njihove promjene u vremenu. Ideja je da razvijeni sustav može detektirati kada korisnik za računalom nije onaj za kojeg se predstavlja temeljeno na razlici njegova ponašanja u odnosu na ponašanje stvarnog korisnika. Kao dio zadatka treba utvrditi koje varijable je moguće pratiti te kojim mehanizmima je moguće pratiti promjene tih varijabli. Potom je potrebno provesti eksperimente kako bi se utvrdilo je li moguće detektirati napadača koji se pretvara da je legitimni korisnik. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Matetić, Stvaranje mamaca na zahtjev temeljeno na produkcijskom sustavu, diplomski rad br. 1445, FER, Sveučilište u Zagrebu, srpanj 2017.

Mamci (engl. honeypots) su sustavi kojima legitimni korisnici ne pristupaju i čija jedina vrijednost je u tome da budu kompromitirani ili na neki način zloupotrebljeni. Zahvaljujući tome moguće je detektirati i pratiti napadače u lokalnim mrežama jer se svaki pristup smatra nedozvoljenim. Mamci su najčešće pojednostavljene replike postojećih sustava koji se razvijaju neovisno o njima. Problemi takvog pristupa su višestruki, primjerice moguće je detektirati kako se radi o mamcu jer funkcionalnost nije potpuna, ili mamci kasne za mogućnostima stvarnih sustava koje emuliraju te je na taj način teže pratiti ponašanja napadača jednom kada im pristupe. U sklopu diplomskog rada potrebno je utvrditi mogućnost da se od stvarnog, produkcijskog sustava, napravi mamac na temelju nekog događaja. Konkretno, potreno je popularnu Web-aplikaciju Wordpress složiti na takav način da se upisivanjem unaprijed definiranih korisničkih imena stvara nova replika sustava koja će biti isključivo namijenjena napadaču. Prilikom stvaranja replike potrebno je pripaziti na tajnost podataka. Na temelju tako izgrađenog sustava potrebno je utvrditi performanse sustava i odrediti u kojem segmentu sustava dolazi do najvećeg kašnjenja. Na temelju provedenih mjerenja predložiti poboljšanja sustava. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

S. Kuman, Proširenje simulatora Imunes podrškom emulacije mreže mamaca upravljačkih sustava (Extending Imunes Simulator with Support for Control System Honeynets), diplomski rad br. 1335, FER, Sveučilište u Zagrebu, veljača 2017.

Mamci (engl. honeypots) su sustavi na lokalnoj mreži kojima legitimni korisnici ne pristupaju i čija jedina vrijednost je u tome da budu kompromitirani ili na neki način zloupotrebljeni. Zahvaljujući tome moguće je detektirati napadače u lokalnim mrežama jer se svaki pristup smatra nedozvoljenim. Osim za detekciju napača, mamci se koriste i za proučavanje ponašanja napadača i za takve slučajeve oni moraju biti što vjernije kopije stvarnih sustava. Danas su mamci standardni detekcijski sustavi za zaštitu lokalnih mreža te postoji niz različitih vrsta s različitim mogućnostima, namjenama, stupnjem emulacije i slično. Međutim, upotreba mamaca još nije uobičajena u upravljačkih sustavima. U sklopu diplomskog rada potrebno je proučiti mamac Conpot koji emulira upravljačke sustave te pronaći dodatnu programsku podršku s kojom se mamac Conpot može proširiti kako bi bio što uvjerljiviji upravljački sustav. Nadalje, potrebno je modificirati emulator i simulator Imunes tako da omogućava lako definiranje i emulaciju proizvoljnih mreža mamaca upravljačkih sustava. Posebnu pozornost potrebno je posvetiti sprečavanju detekcije mamca od strane napadača te što lakšem korištenju sustava. Ispitati gotov sustav tako da ga se spoji na Internet te prate ostvareni pristupi. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Na temelju ovog diplomskog rada napisan je znanstveni rad Kuman, Stipe, Stjepan Groš, and Miljenko Mikuc. "An experiment in using IMUNES and Conpot to emulate honeypot control networks." 2017 40th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). IEEE, 2017..

Završni radovi

L. Vusić, Razvoj sigurnih aplikacija za platformu Android, završni rad br. 5130, FER, Sveučilište u Zagrebu, srpanj 2017.

Platforme Android, iOS i slične izuzetno su popularne te je broj aplikacija u ovom trenutku vrlo velik. Te aplikacije upotrebljavaju korisnici na svojim uređajima - pametnim telefonima i tabletima - i u njih pohranjuju sve veće količine svojih osobnih podataka. Na taj način izlažu se opasnosti jer narušavanjem sigurnosti aplikacija mogu pretrpjeti materijalne, reputacijske i druge štete. Iz tog razloga vrlo je bitno voditi računa o sigurnosti i privatnosti korisnika tijekom razvoja aplikacija. U ovom radu potrebno je istražiti pravila razvoja sigurnih aplikacija za platformu Android te razviti jednostavnu aplikaciju poštivajući navedena pravila. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Petr, Korištenje mentalnih mapa kao zamjenu za alat MaltegoCE, završni rad br. 5131, FER, Sveučilište u Zagrebu, srpanj 2017.

Istraživanjem prijetnji na Internetu (engl. cyber threat intelligence) prikupljaju se informacija iz kojih je potrebno izvući određeno znanje na temelju kojeg se potom donose odgovarajuće odluke. Otkrivanje znanja nije jednostavno zbog velike količine informacija. Dodatni problem je činjenica kako ljudi najbolje otkrivaju pravilnosti upotrebom vizualizacija, a što je teško učiniti bez pomoći računala. Zato analitičari koriste alate koji im omogućavaju organiziranje i vizualiziranje prikupljenih podataka te automatsko prikupljanje informacija dostupnih na Internetu. Najpoznatiji takav alat je Maltego čiji temeljni problem je da se radi o komercijalnom proizvodu koji u slobodnoj varijanti ima određena ograničenja. U ovom radu potrebno je istražiti mogućnost korištenja mentalnih mapa kao alternativu alatu Maltego. Dodatno, potrebno je istražiti mogućnost korištenja Maltego transformacija unutar odabranog alata za mentalne mape. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Kandić, Ispitivanje alata za statičku analizu koda pisanog u programskom jeziku PHP, završni rad br. 5222, FER, Sveučilište u Zagrebu, srpanj 2017.

Programski jezik PHP izuzetno je popularan i često korišten za izradu Web aplikacija. Sam jezik dizajniran je tako da bude što jednostavniji za korištenja. S obzirom kako se očekivalo da će biti korišten sam u jednostavnim projektima, to je bio realan zahtjev te drugi zahtjevi - kao što je sigurnost - nisu bili toliko bitni i o njima se nije vodilo računa. Međutim, jezik je postao vrlo popularan te se počeo koristiti u mnoštvu vrlo složenih aplikacija. Rezultat toga su sigurnosni problemi, odnosno, relativna lakoća s kojom je u tom jeziku moguće napisati ranjivu aplikaciju. Kako jezik više nije moguće značajnije mijenjati pribjegava se različitim metodama da se izbjegnu ranjivosti. Jedna od tih metoda je statička analiza koda. U ovom radu potrebno je pronaći sustave za statičku analizu aplikacija pisanih u programskom jeziku PHP. Također, potrebno je stvoriti bazu ranjivih aplikacija kao i relativno kratke primjere ranjivih kodova. Na toj bazi ispitati kvalitetu pojedinih statičkih analizatora koda te procijeniti njihovu kvalitetu i predložiti poboljšanja. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2015/2016

Diplomski radovi

A. Mujić, Analiza moguće štete zloćudnog koda na platformi iOS, diplomski rad br. 1289, FER, Sveučilište u Zagrebu, srpanj 2016.

iOS je Appleov operacijski sustav i platforma koja se koristi na raznim proizvodima kao što su primjerice iPad, iPhone, AppleTV. U ovom trenutku postoji 9 generacija te platforme od kojih su trenutno podržane generacije 7 do 9. Jedina alternativa platformi iOS je platforma Android koja zauzima veće tržište i temelji se na drugačijem pristupu sigurnosti te zbog toga za nju postoji značajno veći broj radova koji se bave njenom sigurnošću. Međutim, zbog raširenosti platforme iOS, ne smije se zanemariti i taj sustav te je cilj ovog diplomskog rada sažeti znanja iz područja sigurnosti vezana uz tu platformu i demonstrirati štetu koju može načiniti zloćudni kod na toj platformi. U sklopu diplomskog rada potrebno je detaljno analizirati sigurnost platforme iOS i aplikacija te načiniti usporedbu s platformom Android. Tijekom analize sigurnosti uzeti u obzir i situaciju kada platforma omogućava administratorski pristup (engl. rooted). Također, navesti načine na koje se neispravnim načinom pisanja aplikacija može narušiti sigurnost podataka koje aplikacija koristi. Napisati primjer zloćudnog koda na platformi iOS radi praktične demonstracije štete koja može nastati. Za navedeni program opisati načine na koje se može instalirati na korisnikov telefon, s mogućnošću administratorskoga pristupa na uređaju i bez nje. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

I. Novković, Dinamička detekcija mehanizama za sprečavanje analize zloćudnog koda, diplomski rad br. 1257, FER, Sveučilište u Zagrebu, srpanj 2016.

Autori zloćudnog kod ugrađuju razne zaštitne mehanizme čija zadaća je da što više otežaju analizu zloćudnog koda. Analiza se radi tako da se program izvršava instrukciju po instrukciju, pri čemu kod poziva potprograma osoba koja analizira kod mora utvrditi hoće li preskočiti poziv i na taj način ubrzati analizu ili će ući u potprogram i pratiti njegovo izvršavanje. Ako osoba koja analizira kod donese odluku da neće ući u potprogram, a u njemu je smješten nekakav mehanizam protiv analize, tada će se analiza morati pokrenuti ispočetka, što u određenim situacijama može biti vremenski vrlo zahtjevno. Pitanje je dakle može li se navedeni postupak automatizirati u smislu nekakvog sustava koji će osobi koja provodi analizu prilikom nailaska na poziv potprograma sugerirati radi li se o bitnom pozivu te je potrebno ući u potprogram, ili je u pitanju nebitan potprogram te se može preskočiti. U sklopu diplomskog rada potrebno je definirati koji podaci mogu poslužiti za donošenje preporuka, razviti dodatak za neki od programa koji se koriste za analizu zloćudnog koda koji će prikupljati te podatke te potom, na temelju tih podataka, ispitati ponašanje barem jednog algoritma strojnog učenja. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

K. Mravunac, Organiziranje podataka upotrebom mentalnih mapa tijekom penetracijskih ispitivanja, završni rad br. 4589, FER, Sveučilište u Zagrebu, srpanj 2016.

U inicijalnoj fazi penetracijskih ispitivanja prikupljaju se podaci koji mogu pomoći tijekom provođenja ispitivanja. Prikupljanje se najčešće obavlja pretražujući Internet te se radi o poslu tijekom kojega se mogu pronaći potencijalno velike količine podataka. Ljudi se teško snalaze u velikoj količini podataka te je zbog toga vrlo bitno pronaći dobar način zapisa i povezivanja podataka kako bi se iz njih mogle izvući korisne informacije potrebne u svim fazama penetracijskog ispitivanja. U ovom radu potrebno je proučiti i opisati fazu prikupljanja podataka u penetracijskim ispitivanjima, izvesti barem jedno konkretno istraživanje te analizirati mogućnost korištenja metalnih mapa za organizaciju podataka. Na temelju analize načiniti smjernice za korištenje mentalnih mapa. Za izradu mentalnih mapa pronaći odgovarajući program otvorenog koda te ako je potrebno prilagoditi ga potrebama ovog zadatka. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

T. Žukina, Zaštita od ucjenjivačkog zloćudnog koda sprečavanjem prepisivanja podataka na datotečnom sustavu, završni rad br. 4588, FER, Sveučilište u Zagrebu, srpanj 2016.

Ucjenjivački zloćudni kod (engl. ransomware) šifrira podatke na disku prepisujući i brišući pri tome nešifrirani oblik. Kada završi sa šifriranjem svih podataka briše lokalnu verziju ključa što znači da se jedina kopija nalazi na poslužitelju koji je u vlasništvu napadača. Potom zloćudni kod ucjenjuje korisnika tražeći određen iznos koji se mora uplatiti u određenom vremenskom roku. Ako korisnik ne plati navedeni iznos briše se i ključ na poslužitelju te više nema načina da se podaci vrate nazad. U sklopu ovog završnog rada potrebno je razmotriti mogućnost zaštite od navedenog ucjenjivačkog koda tako što se prilikom pisanja novih podataka čuvaju stari podaci, odnosno, oni se ne prepisuju. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2014/2015

Diplomski radovi

M. Filković, Razvoj metodologije finog mjerenja performansi na operacijskom sustavu Linux, diplomski rad br. 1105, FER, Sveučilište u Zagrebu, lipanj 2015.

Jedna od primjena operacijskog sustava Linux je u specijaliziranim uređajima čija zadaća je usmjeravanje i obrada velikih količina mrežnog prometa. Zbog specifičnosti takvih uređaja u odnosu na računala opće namjene, razvijene su i posebne distribucije za njih kao što je primjerice Yocto Linux. Od takvih sustava očekuju se visoke performanse koje se postižu optimiranjem dijelova koda za koje se ustanovi da unose neprihvatljivo kašnjenje. Međutim, kako bi se mogle raditi optimizacije nužno je prvo znati gdje su problemi a to se postiže odgovarajućim mjerenjima. U sklopu diplomskog rada potrebno je proučiti Yocto Linux te ga instalirati unutar virtualizirane okoline. Razmotriti jezgru koja se koristi i ispitati mogućnost korištenja službene jezgre Linux operacijskog sustava. Razviti metodologiju finog mjerenja performansi mrežnog stoga i međuprocesne komunikacije u jezgri operacijskog sustava te proširiti mjerenje i na aplikacije. Korištenjem razvijene metodologije obaviti mjerenje vremena obrade paketa u jezgri operacijskog sustava i vrijeme koje se troši na međuprocesnu komunikaciju. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

N. Ravnjak, Dodavanje podrške za izvršne datoteke linuxa u cuckoo okruženju za dinamičku analizu, diplomski rad br. 1104, FER, Sveučilište u Zagrebu, lipanj 2015.

Cuckoo okruženje je alat za dinamičku analizu nepoznatih binarnih datoteka koje potencijalno sadrže zloćudni kod. Potencijalno zloćudna datoteka se izvršava unutar strogo kontroliranog okruženja pri čemu se istovremeno prati njeno ponašanje. Na temelju tog praćenja generiraju se izvještaji i određuje se je li datoteka zloćudna ili ne. Cuckoo je namijenjen za analizu isključivo Windows izvršnih datoteka i koristi se, primjerice, u sustavu VirusTotal koji održava Google. Međutim, sve je veća potreba za automatiziranom analizom zloćudnog koda s operacijskog sustava Linux. U sklopu diplomskog rada potrebno je proučiti Cuckoo okruženje te način na koji bi se moglo proširiti za analizu zloćudnog koda s operacijskog sustava Linux. Na temelju tako obavljene analize dodati podršku za Linux binarni kod te testirati sustav. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

B. Humić, Razvoj modula za promjenu koda radi poboljšanja imunosti aplikacija na računalne viruse, diplomski rad br. 1014, FER, Sveučilište u Zagrebu, lipanj 2015.

Računalni virusi koriste neke ključne informacije prilikom napada na aplikacije, kao što su primjerice adrese pojedinih kritičnih dijelova koda. Kako bi se aplikacije zaštitile uveden je mehanizam za zaštitu koji aplikaciju i njene dijelove učitava na slučajno odabrane početne adrese. Međutim, takav način zaštite manjkav je budući da su napadači razvili metode koje im omogućavaju otkrivanje tih početnih adresa čime su u potpunosti zaobišli zaštitu. Pri tome, oni računaju da se određen, zanimljiv dio koda nalazi na nekoj relativnoj adresi u odnosu na učitanu adresu. Navedeni problem mogao bi se riješiti korištenjem mehanizama kakvi postoje u biološkim sustavima. Ti mehanizmi osiguravaju raznovrsnost populacije tako da virusi i bakterije mogu naštetiti samo jednom malom, genetski odgovarajućem podskupu, ali populacija u cjelini ipak preživljava. U sklopu diplomskog rada potrebno je razviti program za operacijski sustav Windows koji će prilikom svakog učitavanja pojedine aplikacije na disku stvoriti novu verziju čiji kod je permutiran, a aplikacija i dalje zadržava identičnu funkcionalnost. Ideja je da se korištenjem tog sustava na računalima postigne raznovrsnost aplikacija te da tijekom izvršavanja ne postoje dvije identične aplikacije. Odrediti koliko takav postupak sprečava djelovanje virusa te koliko njena implementacija utječe na performanse sustava. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

B. Gutlić, Izgradnja virtualizirane okoline za siguran pristup Internet bankarstvu, završni rad br. 3910, FER, Sveučilište u Zagrebu, srpanj 2015.

Klijenti banaka koriste vlastita računala za pristup Internet bankarstvu. Iako je Internet bankarstvo samo po sebi relativno dobro zaštićeno, često računala koja korisnici upotrebljavaju nisu ispravno održavana i potencijalno su zaražena. Onog trenutka kada napadač uspije zaraziti računalo on dobija potpuni pristup svemu na tom računalu i izuzetno je teško u takvim situacijama jamčiti sigurnost transakcija obavljenih putem Internet bankarstva. Moguće rješenje tog problema su razni oblici virtualizacije, tj. pristup Internet bankarstvu u virtualiziranim i strogo kontroliranim okolinama. U ovom radu potrebno je istražiti mogućnosti virtualizacije, odrediti prijetnje i mogućnosti napadača te utvrditi koliko se korištenjem tog pristupa dobija na sigurnosti. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

E. Vukelić, Podrška za protokol HTTP2 u programu mitmproxy, završni rad br. 3925, FER, Sveučilište u Zagrebu, srpanj 2015.

Program mitmproxy služi za provođenje napada čovjek u sredini kada se koristi protokol HTTP verzije 1.0 ili 1.1. To je iznimno važan i korišten alat za ispitivanje sigurnosti aplikacija, traženje grešaka i penetracijsko ispitivanje. Nedavno je organizacije IETF standardizirala novu verziju protokola HTTP, s oznakom HTTP2. Za njega još ne postoji podrška u programu mitmproxy, a protokol je istovremeno značajno drugačiji u odnosu na starije verzije. U ovom radu potrebno je proučiti i opisati novi protokol HTTP2, analizirati program mitmproxy, isplanirani potreben izmjene te dodati podršku za protokol HTTP2. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

A. Maldini, Nadogradnja programskog sustava PErmutator s podrškom za ELF izvršne datoteke, završni rad br. 3914, FER, Sveučilište u Zagrebu, srpanj 2015.

U sklopu diplomskog rada "Razvoj modula za promjenu koda radi poboljšanja imunosti aplikacija na računalne viruse" razvijen je programski sustav pod nazivom PErmutator. Navedeni sustav učitava zadanu izvršnu datoteku pripremljenu za Windows operacijski sustav, izgrađuje graf te omogućava permutaciju i pohranjivanje tako nastalog grafa. U sklopu ovog završnog rada potrebno je proširiti navedeni programski sustav s podrškom za ELF izvršne datoteke koje su pripremljene za izvršavanje na operacijskom sustavu Linux. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2013/2014

Diplomski radovi

P. Alilović, Prilagodba OpenWRT distribucije Linux operacijskog sustava za upotrebu u Terastream arhitekturi, diplomski rad br. 706, FER, Sveučilište u Zagrebu, srpanj 2014.

Mreže pružatelja Internet usluga su evoluirale u vrlo složene sustave koji kombiniraju niz različitih tehnologija kako bi u konačnici pružile usluge efikasnog prijenosa podataka korisnicma. Problem takvog organskog razvoja je u tome da ih je vrlo teško održavati, a pogotovo je teško razvijati i nuditi nove usluge u okruženju koje je vrlo konkurentno. U tom smislu određen broj pružatelja Internet usluga i proizvođača mrežne opreme započeo je projekt Terastream čiji prvenstveni cilj je pojednostavljivanje arhitekture kako bi pružatelji usluge bili agilniji na tržištu. U sklopu diplomskog rada potrebno je proučiti i opisati Terastream arhitekturu te protokole koji se koriste. Posebnu pozornost obratiti na OpenWRT, distribuciju Linux operacijskog sustava koja se planira koristiti na strani korisnika usluga pružatelja Internet usluga. Razmotriti potrebne prilagodbe OpenWRT distribucije. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

F. Jukić, Sustav za prikupljanje podataka o ponašanju Web preglednika i njihovu analizu strojnim učenjem, diplomski rad br. 707, FER, Sveučilište u Zagrebu, srpanj 2014.

Kada u nekoj organizaciji dođe do sigurnosnog incidenta aktiviraju se mehanizmi čija zadaća je utvrditi kako je do incidenta došlo, što se trenutno dešava te je glavni cilj ukloniti incident, tj. ukloniti napadača iz sustava. Što je incident složeniji to u njegovom rješavanju sudjeluje više ljudi različitih profila i vještina, a istovremeno se generiraju značajne količine podataka. Procesom rješavanja incidenta upravlja jedna osoba koja koordinira sve aktivnosti i donosi odluke o postupanjima. Zbog tolike količine podataka vrlo je teško koordinirati složene incidente te se upotrebljavaju različita rješenja. U sklopu ovog diplomskog rada potrebno je implementirati prototipni sustav koji bi pomagao osobi koja koordinira rješavanje incidenta u organizaciji podataka koji se generiraju te raspoređivanju ljudi koji sudjeluju u rješavaju incidenta. Sustav treba biti implementiran u obliku Web aplikacije te treba predvidjeti različite uloge ljudi koji pristupaju sustavu. Razmotriti mogućnosti povezivanja tog sustava sa drugim sustavima kao što su primjerice MISP i RequestTracker. Citirati korištenu literaturu i navesti dobivenu pomoć.

D. Sulić, Analiza mogućnosti povezivanja alata OSSIM s alatima za strojno učenje i statističku analizu, diplomski rad br. 705, FER, Sveučilište u Zagrebu, srpanj 2014.

Moderni informacijski sustavi sastoje se od mnoštva komponenti koje se moraju stalno nadzirati kako bi se osigurao ispravan rad informacijskog sustava. Međutim, zbog mnoštva komponenti i ograničenog broja ljudi koji se o tim komponentama brinu, nije moguće ručno redovito provjeravati sve komponente. Iz tog razloga razvijeno je mnošto alata čija zadaća je automatizirano nadgledanje informacijskog sustava te alarmiranje odgovornih osoba u slučaju uočenih nepravilnosti. Jedan od takvih alata je i OSSIM. U sklopu diplomskog rada potrebno je proučiti i dokumentirati OSSIM sustav te utvrditi mogućnosti instalacije na CentOS distribuciji Linux operacijskog sustava. Nadalje, s obzirom da OSSIM sve podatke pohranjuje u relacijskoj bazi, potrebno je proučiti i dokumentirati shemu baze. S obzirom da OSSIM za korelaciju podataka koristi pravila, potrebno je istražiti mogućnost korištenja alata za strojno učenje i statističku analizu nad podacima koje prikuplja OSSIM. Alati za strojno učenje i statističku analizu potrebno je upotrebljavati nad kopijom podataka OSSIM baze, odnosno ako je to moguće, direktno nad podacima kako ih OSSIM upisuju u bazu. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Završni radovi

S. Kuman, Analiza ranjivosti u aplikacijama i zloćudnog koda za njihovo iskorištavanje, završni rad br. 3679, FER, Sveučilište u Zagrebu, srpanj 2014.

Veliki problem sigurnosti aplikacija danas su ranjivosti koje su posljedica programskih pogrešaka te koju napadači iskorištavaju kako bi putem ranjive aplikacije ostvarili nekakvu korist bez znanja korisnika aplikacije. Jedna od metoda obrane je i otkrivanje ranjivosti prije nego što ih otkriju napadači. Otkrivanje ranjivosti, kao i razvoj koda koji omogućava da se ranjivost iskoristi je vrlo zahtjevna i traži dosta znanja i vještine. U sklopu završnog rada potrebno je detaljno proučiti i opisati barem dvije ranjivosti i pripadni kod koji tu ranjivost iskorištava. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

D. Pereglin, Sustav za procjenu kvalitete programske podrške na temelju zapisa u bazi Bugzilla, završni rad br. 3676, FER, Sveučilište u Zagrebu, srpanj 2014.

Danas se podaci o pogreškama u programskom kodu vode u javno dostupnim bazama kao što je to primjerice Bugzilla. Te baze omogućavaju dohvaćanje strukturanih zapisa koje se mogu strojno obrađivati. To otvara mogućnosti procjene kvalitete programske podrške na temelju prijava pogrešaka u takvim bazama. U sklopu ovog završnog rada potrebno je definirati takav sustav te ga potom i implementirati. Uzeti u obzir da sustav mora u konačnici omogućiti pristup različitim bazama, ne samo Bugzilli, te da se treba izvršavati kao Web aplikacija. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

L. Matetić, Poboljšanje sustava određivanja reputacije autonomnih sustava temeljeno na BGP prometu, završni rad br. 3675, FER, Sveučilište u Zagrebu, srpanj 2014.

Internet se sastoji od mnoštva povezanih i međusobno nezavisnih autonomnih sustava koji su mahom usmjereni na podršku komercijalnim aktivnostima. Kako je stoga prvenstveni cilj povećanje dobiti, vlasnici autonomnih sustava nisu potaknuti na ulaganja u poboljšanja koja bi koristila Internetu kao cjelini već samo na kratkoročno maksimiziranje profita. Uočljivo je da je ovakvo stanje posljedica prvenstveno nepostojanja središnjeg autoriteta koji bi jamčio za autonomne sustave i pratio njihov rad. Jedan od mogućih pristupa razrješavanju navedenog problema korištenje je primjerenog reputacijskog sustava za određivanje kvalitete autonomnih sustava temeljeći se na analizi upravljačkog promet koji generira BGP. U diplomskom radu studenta Tomislava Dejdara implementiran je prototipni sustav za procjenu reputacije autonomnih sustava temeljeno na praćenju BGP prometa. U sklopu završnog rada potrebno je proanalizirati implementaciju i poboljšati ju sa stanovišta performansi i dizajna. Potrebno je također ponoviti mjerenja sa novijim podacima i analizirati dobivene rezultate. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

M. Ratkaj, Razvoj okruženja za ispitivanje alata Groningen, završni rad br. 3674, FER, Sveučilište u Zagrebu, srpanj 2014.

Današnji sustavi na kojima se izvršavaju aplikacije vrlo su kompleksni, a prvo što se očekuje od njih je da budu efikasni. U tom smislu potrebno je pokretati aplikacije s odgovarajućom kombinacijom parametara sustava koji će jamčiti dobre performanse tijekom njenog rada. Međutim, određivanje optimalnih parametara vrlo je teško zbog toga što je njihov broj izuzetno velik, raspon vrijednosti je također velik i međudjeluju na vrlo složene načine. Kako bi se olakšalo traženje optimalnih parametara za Java virtualni stroj Google je razvio alat Groningen. U sklopu ovog završnog rada potrebno je proučiti taj alat, razviti okruženje unutar kojega se on može pokretati i ispitivati te potom, koristeći tu okolinu, obaviti ispitivanje nad nekom aplikacijom raspoloživom na Internetu. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

V. Šimić, Proces provođenja forenzičke analize Android operacijskog sustava, završni rad br. 3478, FER, Sveučilište u Zagrebu, srpanj 2014.

Pametni telefoni danas se jako često koriste i u tom smislu sigurno su predmet forenzičke analize. Forenzička analiza je vrlo složen postupak, koji dodatno usložnjavaju specifičnosti pametnih telefona. Zbog toga je u ovom radu potrebno opisati različite primjene forenzičke analize Android operacijskog sustava. Potom treba odabrati jednu od primjena te za nju definirati proces provođenja forenzičke analize. Na temelju tako definiranog procesa napraviti potpunu forenzičku analizu nekog konkretnog Android uređaja. Detaljno opisati rezultate analize te navesti i opisati probleme s kojima se susreće prilikom forenzičke analize. Radu priložiti izvorni kod razvijenih i korištenih programa. Citirati korištenu literaturu i navesti dobivenu pomoć.

Akademska godina 2012/2013

Završni radovi

D. Osvald, Poboljšanje upravljanja dozvolama na operacijskom sustavu Android, završni rad br. 3296, FER, Sveučilište u Zagrebu, srpanj 2013.

F. Kurtović, Izgradnja zaštićene okoline za izvršavanje i praćenje nepoznatih aplikacija, završni rad br. 3248, FER, Sveučilište u Zagrebu, srpanj 2013.

Akademska godina 2010/2011

Diplomski radovi

I. Varga, Modifikacija protokola TCP za podršku kvaliteti usluge (Modification of TCP Protocol to Support Quality of Service), diplomski rad br. 1890, FER, Sveučilište u Zagrebu, listopad 2011.

T. Dejdar, Određivanje reputacije autonomnih sustava temeljeno na praćenju upravljačkog prometa rubnih usmjernika (Determination of Autonomous Systems Reputation Based on BGP Traffic), diplomski rad br. 1888, FER, Sveučilište u Zagrebu, listopad 2011.

M. Salkić, Sprječavanje zloupotrebe mreže Tor upotrebom reputacija, diplomski rad br. 1894, FER, Sveučilište u Zagrebu, rujan 2011.

D. Eklić, Određivanje reputacije autonomnih sustava temeljeno na praćenju neželjenog prometa (Determination of Autonomous Systems Reputation Based on Unwanted Traffic Monitoring), diplomski rad br. 1889, FER, Sveučilište u Zagrebu, rujan 2011.

Akademska godina 2009/2010

M. Stublić, Određivanje reputacije autonomnih sustava temeljeno na praćenju sustava DNS (Determining Autonomous Systems Reputation based on DNS measurements), diplomski rad br. 1879, FER, Sveučilište u Zagrebu, prosinac 2010.

M. Dimjašević, Ugradnja MOBIKE podrške u IKEv2 implementaciju (Adding MOBIKE support into IKEv2 implementation), diplomski rad br. ????, FER, Sveučilište u Zagrebu, listopad 2010.

T. Friščić, Određivanje reputacije autonomnih sustava zasnovano na praćenju neželjene pošte (Spam Based Determination of Autonomous Systems Reputation), diplomski rad br. 1857, FER, Sveučilište u Zagrebu, rujan 2010.

Akademska godina 2008/2009

D. Dukić, Upravljanje IPsec podsustavom u Linux okruženju uz pomoć NETLINK sučelja (Managing IPsec subsystem on Linux using NETLINK interface), diplomski rad br. 1800, FER, Sveučilište u Zagrebu, srpanj 2009.

Akademska godina 2007/2008

M. Mikić, Ugradnja SNMP Podrške u protokol za razmjenu ključeva, diplomski rad br. 1751, FER, Sveučilište u Zagrebu, rujan 2008.

M. Vladić, Razmjena ključeva za protokol SRTP temeljena na protokolu DTLS (Key exchange protocol for SRTP based on DTLS, diplomski rad br. 1727, FER, Sveučilište u Zagrebu, svibanj 2008.

V. Suhina, Automatizirano traženje sigurnosnih propusta u web aplikacijama, diplomski rad br. 1712, FER, Sveučilište u Zagrebu, veljača 2008.

I. Požgaj, Raspodijeljeni sustav za spriječavanje mrežnih napada (Distributed Intrusion Detection System), diplomski rad br. 1708, FER, Sveučilište u Zagrebu, veljača 2008.

Akademska godina 2006/2007

Diplomski radovi

J. Rastić, Izrada sustava Lusca za ispitivanje mrežnih aplikacija, diplomski rad br. 1696, FER, Sveučilište u Zagrebu, studeni 2007.

H. Slaviček, Sustav za uređivanje testova temeljen na razvojnom okruženju Eclipse, diplomski rad br. 1673, FER, Sveučilište u Zagrebu, rujan 2007.

D. Nežić, Sučelje za upotrebu Lusca sustava iz Eclipse razvojnog okruženja, diplomski rad br. 1672, FER, Sveučilište u Zagrebu, rujan 2007.

M. Kozina, Automatizirano određivanje vrste Web aplikacije (Automatic Web Application Detection), diplomski rad br. 1685, FER, Sveučilište u Zagrebu, rujan 2007.

J. Vučak, Proširivi autentifikacijski protokol u IKEv2 okruženju, diplomski rad br. 1668, FER, Sveučilište u Zagrebu, travanj 2007.

M. Zeman, Sigurnost Web aplikacija zasnovanih na AJAX tehnologiji, diplomski rad br. 1656, FER, Sveučilište u Zagrebu, travanj 2007.

A. Kukec, Ovjera temeljena na certifikatima u protokolu IKEv2, diplomski rad br. 1646, FER, Sveučilište u Zagrebu, travanj 2007.

Seminarski radovi

V. Suhina, Exploiting and Automated Detection of Vulnerabilities in Web Applications, seminarski rad, FER, Sveučilište u Zagrebu, 2006.

J. Vučak, Proširiv autentifikacijski protokol, seminarski rad, FER, Sveučilište u Zagrebu, 2006.

D. Nežić, Graphical Modeling Framework, Seminarski rad, FER, Sveučilište u Zagrebu, Zagreb, 2007.

H. Slaviček, Izrada dodataka za Eclipse IDE, Seminarski rad, FER, Sveučilište u Zagrebu, Zagreb, 2007.

J. Rastić, Ispitno okruženje - Definicija XML-a i parser, Seminarski rad, FER, Sveučilište u Zagrebu, Zagreb, 2006.

M. Kozina, Sigurnost Web aplikacija, Seminarski rad, FER, Zagreb, 2006.

Student Projects within the Computer Networks Course

Publications in this category are written almost exclusively on Croatian. Also, many of these were additionaly modified by me for clarity, content, or visual appearance.

Ivan Vrtarić, Sigurnosni propusti u Web aplikacijama, Seminarski rad iz predmeta Mreže računala, FER, Zagreb, 2008.

Saša Mrvoš, Optimizacija TCP parametara na lokalnim gigabitnim mrežama, Seminarski rad iz predmeta Mreže računala, FER, Zagreb, 2007.

Ivan Bogoje, HS TCP, Seminarski rad iz predmeta Mreže računala, FER, Zagreb, 2007.

Student Projects within the Seminar Course

2007

Zajednička tema bila je izgradnja visoko raspoloživog poslužitelja elektorničke pošte. U tom smislu, cijeli proces podijeljen je u zasebne dijelove koje su potom radili studenti. Njihovi radovi su u nastavku.

Nikola Brežnjak, Poslužitelj elektroničke pošte, Seminarski rad, FER, Zagreb, 2007.

Alan Debijađi, Linux – HA, Seminarski rad, FER, Zagreb, 2007.

Zoran Kalverašin, Oracle Cluster File System 2, Seminarski rad, FER, Zagreb, 2007.

Vladimir-Mario Obelić, Logical Volume Management – LVM, Seminarski rad, FER, Zagreb, 2007.

Željko Tepšić , ATA preko Etherneta, Seminarski rad, FER, Zagreb, 2007.

Mario Tomić , Global File System, Seminarski rad, FER, Zagreb, 2007.

Krunoslav Tomorad , Internet SCSI – iSCSI, Seminarski rad, FER, Zagreb, 2007.