Slijede razlike između dviju inačica stranice.
| Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
|
racfor_wiki:seminari2025:dz54240 [2026/01/20 23:47] Dominik Zoričić [Literatura] |
racfor_wiki:seminari2025:dz54240 [2026/01/21 23:32] (trenutno) Dominik Zoričić [Zaključak] |
||
|---|---|---|---|
| Redak 52: | Redak 52: | ||
| Kod dizajniranja API logova, važno je izbjeći pretjerano logiranje koje stvara šum i otežava analizu. Logovi trebaju biti konzistentni i dovoljno strukturirani da se mogu pretraživati i korelirati. Također jako je važno voditi računa o tome da logovi sami po sebi ne postanu sigurnosni problem te je poželjno izbjegavati logiranje osjetljivih podataka kao što su lozinke, sjednički tokeni, tajni ključevi i druge povjerljive informacije ili kada je to potrebno, obaviti njihovo maskiranje i sanitizaciju [3]. Primjer jednog API loga prikazan je slikom 1. | Kod dizajniranja API logova, važno je izbjeći pretjerano logiranje koje stvara šum i otežava analizu. Logovi trebaju biti konzistentni i dovoljno strukturirani da se mogu pretraživati i korelirati. Također jako je važno voditi računa o tome da logovi sami po sebi ne postanu sigurnosni problem te je poželjno izbjegavati logiranje osjetljivih podataka kao što su lozinke, sjednički tokeni, tajni ključevi i druge povjerljive informacije ili kada je to potrebno, obaviti njihovo maskiranje i sanitizaciju [3]. Primjer jednog API loga prikazan je slikom 1. | ||
| - | {{ : | + | {{ : |
| ===== Forenzička vrijednost API logova ===== | ===== Forenzička vrijednost API logova ===== | ||
| API logovi imaju visoku forenzičku vrijednost jer predstavljaju kronološki zapis interkacije između klijenta i poslužiteljskih sustava (API servisa) te često sadrže kontekst koji nije dostupan u infrastrukturnim logovima (npr. identitet korisnika, izvedena akcija, ishod). Zbog toga su korisni i u operativnim scenarijima (debugging, praćenje performansi), | API logovi imaju visoku forenzičku vrijednost jer predstavljaju kronološki zapis interkacije između klijenta i poslužiteljskih sustava (API servisa) te često sadrže kontekst koji nije dostupan u infrastrukturnim logovima (npr. identitet korisnika, izvedena akcija, ishod). Zbog toga su korisni i u operativnim scenarijima (debugging, praćenje performansi), | ||
| - | {{ : | + | {{ : |
| Najizravnija forenzička vrijednost API logova je mogućnost izrade vremenske linije događaja te odgovaranje na pitanja: koji je endpoint pozvan, kada, kojim redoslijedom i s kakvim ishodom. Time se sumnjiva aktivnost može rekonstruirati kao slijed povezanih koraka (npr. učestali neuspjeli pokušaji autentifikacije - uspješna prijava - neuobičajeno velik broj poziva prema osjetljivim resursima - izvozi podataka). API logovi su posebno korisni jer mogu dopuniti istragu aplikacijski specifičnim informacijama koje često nedostaju u drugim izvorima logova te pomažu utvrditi tko je izvršio radnju i što je točno učinjeno jer aplikacija tipično ima pristup informacijama o identitetu korisnika (u slučaju autentificiranih zahtjeva), roli i ovlastima korisnika, kao i kontekstu samog događaja [4]. U forenzičkom smislu to omogućuje precizniju procjenu opsega incidenta | Najizravnija forenzička vrijednost API logova je mogućnost izrade vremenske linije događaja te odgovaranje na pitanja: koji je endpoint pozvan, kada, kojim redoslijedom i s kakvim ishodom. Time se sumnjiva aktivnost može rekonstruirati kao slijed povezanih koraka (npr. učestali neuspjeli pokušaji autentifikacije - uspješna prijava - neuobičajeno velik broj poziva prema osjetljivim resursima - izvozi podataka). API logovi su posebno korisni jer mogu dopuniti istragu aplikacijski specifičnim informacijama koje često nedostaju u drugim izvorima logova te pomažu utvrditi tko je izvršio radnju i što je točno učinjeno jer aplikacija tipično ima pristup informacijama o identitetu korisnika (u slučaju autentificiranih zahtjeva), roli i ovlastima korisnika, kao i kontekstu samog događaja [4]. U forenzičkom smislu to omogućuje precizniju procjenu opsega incidenta | ||
| Redak 140: | Redak 140: | ||
| **2. Ograničenja sadržaja logova (npr. bez tijela zahtjeva/ | **2. Ograničenja sadržaja logova (npr. bez tijela zahtjeva/ | ||
| - | Čak i kada je logiranje zahtjeva uključeno, platforma koja se bavi logiranjem može imati tehnička ograničenja koja forenziku ostavljaju bez potrebnog konteksta. Konkretan primjer je Amazon API Gateway, gdje su log događaji ograničeni na 1024 bajta, pa se veći sadržaji (uključujući request/ | + | Čak i kada je logiranje zahtjeva uključeno, platforma koja se bavi logiranjem može imati tehnička ograničenja koja forenziku ostavljaju bez potrebnog konteksta. Konkretan primjer je Amazon API Gateway, gdje su log događaji ograničeni na 1024 bajta, pa se veći sadržaji (uključujući request/ |
| **3. Teško povezivanje događaja u distribuiranim sustavima** | **3. Teško povezivanje događaja u distribuiranim sustavima** | ||
| Redak 146: | Redak 146: | ||
| Moderne API arhitekture tipično uključuju API gateway, više mikroservisa, | Moderne API arhitekture tipično uključuju API gateway, više mikroservisa, | ||
| - | {{ : | + | {{ : |
| **4. Privatnost i zakonitost** | **4. Privatnost i zakonitost** | ||
| Redak 155: | Redak 155: | ||
| - | ===== Najbolje prakse za forenzički dizajn | + | ===== Najbolje prakse za forenzički dizajn |
| + | |||
| + | Ovo poglavlje opisuje centralizirani pristup prikupljanju i upravljanju API logovima, umjesto oslanjanja na lokalne zapise po pojedinim poslužiteljima. Naglasak je na arhitekturi koja omogućuje dosljedno strukturirane zapise, njihovu korelaciju kroz više slojeva sustava te sigurnu pohranu i kontroliran pristup za analizu i izvještavanje. | ||
| + | |||
| + | **Arhitektura centraliziranog prikupljanja logova** | ||
| + | |||
| + | Centralizirani dizajn tipično uključuje nekoliko slojeva [4]: | ||
| + | * Izvori logova: API gateway/ | ||
| + | * Sloj prikupljanja (collector/ | ||
| + | * Centralno spremište: mjesto gdje se logovi trajno pohranjuju (log storage/ | ||
| + | * Odvojeni pristup za pregled i preuzimanje: | ||
| + | |||
| + | Ovakva segmentacija je korisna jer smanjuje rizik da kompromitacija jedne komponente automatski omogućuje brisanje ili manipulaciju centralnim logovima, a istovremeno olakšava audit pristupa i upravljanje zadržavanjem (retencijom). Primjer složene arhitekture za centralizirano prikupljanje logova prikazano je slikom 4. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | **Sigurnost i operativna pouzdanost centralnog sustava** | ||
| + | |||
| + | Centralizacija sama po sebi nije dovoljna već mora biti sigurna i otporna na potencijalne napade [4]: | ||
| + | * Zaštita u prijenosu i pohrani: logove treba štititi od manipulacije tijekom slanja te od neovlaštenog čitanja/ | ||
| + | * Zasebne svrhe, zasebni tokovi: sigurnosni događaji često se razlikuju od audit/ | ||
| + | * Monitoring log sustava: potrebno je imati procese koji otkrivaju prestanak logiranja te pokušaje neovlaštenog pristupa ili brisanja, i osigurati da su ozbiljni događaji odmah vidljivi odgovornim timovima. | ||
| + | * Retencija: logovi se ne smiju brisati prije isteka potrebnog razdoblja, ali ih se ne bi trebalo držati dulje od opravdanog (pravni, regulatorni i ugovorni zahtjevi). | ||
| ===== Zaključak ===== | ===== Zaključak ===== | ||
| + | |||
| + | Kroz seminar je pokazano da API logovi predstavljaju praktičnu i vrlo bitnu osnovu za forenzičku analizu incidenata nad web aplikacijama: | ||
| + | |||
| + | Dodatnu razinu vjerodostojnosti daje mogućnost provjere da logovi nakon nastanka nisu neprimjetno mijenjani ili brisani. U praksi se to postiže kombinacijom mjera poput detekcije pokušaja izmjena (tamper detection), ranog kopiranja/ | ||
| + | |||
| + | Zaključno, API logovi nisu samo operativni zapis rada sustava, nego forenzički artefakt te uz dobar dizajn logiranja, centralizirano prikupljanje i provjerljiv integritet, mogu pružiti pouzdan temelj za rekonstrukciju incidenta i kvalitetno izvještavanje. Bez tih preduvjeta, njihova se uloga često svodi na parcijalne indikacije koje je teže dokazno potkrijepiti. | ||
| + | |||
| ===== Literatura ===== | ===== Literatura ===== | ||
| Redak 178: | Redak 208: | ||
| [9] [[https:// | [9] [[https:// | ||
| + | |||
| + | [10] [[https:// | ||