Pogledajte određenu poruku
Staro 26. 12. 2006.   #46
zoro
Zoran Ševarac
Certified
 
Datum učlanjenja: 26.04.2006
Lokacija: Beograd
Poruke: 70
Hvala: 0
40 "Hvala" u 4 poruka
zoro is on a distinguished road
Default

Vidis sta je strucnjak za bezbednost
Koliko ja vidim problem je sto htmlspecialchars ne podrzava UTF-7.
Da je UTF-8 u pitanju dovoljno bi bilo staviti
htmlspecialchars($string, ENT_QUOTES, 'UTF-8');

U slucaju sa UTF-7 prvo treba raditi htmlspecialchars pa onda mb_convert_encoding i onda nema problema:

PHP kôd:
<?php 
 
header
('Content-Type: text/html; charset=UTF-7'); 
 

$string "<script>alert(0);</script>"
$string htmlspecialchars($stringENT_QUOTES); 
$string mb_convert_encoding($string'UTF-7'); 
 
echo 
$string
 
?>
E sad ako se sve ovo ispostuje da li i dalje postoji mogucnost da se pored htmlspecialchars() ubaci XSS?
Pitam jer se inace ovo pretvara u igre bez granica: ti resenje a neko tamo odmah novi napad.
Negde sam procitao da se zbog toga preporucuje da se napravi izlazni filter u kome se ne navodi sta se zabranjuje vec samo sta je dozvoljeno i na taj nacin se stiti od svih buducih varijacija na temu.
Konkretno me interesuje i da li moze da se ubaci neki od JavaScript event hendlera koji ce da prodje htmlspecialchars() ?
zoro je offline   Odgovorite uz citat