今天审核了一下dz 7系列的内容,发现富文本一处代码,可绕过进行xss
首先我们看一下这个富文本绕过,直接看代码:
diszus_code.func.php:(305-317):
看见了吗。这里对audio函数的过滤,问题出在这里
当后面几个字符为wav时候我们就执行的是
哪里调用了这个函数呢:
这里匹配出来就直接传递进去了,而且后续也没有做任何处理,举一个例子吧:
如果我们发送的是
[audio]javascript:alert(document.cookie)//.wav[/audio]
这里我们绕过了后缀,并且加入了一个audio标签,src就是javascript:alert(document.cookie)//.wav
这个当然是直接执行了,看图:
到这里我们的测试就完毕了,下来我们看看这个怎么利用:
这里有两处脱裤地方,第一个地方,是ucenter,这个直接就没有进行csrf防御,直接发给管理员发消息,如图:
方法证明来自http://wooyun.org/bugs/wooyun-2010-076080
证明截图为:
下来看我怎么样发给管理员:
我们普通用户发一张图片给管理员,如图:
我们管理员看看这个消息:
这个演示完毕,下来我们看看,无视csrf防御的xss脱裤,我们要脱的就是这里的裤子
我们准备一个远程的js:
这个js,要干什么
第一点我们要寻找到一个formhash
第二点我们要用这个hash发送备份数据库的请求
第三我们跳转到备份数据库页面那道备份数据库,完事偷偷走人
这样一来我们把这个js放到,远端服务器上:
然后我们构造我们的xss,让他远程加载这个js:
然后我们发消息给管理员,把这个帖子分享给他:
然后管理员,收到消息就会查看,此帖子:
当他点击之后,所有的东西就被偷走了
ok 这个到这里就玩了,那么我们来看一个sql注入,虽然是后台的,但是我们这里有xss
所以我们无所不能,这里我就不给exploit了
直接后台验证:
ok到此为止所有的东西已经完毕.............