今天发现个微信群发的漏洞.还没玩.就被修补了.
于是就有了这个漏洞的产生.
同样问题产生在重置用户密码的环节.
在微信官方的首页上发现新增了如下功能模块
访问后看到这个功能.来了兴趣,www.2cto.com
在这个页面输入一个已经注册了微信的手机号.
得到如下提示
选择我已收到验证码就跳转到一个修改密码的页面,如下
在这一步抓包.得到如下包文
check=false&phone=18666666666&t=w_password_phone&isemail=0&value=18666666666&method=reset&country=A86&getmethod=web&password=zzzzzz&password2=zzzzzz&verifycode=1234
将包文中的verifycode进行重复提交后发现会提示
这样的话.就要想办法去突破.
经过一系列尝试后发现如果在phone=18666666666的号码后面添加不为数字的字符时,可以绕过此限制.于是推理出其判断方法
如果phone=18666666666的尝试次数大于阀值,则提示请求过于频繁
但在这一步之前没有对phone进行提纯.所以可以将特殊字符带入
但在下一步的时候进行了提纯.只取了phone中的数字部分.
然后在取出此号码的verifycode进行比对.
比对成功则修改密码
修改密码成功.
这个地方的薄弱环节在于微信重置密码的验证码为4-5位纯数字.
且数字范围在1000-20000之间
也就是说.我只要尝试19000次.我用50个线程发包.3分钟即可成功修改一个密码.
在发现此漏洞后.我修改了两个人的微信帐号.
一个是最近很喜欢的明星柳岩的经纪人
柳岩在微搏上公布了经纪人的手机号.
成功修改进入后.通过微信自带的离线消息查看功能.可以成功查看其所有QQ好友
于是得到了柳岩的QQ号..但是拒绝添加好友了..伤心
这里由于隐私原因.就不上图了.
另外一个是腾讯的某高管.我在百度上搜索到了腾讯高管的list
然后通过list里的手机号修改了其密码.和尊敬的马化腾马大哥进行了一次亲密的交谈.
由于夜深了.他不在线.所以没收到其回应.附图几张.
和马哥开了个小玩笑.
然后找到了最近正好很火的周鸿祎手机泄漏的视频.
同样通过音频分析得到号码.尝试修改其微信密码..
发现周哥果然没有注册微信.放弃了尝试