許多惡意語法都是建立在HTML上,PHP本身有提供轉換HTML碼的函數:htmlspecialchars()與htmlentities();其中htmlspecialchars()只會轉換HTML相關碼:
- '&' => '&'
- '"' => '"'
- ''' => '''
- '<' => '<'
- '>' => '>'
之前在題目試作/哇寶基本能力測試一文中,也有提到相關的觀念。另外附上那個時候google到的一個國外防止XSS的網頁:PHP XSS (cross site scripting) filter function,他有對HTML作是否可能被當作惡意的語法作判斷,不過測試後發現對中文的處理好像有點問題...就當作是英文的過濾函式吧~
出處:http://blog.roodo.com/taikobo0/archives/5881583.html
沒有留言:
張貼留言