漏洞名称:
短信攻击、短信轰炸、短信DDOS攻击
描述:
该攻击是常见的一种攻击,攻击者通过网站页面中所提供的发送短信验证码的功能处,通过对其发送数据包的获取后,进行重放,如果服务器短信平台未做校验的情况时,系统会一直去发送短信,这样就造成了短信轰炸的漏洞。
检测条件:
1.Web业务运行正常
2.Web页面中具有发送短信验证码功能。
检测方法:
- 手工找到有关网站注册页面,认证页面,是否具有短信发送页面,如果有,则进行下一步。
- 通过利用burp或者其它抓包截断工具,抓取发送验证码的数据包,并且进行重放攻击,查看手机是否在短时间内连续收到10条以上短信,如果收到大量短信,则说明存在该漏洞。
漏洞修复:
1.合理配置后台短信服务器的功能,对于同一手机号码,发送次数不超过3-5次,并且可对发送的时间间隔做限制。
2.页面前台代码编写时,加入禁止针对同一手机号进行的次数大于N次的发送,或者在页面中加入验证码功能,并且做时间间隔发送限制。
其他补充说明:
在网站测试的过程中,常常在用户注册登录时出现手机号/邮箱注册,这里收集了较为流行的临时接收短信的网站,可用于测试。具体如下:(摘自:https://www.sohu.com/a/322105042_120136504)
https://www.pdflibr.com/
http://www.z-sms.com/
https://www.receive-sms-online.info/
[随机推送] https://yunduanxin.net/
[国内] http://www.smszk.com/
[国外] http://receive-sms-online.com/
[国外] https://smsnumbersonline.com/
[国外] https://www.freeonlinephone.org/
[国外] https://sms-online.co/receive-free-sms
与此同时,写了个爬虫整理了上面涉及到的phone list,可作为黑名单进行反作弊建设:
https://gist.github.com/fr4nk404/1d8317a5f66ebe0933b8fade897497ff
具体案例:
几个绕过短信验证码限制的漏洞挖掘
浅谈轰炸漏洞攻防思路