产品安全:如何解决短信验证码被攻击难题

短信验证码的作用对于APP、网站而言不言而喻,是核验用户身份、保障用户账户安全的一道防线。然而,在企业网站和应用运营过程中,产品设计的小漏洞很容易造成短信验证码被攻击,进而给用户和企业带来麻烦。例如,用户注册页、短信验证码快速登录页、在线投票页等,诸如此类接口未调用对方身份验证的场景,都是常被攻击的。

短信验证码被攻击分为两种情况,一是不法分子利用发送接口漏洞,通过不断变换IP地址的方式伪装成大批量手机号码获取验证,从而对企业短信费用造成高额损失;二是不法分子只攻击某个特定号码,反复向同一个手机号码发送验证码,对机主形成严重骚扰,并可能给企业带来投诉和处罚。

无论是出于那个目的,短信验证码一旦被攻击都会产生非常不良的影响,关于提高验证码安全性有以下几方面思考。

1、手机号码限制。限制单个手机号码每天的最大发送次数。超过次数则不能再发送短信;不过也需要谨慎定义该号码的锁定时段,需要既保障用户真实的注册、登录操作不受影响,又能有效防范攻击;

2、增加行为式验证码。用户获取验证码之前,可通过触点式和拖动式行为验证确保用户真实身份,将黑客和刷机工具拒之门外;

3、设置单个IP地址某个时间段内最大的发送量。该手段可很好的预防单一IP地址的攻击,但是对于变换IP地址的黑客不奏效,并且很可能会因为禁止某个IP形成一刀切的限制,导致该IP下其他用户也无法正常获取验证码。例如,某集团公司集体注册某APP。

4、改变验证码下发流程。先完成用户注册,再下发验证码绑定手机,不过这样增加了用户的操作步骤,影响用户体验的流畅度。

5、设置验证码获取间隔。限制同一个手机号码重复发送的时间间隔,通常设置为60-120秒;

6、采用一键登录用与短信验证码组合模式。一键登录是通过运营商网关取号的方式,自动识别用户号码完成核验,全过程采用安全系数高的非对称加密算法加密处理,防篡改防抓包,在安全性上有可靠保障。一键登录需要用户具备数据蜂窝网络,假设在无网情况下,则不能完成验证。因而,企业可以采用一键登录与短信验证码组合的方式,当一键登录核验失败时再切换到短信验证码,尽可能的保障用户操作的便捷性和流畅性。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值