ibeautiful
2018-10-05 22:31:22
<form method="post" action="test_form.php"/><script>alert('hacked')</script>為何這樣的是不安全的htmlspecialchars處理后
<form method="post" action="test_form.php/"><script>alert('hacked')</script>">這樣是安全的test_form.php"/ 小白怎么看都覺(jué)得只是兩個(gè)" /換了個(gè)位置出自http://www.w3school.com.cn/php/php_form_validation.asp
2 回答
胡子哥哥
TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
原諒我剛才看錯(cuò)了,還以為只討論htmlspecialchars。
防范xss首先應(yīng)從格式規(guī)范上面入手。比如你那個(gè)頁(yè)面表單里的姓名、電郵、網(wǎng)址,都是有格式的,取得參數(shù)值的時(shí)候用正則表達(dá)式或者手寫個(gè)函數(shù)校驗(yàn)一下,能省不少事情。
再比如評(píng)論這種沒(méi)有格式規(guī)范的,或者格式當(dāng)中允許出現(xiàn)html格式字符的,在輸入或者輸出的地方,用htmlspecialchars處理一下。這個(gè)函數(shù)的作用就是把一些html格式字符轉(zhuǎn)化為實(shí)體,這樣就會(huì)直接顯示出來(lái)而不會(huì)被解析了。
添加回答
舉報(bào)
0/150
提交
取消
