2010-06-25 68 views
1

我正在處理將數據發佈到URL的HTML表單。我也使用Jquery獲取查詢字符串參數,並將它們添加到我發佈到URL的數據中。有什麼辦法可以防止XSS攻擊?任何HTML編碼插件或內置函數?保護針對XSS的JQuery代碼

+2

我認爲你需要更具體。 – 2010-06-25 15:43:06

回答

1

您無法從XSS保護jQuery。服務器軟件中出現XSS漏洞。請參閱Exploit_scenarios以更好地瞭解XSS的工作原理。

輸出用戶生成數據的網站如果輸出未經過濾的用戶生成內容,可能存在XSS漏洞,因爲用戶可以使用惡意代碼創建<script/>標記。但是,在發送到客戶端(瀏覽器)之前,您需要在服務器上對其進行過濾。

+4

XSS不限於服務器,但在這種情況下,你可能是對的。通過附加字符串來動態地使用jQuery創建html元素是很常見的,然後您必須像在服務器端一樣轉義html。 – 2011-02-07 13:48:38

+0

如果您使用像jQuery模板這樣的模板庫,那麼HTML轉義就是爲您完成的。 – 2011-05-30 18:06:52

9

jigfox的答案不是100%正確。有時,您可以直接在JavaScript中使用URL中的數據。即使您清理鏈接服務器端,也不意味着其他網站無法使用惡意URL鏈接到您的網站。

我用這個URL來證明檢查我的網站: https://www.owasp.org/index.php/XSS_%28Cross_Site_Scripting%29_Prevention_Cheat_Sheet

+2

另外,您可以使用基於DOM的xss攻擊,其中代碼永遠不會到達服務器(例如

  • 11. 保護JQuery AJAX代碼的指南?
  • 12. 框架,以保護XSS
  • 13. 保護XSS(理想功能)?
  • 14. PHP,Javascript JSON,XSS保護
  • 15. .htaccess或PHP保護代碼針對多個快速請求
  • 16. 保護Ruby代碼
  • 17. PHP - 保護代碼
  • 18. node.js代碼保護
  • 19. 保護PHP代碼
  • 20. 源代碼保護
  • 21. 保護Ruby代碼
  • 22. 保護DLL的源代碼
  • 23. 保護Excel的VBA代碼
  • 24. 保護我的代碼?
  • 25. ASP.NET從XSS保護可編輯的IFrame
  • 26. 用動態生成的JavaScript保護XSS
  • 27. 已生產項目的XSS保護
  • 28. Sinatra應用程序中的XSS保護
  • 29. iframe xss保護不同的域名
  • 30. 針對PhpStorm的jQuery代碼片段