防止短信验证码接口被恶意攻击解决办法!
短信验证码接口短信验证码验证码接口
2018-09-03

在对短信验证码发送情况进行监控时,如果发现短信验证码发送异常,会对近期短信验证码发送情况进行分析,比如说同一个手机号的发送频率、某个时间段的发送频率、持续时间等,如果出现短信验证码接口被恶意攻击,首先要确定被攻击的短信验证码接口地址和攻击方式,那么怎样防止短信验证按接口被恶意攻击呢?

 

增加图形验证机制

 

增加对同一个手机号码一天内发送验证码总次数限制,并且如果连续2-3天此手机号码有同样的短信验证码请求行为则直接加入黑名单。

 

由于此次攻击涉及到不同的业务场景,我们分别做不同的处理,针对注册页面增加图形验证码机制,针对忘记密码页面我们采取分步校验,先校验用户名密码并得到成功回执后才进行短信验证码的发送。

 

安全的图形验证码必须满足如下防护要求:

 

生成过程安全:图片验证码必须在服务器端进行产生与校验;

 

使用过程安全:单次有效,且以用户的验证请求为准;

 

验证码自身安全:不易被识别工具识别,能有效防止暴力破解。

 

单IP请求次数限制

 

在短信验证码接口使用了图片验证码后,能防止攻击者有效进行动态短信功能的自动化调用,但若攻击者忽略图片验证码验证错误的情况,大量执行请求会给服务器带来额外负担,影响业务使用。建议在服务器端限制单个IP在单位时间内的请求次数,一旦用户请求次数(包括失败请求次数)超出设定的阈值,则暂停对该IP一段时间的请求;若情节特别严重,可以将IP加入黑名单,禁止该IP的访问请求。该措施能限制一个IP地址的大量请求,避免攻击者通过同一个IP对大量用户进行攻击,增加了攻击难度,保障了业务的正常开展。

 

手机号码限定

 

根据业务特点,限定每个手机号码每天最多发送量

 

限制发送时间间隔

 

此限定已经非常普遍,即当单个用户请求发送一次动态短信之后,服务器端限制只有在一定时长之后(此处一般为60秒),才能进行第二次动态短信请求。该功能可进一步保障用户体验,并避免包含手工攻击恶意发送垃圾验证短信。

 

流程限定

 

如果是类似忘记密码功能页面,我们可以将手机短信验证和用户密码设置分成两个步骤,用户在设置完成用户密码后,并需要获取上一步的成功回执后才进行手机验证码的发送。

 

以上就是Mob给大家介绍的防止短信验证码接口被恶意攻击的解决办法,如果有短信验证码需求可以联系Mob官网,可以为你提供相关的短信验证码SDK服务以及解决方法。