Localde çalışıyor, sunucuda xss açığı var.
Bir iletişim formum var, localde çalışıyor, strip_tags() ile xss açıklarını önlüyorum ama sunucuda script yazınca hala xss açığı devam ediyor.
<pre>
$adsoyad = p("name_surname", true);
$email = p("email", true);
$konu = p("subject", true);
$msg = p("message", true);
</pre>
post'u p() fonksiyonu ile alıyorum :
<pre>
function p($par,$kontrol=false){
if ($kontrol == true){
return trim(strip_tags($_POST[$par]));
}else{
return $_POST[$par];
}
}
</pre>
ama hala script alert yazınca alert çalışıyor :(
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
PHP:strip_tags bu adresi incelersen uyarı kısmında bu fonksiyonun XSS açığı engelemek için kullanılmaması gerektiğini söylüyor, bunun yerine htmlspecialchars kullanmalısın.
Şu an deneme imkanım yok ama (evde değilim) benim yaptığım kodlarda ne hatası var?