小言_互联网的博客

产品安全:短信验证码的安全防护策略

225人阅读  评论(0)

在短信验证码的产品设计过程中需要考虑的问题有哪些?

现如今短信验证码的应用范围极为广阔,各种网站、手机APP以及网上银行,都需要通过短信验证码完成相关业务。在使用过程中,由于对产品风控意识的薄弱,经常会出现短信被攻击盗刷的事件,引起一些不必要的损失,甚至影响到正常业务的运行。下面我们就一起了解下短信验证码产品设计过程中需要考虑的问题及风控策略。

短信恶意攻击的目的

目前存在的短信恶意攻击无非是有两种目的:

1.以攻击某个特定手机号为目的

这类攻击目标主要是攻击者借助web网站短信接口对目标手机号进行短信轰炸。攻击者会先收集互联网上多个未经防护的网站短信接口,设定要攻击的手机号码通过模拟用户,循环向后台发送短信验证码请求,达到攻击手机号的目的,使手机号的拥有者不堪其扰。

2.以恶意刷取目标网站短信费用为目的

这类攻击主要目的是刷掉目标网站的短信费用,在第一种基础上攻击者会不停变换各种接口参数如手机号、IP(采用高匿代理)等去请求后台发送短信验证码,进行恶意刷短信,后台根本无力辨别用户真伪,可刷取数以万计甚至更高的短信费用。攻击目标明确,难以防护,因其变换不同IP、手机号,一些简单措施基本失效。被攻击的公司在损失费用的同时,也必定会收到用户的投诉,公司形象也会受损。

容易受到攻击的场景

最常被攻击的场景是用户注册页面,或者是手机短信验证码快捷登录页面、网络在线投票等页面。此类场景下的发送短信验证码的接口,往往未对调用方进行相关的身份验证。

如何对短信进行风控

发送时间间隔

设置同一个号码重复发送的时间间隔,一般设置为60-120秒。该手段可以在一定程度上防止短信接口被恶意攻击,且对用户体验没有什么伤害。但是不能防止黑客更换手机号进行攻击,防护等级较低。

获取次数限制

限制某个手机号在某个时间段内获取短信验证码次数的上限。采用这种策略时在产品设计过程中,有几点需要注意。

  1. 定义上限值。根据业务真实的情况,甚至需要考虑到将来业务的发展定一个合适的上限值,避免因用户无法收到短信验证码而带来的投诉。
  2. 定义锁定时间段。可以是24小时,可以是12小时、6小时。需要根据业务情况进行定义。

IP限制

设置单个IP地址某个时间段内最大的发送量。该手段可很好的预防单一IP地址的攻击,但是也有两个很明显的缺点:

  1. 对于经常变更IP地址进行攻击的攻击者,该手段没有很好的效果。
  2. IP的限制经常会造成误伤。如在一些使用统一无线网的场所,很多用户连接着同一个无线网,这个IP地址就容易很快达到上限,从而造成连接该无线网的用户都无法正常的收到验证码。

图形验证码

在发送短信验证码之前,必须通过通过图形验证码的校验。这种手段相对来说可以防止某些攻击,因此也是目前非常普遍的短信防攻击机制。但是在使用过程中涉及到用户体验问题,不能简单粗暴地套用这一策略。以下几个点值得仔细考虑:

  1. 是不是每次获取短信验证码之前都需要用户输入图形验证码,一般来说这样做会极大地影响用户体验,虽然是相对安全,但是用户用着不爽了。
  2. 可以给一个安全范围。结合手机号限制、IP限制来考虑,比如同一个手机号当天第3次获取短信验证码的时候,出现图形验证码;比如同一个IP地址当天获取验证码次数超过100次后,出现图形验证码。

加密限制

通过对传向服务器各项参数进行加密,到了服务器再进行解密,同时用token作为唯一性识别验证,在后端对token进行验证,验证通过才能正常将短信发送。该手段可以在保证用户体验的情况下,可以有效防止某些攻击,因此也是目前比较常见的短信防攻击机制。同时也有很明显的缺点:

  1. 使用的加解密算法可能会被识别,需要考虑使用识别难度较大的加解密算法。
  2. 在算法不被识别的情况下可以有效防止报文攻击,但是无法防止浏览器模拟机式攻击。

以上是几种常见的短信风控策略,在具体的产品设计过程中,可以综合使用。

新昕科技的企业短信防火墙

为了在产品安全和优秀的用户体验之间寻找一个极佳的平衡。使用[短信防火墙]。 从以下几个方面概括一下:

  1. 为保障优秀的用户体验,摈弃了目前的图形验证码等人机校验程序,做到无感验证。从而达到完美的用户体验。
  2. 通过机器学习用户特征,将不同的特征分布为细小的蜂窝,AI算法准确识别千万个蜂窝是否被攻击,单个蜂窝被攻击被限制时,其它蜂窝不受影响。
  3. 通过机器学习业务数据,动态调整限流决策,一旦识别到攻击特征时自动对拦截受影响的蜂窝攻击,正常时响应的拦截自动消除。
  4. 采用可信体系,将老客户VIP加入到可信列表,在受到攻击时,大部分蜂窝被拦截的情况下,保证老客户通道畅通无阻,从而降低误伤率。
  5. 通过机器学习业务数据及攻击特征样本,可以有效防止攻击者通过大量设备发起攻击,随意切换手机号及IP地址的方式盗刷短信。同时加入模拟器检测,以及前后端参数加密等措施组合为立体AI防御,有效防止黑客攻击。
  6. 风控防火墙控制台中的风险大盘,交易级别实时监控,让攻击防御情况尽在掌握。


转载:https://blog.csdn.net/weixin_44549063/article/details/113448486
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场