日期:2019-02-25 来源:短信大咖
大部分的网站和移动应用APP在注册时需要手机号码获取验证码短信,利用短信验证来鉴别手机号是否属于用户本人,甚至很多平台用户登录也需要手机验证码。然而,这种验证工具背后却暗藏许多安全隐患。其中最主要的一种就是黑产利用各类平台的短信验证接口进行短信轰炸。
短信轰炸机的工作原理
短信轰炸软件可以自动收集网络上的需要短信验证码的网站。轰炸者使用轰炸软件,随意输入一个或一组手机号码,轰炸软件首先自动搜索到一大堆可以发送短信验证码的网站逐个访问,然后在每一个网站上把手机号都自动填上并模拟人工点击获取验证码,这些网站就会同时往被输入的手机号码发短信了。轰炸软件找的网站越多,发的短信也就越多。这种“短信炸弹”可以多达每秒发送上百条。轰炸软件可以设置对各个网站的短信验证码请求次数和时间,比如每隔几分钟请求一次,24小时不间断地向被输入的手机号码发送短信。
短信轰炸会造成短信通道阻塞、企业品牌形象受损、短信费用被大量恶意消耗等负面影响;对用户的手机通信和正常生活造成严重的影响。
应用网站防止短信轰炸的安全措施
1、增加图形验证
获取短信验证码前增加图形验证方式,防止轰炸软件自动化调用发送验证码短信。
安全的图形验证码必须满足如下防护要求:
- 生成过程安全:图片验证码必须在服务器端进行产生与校验;
- 使用过程安全:单次有效,且以用户的验证请求为准;
- 验证码自身安全:不易被识别工具识别,能有效防止暴力破解。
2、限制单个IP地址24小时内请求验证码的次数
对于请求次数(包括失败请求次数)超出设定的阈值的IP地址,可以暂停一段时间的请求,若情节严重,可以将该 IP 加入黑名单,禁止该 IP 的访问请求。
3、限制同一手机号码获取送验证码的次数
例如:设置在一个小时内同一手机号码获取验证码的次数限制,以及24小时内获取验证码的总次数限制。
4、限制验证码获取的间隔时间
同一手机号码获取验证码的间隔时间大于60秒,建议120秒。