Slijede razlike između dviju inačica stranice.
| Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
|
racfor_wiki:seminari2025:fb53204 [2026/02/01 14:20] Franko Budimir |
racfor_wiki:seminari2025:fb53204 [2026/02/01 14:59] (trenutno) Franko Budimir |
||
|---|---|---|---|
| Redak 2: | Redak 2: | ||
| =====Sažetak===== | =====Sažetak===== | ||
| + | Ova wiki stranica obrađuje UEFI (Unified Extensible Firmware Interface) i platformski firmware kao kritični sloj računalne sigurnosti koji, zbog smještaja izvan tvrdog diska (na SPI flash memoriji), omogućuje napadačima **trajnu prisutnost** neovisnu o reinstalaciji operacijskog sustava. Stranica definira arhitekturu UEFI firmware-a s naglaskom na forenzički relevantne komponente poput NVRAM varijabli i DXE drivera. Opisani vektori napada koji ciljaju Secure Boot lanac povjerenja i metode ugradnje malicioznog koda (implantata) poput LoJaxa i BlackLotusa. Središnji dio fokusira se na metodama forenzičke akvizicije, uspoređujući ograničenja softverskog pristupa i pouzdanost hardverske akvizicije putem SPI programatora. Konačno, predstavljene su tehnike analize prikupljenih dokaza korištenjem alata kao što su UEFITool i Chipsec te pregled zaštitnih mehanizama potrebnih za očuvanje integriteta platforme. | ||
| =====Uvod===== | =====Uvod===== | ||
| Redak 14: | Redak 15: | ||
| ===Fizički smještaj: SPI Flash memorija=== | ===Fizički smještaj: SPI Flash memorija=== | ||
| - | Sav firmware (BIOS/UEFI) pohranjen je na SPI Flash čipu koji se nalazi na matičnoj ploči. Forenzička važnost leži u tome što je čip fizički odvojen od tvrdog diska (HDD/SSD) pa brisanje ili zamjena diska ne uklanja podatke (ni malware) s ovog čipa. Sadržaj čipa nije nasumičan, nego je organiziran prema strogim pravilima (npr. Intel Flash Descriptor). | + | Sav firmware (BIOS/UEFI) pohranjen je na SPI Flash čipu koji se nalazi na matičnoj ploči. Forenzička važnost leži u tome što je čip **fizički odvojen** od tvrdog diska (HDD/SSD) pa brisanje ili zamjena diska ne uklanja podatke (ni malware) s ovog čipa. Sadržaj čipa nije nasumičan, nego je organiziran prema strogim pravilima (npr. Intel Flash Descriptor). |
| [[https:// | [[https:// | ||
| Redak 32: | Redak 33: | ||
| =====Vektori napada na firmware===== | =====Vektori napada na firmware===== | ||
| Napadači ciljaju firmware jer omogućuje trajnu prisutnost (perzistenciju) ispod razine operacijskog sustava, što znači da malware preživljava reinstalaciju OS-a, zamjenu diska ili skeniranje antivirus softverom. UEFI arhitektura nudi nekoliko " | Napadači ciljaju firmware jer omogućuje trajnu prisutnost (perzistenciju) ispod razine operacijskog sustava, što znači da malware preživljava reinstalaciju OS-a, zamjenu diska ili skeniranje antivirus softverom. UEFI arhitektura nudi nekoliko " | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Usporedba očekivanog i kompromitiranog lanca pokretanja (boot flow). Lijeva strana prikazuje siguran sustav gdje se učitavaju samo pouzdani UEFI driveri, dok desna strana prikazuje scenarij u kojem pogrešna konfiguracija sigurnosnih postavki (npr. isključen Secure Boot ili ranjiv BIOS Write Protection) omogućuje napadaču umetanje Firmware rootkita i učitavanje zlonamjernih drivera prije samog operacijskog sustava. | ||
| ===Umetanje u DXE drivere=== | ===Umetanje u DXE drivere=== | ||
| - | DXE (Driver Execution Environment) je dio UEFI pokretanja u kojem se učitavaju driveri za hardver i pripremaju usluge koje će OS koristiti. Napadači mogu umetnuti zlonamjerni DXE driver ili modificirati postojeći legitiman driver, s čime osiguraju da se njihov kod izvršava pri svakom pokretanju računala prije nego što operacijski sustav preuzme kontrolu. Ovaj pristup je učinkovit jer se DXE driveri izvršavaju s najvećim privilegijama, | + | DXE (Driver Execution Environment) je dio UEFI pokretanja u kojem se učitavaju driveri za hardver i pripremaju usluge koje će OS koristiti. Napadači mogu umetnuti zlonamjerni DXE driver ili modificirati postojeći legitiman driver, s čime osiguraju da se njihov kod izvršava pri svakom pokretanju računala prije nego što operacijski sustav preuzme kontrolu. Ovaj pristup je učinkovit jer se DXE driveri izvršavaju s najvećim privilegijama, |
| Redak 57: | Redak 62: | ||
| Ova metoda koristi alate pokrenute unutar operacijskog sustava (Windows/ | Ova metoda koristi alate pokrenute unutar operacijskog sustava (Windows/ | ||
| - | * Prednosti: Brzo je i ne zahtijeva otvaranje kućišta računala niti dodatnu opremu. | + | |
| - | * Nedostaci i rizici: Često je nepouzdana za forenziku, ako je sustav već zaražen rootkitom, malware može presresti pozive za čitanje i vratiti lažne i čiste podatke. Također, moderne platforme često zaključavaju pristup određenim regijama (npr. ME regija ili Flash Descriptor) radi sigurnosti, pa softverski dump može biti nepotpun. | + | |
| ===Hardverska (Dead) akvizicija=== | ===Hardverska (Dead) akvizicija=== | ||
| Ova metoda uključuje fizičko spajanje na SPI flash čip dok je računalo isključeno, | Ova metoda uključuje fizičko spajanje na SPI flash čip dok je računalo isključeno, | ||
| - | * Prednosti: Daje potpunu, bit-po-bit kopiju cijelog čipa (full dump) koju malware ne može lažirati jer procesor ciljanog računala ne radi. To je zlatni standard u firmware forenzici. | + | |
| - | * Nedostaci i rizici: Zahtijeva fizički pristup, otvaranje uređaja (što može narušiti jamstvo ili dokazni lanac) i zahtijeva oprez pri spajanju napona (1.8V vs 3.3V) kako se ne bi spržio čip. | + | |
| {{ racfor_wiki: | {{ racfor_wiki: | ||
| Redak 80: | Redak 85: | ||
| ===Parsiranje firmware slike=== | ===Parsiranje firmware slike=== | ||
| - | Prvi korak je pretvaranje binarnog oblika u čitljivi oblik, a standardni alat za ovu namjenu je UEFITool (open-source rješenje autora Nikolaja Schleja). Alat prikazuje stablo firmwarea, koje omogućuje forenzičaru pregled GUID-ova (jedinstvenih identifikatora modula), imena drivera i sekcija. U ovom koraku forenzičar aktivno traži module koji nemaju ime (Unnamed), module s neobičnim GUID-ovima ili DXE drivere koji su naknadno dodani u odnosu na originalne tvorničku postavke. UEFITool također omogućuje ekstrakciju sumnjivih modula (opcija Extract Body) za daljnju analizu reverznim inženjerstvom u alatima poput IDA Pro ili Ghidra. | + | Prvi korak je pretvaranje binarnog oblika u čitljivi oblik, a standardni alat za ovu namjenu je **UEFITool** (open-source rješenje autora Nikolaja Schleja). Alat prikazuje stablo firmwarea, koje omogućuje forenzičaru pregled GUID-ova (jedinstvenih identifikatora modula), imena drivera i sekcija. U ovom koraku forenzičar aktivno traži module koji nemaju ime (Unnamed), module s neobičnim GUID-ovima ili DXE drivere koji su naknadno dodani u odnosu na originalne tvorničku postavke. UEFITool također omogućuje ekstrakciju sumnjivih modula (opcija Extract Body) za daljnju analizu reverznim inženjerstvom u alatima poput IDA Pro ili Ghidra. |
| + | |||
| + | [[https:// | ||
| + | |||
| + | Prikaz strukture UEFI firmwarea u alatu UEFITool. Vide se pojedinačni moduli (driveri) s njihovim GUID-ovima i imenima. | ||
| ===Analiza NVRAM varijabli=== | ===Analiza NVRAM varijabli=== | ||
| Redak 91: | Redak 100: | ||
| ===Validacija potpisa i provjera integriteta=== | ===Validacija potpisa i provjera integriteta=== | ||
| - | Chipsec je moćan framework za procjenu sigurnosti platforme koji može analizirati živi sustav ili statički dump. Njegova glavna moć je automatizirana provjera hardverskih zaštita, npr. pokretanje skripte chipsec_main.py može otkriti je li uključena BIOS Write Protection zaštita (koja sprječava pisanje po flash memoriji) ili su ranjivi SMM (System Management Mode) mehanizmi. Ako Chipsec prijavi " | + | **Chipsec** je moćan framework za procjenu sigurnosti platforme koji može analizirati živi sustav ili statički dump. Njegova glavna moć je automatizirana provjera hardverskih zaštita, npr. pokretanje skripte chipsec_main.py može otkriti je li uključena BIOS Write Protection zaštita (koja sprječava pisanje po flash memoriji) ili su ranjivi SMM (System Management Mode) mehanizmi. Ako Chipsec prijavi " |
| + | |||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Prikaz rezultata Chipsec analize (Linux terminal). Crvenom bojom su istaknuti testovi koji nisu prošli (FAILED), konkretno bios_wp (BIOS Write Protection) i spi_desc (zaštita Flash Descriptora). Ovi rezultati ukazuju na ranjivost sustava koja napadaču omogućuje trajno zapisivanje zlonamjernog koda u SPI flash memoriju. | ||
| ===Usporedba s poznatim uzorkom (Whitelisting)=== | ===Usporedba s poznatim uzorkom (Whitelisting)=== | ||
| - | Vjerojatno najpouzdanija metoda detekcije je usporedba (tzv. diffing) s poznatim " | + | Vjerojatno najpouzdanija metoda detekcije je usporedba (tzv. **diffing**) s poznatim " |
| Redak 129: | Redak 144: | ||
| + | =====Zaključak===== | ||
| + | UEFI firmware forenzika postala je nezanemariv dio moderne digitalne forenzike zbog sve češćih i sofisticiranijih napada koji ciljaju najniže razine računalnog sustava. Budući da firmware omogućuje perzistenciju koja preživljava reinstalaciju operacijskog sustava i zamjenu diska, detekcija ovakvih prijetnji predstavlja značajan izazov za sigurnosne stručnjake. Zaštitni mehanizmi poput Secure Boota i Intel Boot Guarda podižu razinu sigurnosti, no primjeri stvarnih napada poput BlackLotusa i LoJaxa dokazuju da niti jedan sustav nije potpuno siguran od ranjivosti u konfiguraciji ili dizajnu lanca povjerenja. Stoga je poznavanje arhitekture firmwarea, tehnika hardverske akvizicije i alata za analizu anomalija postalo nužno znanje za potpunu istragu sigurnosnih incidenata, potvrđujući da stvarna sigurnost platforme počinje zapravo prije samog pokretanja operacijskog sustava. | ||