Citat:
Originalno napisao zextra
Ako se ne varam, posaljes zahtev skripta.php?nesto=<script>bla bla bla</script> (naravno, url-encoded), a u skripti se (kao pomoc prilikom debugovanja) nalazi var_dump($_GET), tako da browser automatski izvrsi skriptu prosledjenu kao request.
|
Upravo. Recimo, aC ima izveštaj o neuhvaćenom izuzetku ako je u debug modu. Taj izveštaj sadrži dumove autoglobalnih promenljivih i tu je bio problem - ogroman XSS propust. Ako u GET ubaciš nešto "nepristojno":
Kôd:
/?a=&%3C/pre%3E%3Cscript%3Ealert(0);%3C/script%3E%3Cpre%3E
eq.
/?a=&</pre><script>alert(0);</script><pre>
Dobićeš alert bez ikakvih problema jer var_dump ne čisti polja.
Drugi problem je čišćenje UTF ekodiranog sadržaja. To rešava prva funkcija.
... I tako dan za danom, pred kockastim ekranom
Btw, jedna od prednosti (ili mana u zavisnosti od ugla iz kog gledaš) open source projekta je što jako brzo
naučiš ovakve stvari. Neće proći ni 5 min i neko će ti ih već izbunariti.