jQuery使用中可能被XSS攻击的一些危险环节提醒
html,js,output当用户输入的字符串是像这样的时,虽然这个 元素不会马上被插入到网页的 DOM 中,但这个 DOM 元素已经被创建了,并且暂存在内存里。而对于 元素,只要设置了它的 src 属性,浏览器就会马上请求 src 属性所指向的资源。在上面的示例代码中,创建元素的同时,也设置了它的属性,包括 src 属性和 onerror 事件监听器,所以浏览器会马上请求图片资源,显然请求不到,随机触发 onerror 的回调函数,也就执行了 JavaScript 代码。推荐阅读 $ 的官方文档:http://api.jquery.com/jQuery/以上这些方法不仅创建 DOM 元素,并且会马上插入到页面的 DOM 树中。如果使用 标签插入了内联 JS 会立即执行。不安全的输入来源document 的大多数属性都可以通过全局的 window 对象访问到。加 * 的属性返回的时编码 后的字符串,需要解码才可能造成威胁。
用户评论