什么是短信盗刷
短信盗刷是指使用某种技术手段,伪造批量手机号多频次调用短信推送接口,导致短信系统因欠费而无法正常提供服务,不仅会给公司带来一定的经济损失,严重点可能会影响短信服务提供商正常的对外服务。
什么是短信轰炸?
短信轰炸是指攻击者利用某种技术手段,绕过客户端和服务端系统的拦截,向目标手机号码连续大批量推送短信,达到恶意骚扰目标用户的目的。
解决方案
短信盗刷和短信轰炸本质上属于同一类问题,原因都是系统没有对短信推送接口做有效的限制导致接口被大批量调用,因此这两个问题的解决方案的是统一的,目前业界比较成熟的方案有以下几种,一般我们会采用多种方案共同去解决或者说缓解问题。
- 添加图形验证码校验。即用户在发送短信前,校验图形验证码,验证通过之后才发送短信,这个应该是目前相对较为行之有效的办法;
- IP黑名单。监控发现某个客户端IP存在恶意攻击的可能性,可限制该IP的短信发送功能,这种方案可以通过代理服务器绕过;
- 限制发送频次。设置诸如:一个手机号每天限制最多发送5次;每分钟内限制只能发送1次等限制;
- 短信提供商添加监控和告警。目前主流的短信提供商应该都提供了这类服务,例如阿里短信就可以设置短信发送总量的阈值告警,这种方案可以在问题出现时起到尽早发现规避的作用;
- 前后端token校验。前端发送短信的时候提交之前服务端下发的token,服务端token校验通过之后再请求接口发送短信;
- 接口入参加密。短信发送接口可以基于综合考量,采用较为安全的加密算法,可以避免或进一步提高恶意攻击的成本