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

中关村在线网上商城设计缺陷可登录任意账户(外送注册任意手机号/短信炸弹)

2016-05-31 01:00

1.登陆任意账户

1.1首先是用户注册界面

QQ图片20160415150641.png



在输入手机号后,鼠标焦点转移到其它输入框,此时网页会发送一个ajax请求,验证手机号是否注册:

QQ图片20160415151031.jpg



QQ图片20160415151040.png



手机号已注册返回flag为0,未注册flag为1

可以burp暴力跑出已注册手机号

1.2登陆处

code 区域
管理补充:任意账号登录

1.先输入自己的手机号,接收验证码

2.替换要登录的手机号

3.将自己手机号收到的验证码输入,即可登录他人账号



有两种登陆方式,我们选手机验证码登陆

QQ图片20160415151346.png



这里填我们自己的手机号,收到验证码后,把手机号改为前一步跑出的已注册用户,验证码用我们收到的,成功登陆:

QQ图片20160415144858.jpg





2.注册任意用户

上一个洞第二步,如果输入未注册的手机号,登陆,系统会默认这次登陆行为等同为注册,通过1.1的步骤可以证明:

QQ图片20160415151040.png



登陆前,显示为未注册

QQ图片20160415151811.png



登陆后,手机号已注册,手机号原主人无法注册了



3.短信炸弹:

还是登陆处,这里对发送验证码做了两个限制:

QQ图片20160415152059.jpg



1.限制发送周期

2.需要填写手机号和正确的验证码

这里的两个限制并不能杜绝短信炸弹:

1.在js里限制发送周期是没用的,包重放就绕过了

2.验证码在生命周期内可以反复使用

如图:

QQ图片20160415152609.png



QQ图片20160415144004.png

漏洞证明:

QQ图片20160415144858.jpg



QQ图片20160415144004.png

修复方案:

1.验证码和手机号绑定,而不是一段时期内有效

2.在服务端限制验证码发送周期

3.这一点可以参考是否正确:不要在收入手机号后就显示是否已注册,这点同样可以用在账号,银行卡号等上面,只有在点击注册后才能知晓结果,并且该注册操作要防范包重放攻击,毕竟正常用户不会用别人的手机去注册,所以也对用户体验影响个人认为不大

知识来源: www.wooyun.org/bugs/wooyun-2016-0196634

阅读:76707 | 评论:0 | 标签:无

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

“中关村在线网上商城设计缺陷可登录任意账户(外送注册任意手机号/短信炸弹)”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

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

推广

工具

标签云