防护短信验证码本地窃取攻击的方法及系统与流程

文档序号:35996684发布日期:2023-11-16 08:53阅读:23来源:国知局
防护短信验证码本地窃取攻击的方法及系统与流程

本发明涉及软件,尤其是涉及防护短信验证码本地窃取攻击的方法及系统。


背景技术:

1、在实际应用中,短信验证是一种常见的身份认证方式,该方式可以简单有效地确认用户是否持有其所提供的手机号码,从而进行用户身份认证。目前,短信验证被广泛应用于移动应用中,例如当用户进行部分操作(如注册登录、重置密码等)时,应用通常会通过短信验证来确认用户身份;当用户进行敏感度较高的操作(如交易支付等)时,应用还可能通过短信验证进行多因素认证,以提高账户的安全性。因此,短信验证方式的安全性至关重要。

2、其中,短信验证方式的安全性与验证码的保密性紧密相关,如验证码泄露将直接导致身份盗用、隐私泄露等严重后果。在移动系统中,验证码的保密性主要面临本地窃取攻击的威胁,例如恶意软件可能通过信箱读取直接获取验证码,或者通过通知栏、剪切板等渠道间接获取验证码;以及用户可能无意间将验证码输入钓鱼软件等;因此,如何防护短信验证码遭受本地窃取攻击是亟需解决的问题。


技术实现思路

1、有鉴于此,本发明的目的在于提供防护短信验证码本地窃取攻击的方法及系统,通过对终端设备的短信系统服务进行功能扩展,使短信系统服务在接收到短信信息时,将短信信息中的验证码定向发送至token信息对应的目标应用客户端,有效解决了短信验证码遭受钓鱼攻击、信箱窃取、通知栏窃取等本地窃取攻击,增强了短信验证安全性,保障了用户信息安全,具有较好的实用价值。

2、第一方面,本发明实施例提供了一种防护短信验证码本地窃取攻击的方法,应用于终端设备;其中,终端设备包括短信系统服务以及至少一个应用客户端,终端设备与应用客户端对应的服务端通信连接,终端设备存储有应用客户端对应的第一密钥,服务端存储有该应用客户端对应的第二密钥,且,第一密钥和第二密钥相同;该方法包括:应用客户端向对应的服务端发送验证码请求信息,以使服务端根据验证码请求信息生成短信信息;其中,验证码请求信息包括:终端设备对应的手机号码信息,以及该应用客户端对应的第一密钥和token信息,token信息为应用客户端在短信系统服务注册获得;短信信息包括验证码和token信息;短信系统服务获取服务端发送的短信信息,并查找短信信息中是否存在token信息;若存在,对token信息进行验证,并在验证通过后,解析得到短信信息中的验证码;以及,将验证码发送至token信息对应的目标应用客户端,以使目标应用客户端根据验证码进行短信验证。

3、优选地,应用客户端向对应的服务端发送验证码请求信息的步骤之前,该方法还包括:短信系统服务获取应用客户端的应用包名信息,并生成该应用客户端对应的token信息;以及,将应用包名信息、token信息以及该token信息的生成时间戳存储在预设的映射表tokenmap中;其中,tokenmap的key值为token信息,value值包括应用包名信息以及该token信息的生成时间戳。

4、优选地,对token信息进行验证的步骤,包括:短信系统服务在tokenmap中查找是否存在token信息,若存在,获取该token信息在tokenmap中对应的目标应用包名信息和目标生成时间戳;以及,获取当前时间戳,并计算当前时间戳和目标生成时间戳之间的时间间隔,若时间间隔小于预设时长,则判定token信息验证通过。

5、优选地,将验证码发送至token信息对应的目标应用客户端的步骤,包括:短信系统服务创建intent对象,并将目标应用包名信息设置为intent对象的接收人,将验证码存储至intent对象中,得到目标intent对象;以及,将目标intent对象发送至目标应用客户端,以使目标应用客户端根据目标intent对象获取验证码。

6、优选地,将验证码发送至token信息对应的目标应用客户端的步骤之后,该方法还包括:短信系统服务在tokenmap中删除token信息,以及该token信息对应的目标应用包名信息和目标生成时间戳。

7、优选地,将应用包名信息、token信息以及该token信息的生成时间戳存储在预设的映射表tokenmap中的步骤之前,该方法还包括:短信系统服务在tokenmap中查找是否存在应用客户端的应用包名信息,若不存在,将应用包名信息、token信息以及该token信息的生成时间戳存储在tokenmap中。

8、优选地,该方法还包括:若短信系统服务在短信信息中未查找到token信息,将短信信息存储至短信箱。

9、第二方面,本发明实施例提供了一种防护短信验证码本地窃取攻击的方法,应用于服务端;其中,服务端与存储有对应的应用客户端的终端设备通信连接,终端设备还包括短信系统服务,终端设备存储有应用客户端对应的第一密钥,服务端存储有该应用客户端对应的第二密钥,且,第一密钥和第二密钥相同;该方法包括:获取应用客户端发送的验证码请求信息;其中,验证码请求信息包括:终端设备对应的手机号码信息,以及该应用客户端对应的第一密钥和token信息,token信息为应用客户端在短信系统服务注册获得;判断验证码请求信息中的第一密钥是否与第二密钥相等;若是,根据验证码请求信息生成短信信息;其中,短信信息包括验证码和token信息;将短信信息经短信系统服务发送至应用客户端,以使应用客户端根据短信信息中的验证码进行短信验证。

10、第三方面,本发明实施例提供了一种防护短信验证码本地窃取攻击的系统,该系统包括终端设备和服务端;其中,终端设备包括短信系统服务以及至少一个应用客户端,终端设备与应用客户端对应的服务端通信连接,终端设备存储有应用客户端对应的第一密钥,服务端存储有该应用客户端对应的第二密钥,且,第一密钥和第二密钥相同;终端设备,包括第一处理设备和第一存储装置;其中,第一存储装置上存储有第一计算机程序,第一计算机程序在被第一处理设备运行时执行上述第一方面的防护短信验证码本地窃取攻击的方法的步骤;服务端,包括第二处理设备和第二存储装置;其中,第二存储装置上存储有第二计算机程序,第二计算机程序在被第二处理设备运行时执行上述第二方面的防护短信验证码本地窃取攻击的方法的步骤。

11、第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述第一方面和第二方面的防护短信验证码本地窃取攻击的方法的步骤。

12、本发明实施例带来了以下有益效果:

13、本发明实施例提供了防护短信验证码本地窃取攻击的方法及系统,对于终端设备,首先应用客户端向对应的服务端发送验证码请求信息,以使服务端根据验证码请求信息生成短信信息;然后,短信系统服务获取服务端发送的短信信息,并查找短信信息中是否存在token信息;若存在,对token信息进行验证,并在验证通过后,解析得到短信信息中的验证码;将验证码发送至token信息对应的目标应用客户端,以使目标应用客户端根据验证码进行短信验证。上述方式中,通过对终端设备的短信系统服务进行功能扩展,使短信系统服务在接收到短信信息时,将短信信息中的验证码定向发送至token信息对应的目标应用客户端,无需将包含验证码的短信信息存储进短信箱或通过通知栏展示,有效解决了短信验证码遭受钓鱼攻击、信箱窃取、通知栏窃取等本地窃取攻击,增强了短信验证安全性,保障了用户信息安全,具有较好的实用价值。

14、本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书以及附图中所特别指出的结构来实现和获得。

15、为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1