4
A
回答
5
xss_clean()
函數不會刪除全部 HTML會刪除/替換被認爲危險的特定事物,如<script>
標記。
http://codeigniter.com/user_guide/libraries/security.html
的XSS過濾器會查找常用技術來觸發JavaScript或其他類型的代碼試圖劫持cookie或做其他惡意行爲。如果遇到任何不允許的情況,則通過將數據轉換爲字符實體來使其變得安全。
有人在您的頁面注入<p>
標記,雖然可能不需要,但並不是真正有效的攻擊。你必須指定你想要用它做什麼。在很多情況下,你會想要 HTML輸出已被xss_clean()
編輯。
這聽起來像你想htmlspecialchars()
或strip_tags()
(注意:這兩個非常不同的東西)。如果您想編碼的HTML,你也可以使用CI的html_escape()
:
echo html_escape($this->input->post('question'));
如果你想HTML輸出,而不是實體,只是本身使用XSS過濾器:
echo $this->input->post('question', TRUE);
echo xss_clean($user_input);
相關問題
- 1. CodeIgniter - 爲什麼使用xss_clean
- 2. Codeigniter php標籤剝離與xss_clean
- 3. 我不能笨
- 4. 不能在笨
- 5. 笨不會夾
- 6. 不能在笨
- 7. 笨不顯示
- 8. 不能在笨
- 9. 找不到笨
- 10. 不能笨
- 11. 不能與笨
- 12. 不能在笨
- 13. 不能得到笨
- 14. 笨MIN_LENGTH []不工作
- 15. 圖像不是笨
- 16. 笨分頁不wotking
- 17. 笨set_message不工作
- 18. 笨
- 19. 笨驗證碼不工作
- 20. 笨不會重定向URL
- 21. 笨刪除查詢不能
- 22. 笨路由不工作
- 23. 笨會話不會設置
- 24. 找不到對象! - 笨
- 25. 形式笨不張貼
- 26. 阿賈克斯不笨
- 27. `translate_uri_dashes`不工作笨路線
- 28. 笨基URL不工作
- 29. 笨的index.php不執行
- 30. 笨找不到網址
所以,如果我添加html_escape,我想我不需要添加TRUE,對吧? – 2012-03-03 22:28:28
嘿,是的好點。我不是XSS攻擊方面的專家,我不能評論CI的過濾器是多麼健壯,但我確實相信對於編碼而言,'html_escape()'就足夠了。如果你想要有實際的HTML輸出,但是需要''xss_clean()'''',但是要過濾掉潛在的危險部分。 – 2012-03-03 22:32:10
查看關於'xss_clean()'的這篇文章:http://stackoverflow.com/a/5346696/398242請記住,轉義/編碼輸出始終依賴於上下文相關 - 沒有一個工具可以處理每個作業保證你的安全。 – 2012-03-03 22:38:52