2012-08-07 134 views
0

我有這樣防止內嵌Java腳本XSS注入

http://www.example.com/?input=userinput 

雖然我做了一個網址XSS注入過濾器

strip_tags(); 

,但是看看這個,我想借此輸入並把它放在一個url這樣

<a href ="http://www.example.com/?page=userinput"> </a> 

想象用戶可以在他的用戶輸入部分

編寫代碼3210
onMouseOver%3dalert%2839793%29%2f%2f 

這將添加onMouseOver事件到我的網址!

回答

0

請看看OWASP XSS預防備忘單。它將詳細解釋所有這些內容: https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet

要回答這裏提到的特定主題,需要在將輸入作爲url的一部分打印到頁面之前進行url編碼。對於HTML屬性中的其他數據,如果它處於像onclick這樣的事件處理程序中,則需要應用HTML屬性編碼以及可能的javascriot編碼。