1、短信轰炸

没有对短信发送进行合理的次数限制,攻击者可以多次发送短信,造成短信轰炸,消耗短信资源。登录界面、忘记密码、用户注册等所有短信验证码发送点都可以试试。

用靶场来进行验证,burp抓取数据包
https://comm./tool/target/yzm/000.php
发送到intruder爆破模块,payloads选择Nll payloads,对同一手机号进行批量短信发送。
没有对发送短信做限制。
可以看到爆破15次后提示通关成功。
当然如果单线程不行的话也可以试试并发,并发漏洞是指在多线程或多进程环境中,由于对共享资源的访问没有正确的同步控制,导致程序行为异常或安全问题的漏洞。
使用turbo intruder插件进行并发,造成短信轰炸

2、特殊格式绕过

手机号前后增加以下字符串,实现绕过,进行短信验证码发送。

空格、加号、86、086、0086、+86、0、00、/r、/n、,、&、&&、||等等特殊字符

+86代表国内的手机号,手机末尾加的特殊字符会被过滤掉,无论多少特殊字符进入数据库里的号码不变,但是绕过了前端检查。

https://comm./tool/target/yzm/111.php

尝试各种常见的特殊字符,得到通过+86可以绕过

短信验证码漏洞利用技巧总结&&端午社区活动

3、万能验证码

    不管收到的短信验证码为多少,验证码参数输入000000、888888、111111、123456等就能直接实现登录操作。

https://comm./tool/target/yzm/222.php

4、短信验证码回显

    短信验证码在返回包里面?注意看数据包的返回情况,有时候会有意外收获。

https://comm./tool/target/yzm/333.php

5、修改请求包或返回包参数绕过

    修改请求包或者返回包的值false 为 true(只是举例,根据实际情况进行修改),如果前端校验的话,可以实现短信验证码绕过。

6、修改返回包绕过

    修改返回的值false 为 success(只是举例,根据实际情况进行修改),如果前端校验的话,可以实现短信验证码绕过。

有更多的绕过方法欢迎师傅们在留言区进行讨论
端午活动专区
https://comm./2330.html