2010-06-25 57 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攻击,其中代码永远不会到达服务器(例如