一种防止重放攻击的方法、装置和系统制造方法及图纸

技术编号:33532887 阅读:17 留言:0更新日期:2022-05-19 02:07
本发明专利技术提供了一种防止重放攻击的方法、装置和系统,该方法包括:当监听到浏览器向应用服务器发送的请求时,拦截请求;获取请求匹配的时间戳并确定待加密数据;根据待加密数据确定加密字符串;向网关发送含有加密字符串的请求,以使得网关对含有加密字符串的请求进行解密,根据解密结果判断请求是否为重放攻击。本发明专利技术通过在请求中添加加密字符串,使得加密计算结果足够随机,可以抵抗暴力破解,使安全性能有效提升;本发明专利技术中的可逆加密算法计算结果小、计算速度快,对系统资源占用少,易于实现,应用场景广。应用场景广。应用场景广。

【技术实现步骤摘要】
一种防止重放攻击的方法、装置和系统


[0001]本专利技术涉及网络安全
,特别是涉及一种防止重放攻击的方法、一种防止重放攻击的装置和一种防止重放攻击的系统。

技术介绍

[0002]随着互联网主动防护技术的增强,传统的攻击手段如利用安全漏洞、暴库、DDOS(Distributed Denial of Service:分布式拒绝服务攻击)等逐渐减少,新时期网络安全风险多以隐蔽的形式出现,更难识别。重放攻击是最隐蔽的网络攻击方式之一,攻击者利用网络监听或者其他方式盗取API请求,进行一定的处理后,再把它重新发给认证服务器,这种攻击会不断恶意或欺诈性地重复一个有效的API请求,造成业务关系混乱和重大损失。应对重放攻击的防御方法包括对发送端身份的验证和对消息附加信息进行识别两个方式,对消息附加信息的处理方法又包括加随机数、加时间戳、加序列号等,现有技术一般是对上述方法的综合应用,但是仍存在安全性能与维护成本、运行效率之间的矛盾。

技术实现思路

[0003]鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种防止重放攻击的方法、一种防止重放攻击的装置和一种防止重放攻击的系统。
[0004]为了解决上述问题,本专利技术实施例公开了一种防止重放攻击的方法,所述方法应用于浏览器,所述浏览器通过网关与应用服务器通信,所述方法包括:
[0005]当监听到浏览器向应用服务器发送的请求时,拦截所述请求;
[0006]获取所述请求匹配的时间戳,并根据所述时间戳,确定待加密数据;
[0007]根据所述待加密数据,确定加密字符串;
[0008]向网关发送含有所述加密字符串的请求,以使得所述网关对所述请求进行解密,根据解密结果判断所述请求是否为重放攻击;
[0009]可选地,所述根据所述时间戳,确定待加密数据包括:
[0010]根据所述时间戳生成校验位数据;
[0011]将所述校验位数据附加在时间戳之后,得到校验位加密数据;
[0012]在所述校验位加密数据之前和之后添加随机数,作为待加密数据。
[0013]可选地,所述浏览器植入有加密封装模块,所述根据所述待加密数据,确定加密字符串包括:
[0014]调用加密封装模块,确定所述加密数据和随机因子,以及将所述随机因子和所述加密数据组合为所述加密字符串包括:
[0015]调用加密封装模块,在所述母钥中随机抽取一个字符串,作为初始随机因子;
[0016]循环的执行以下步骤,直至所述待加密数据与第一余数的差为第一阈值;
[0017]对所述待加密数据取余操作,获取取余操作的第一余数;
[0018]从所述母钥中查找所述第一余数和初始随机因子匹配的字符,将所述字符置于预设签名集合中;
[0019]对所述第一余数平方进行取余运算,得到第二余数;
[0020]从所述母钥中,查找与所述第二余数匹配的字符作为第二随机因子;
[0021]判断所述待加密数据与所述第一余数的差是否为第一阈值;
[0022]若是,则结束运算,将所述第二随机因子和所述预设签名集合中的字符组合为加密字符串;
[0023]若否,则将待加密数据和密钥长度进行取整操作,得到新的待加密数据,以及将所述第二随机因子作为新的初始随机因子,返回对所述待加密数据取余操作,获取取余操作的第一余数的步骤。
[0024]可选地,本专利技术实施例还公开了另一种防止重放攻击的方法,所述方法应用于网关,所述浏览器通过网关与应用服务器通信,所述方法包括:
[0025]接收来自浏览器的含有加密字符串的请求;
[0026]根据所述含有加密字符串的请求,确定解密数据;
[0027]根据所述解密数据,确定所述请求的时间戳信息;
[0028]根据所述请求的时间戳信息与当前服务器的时间信息的差值,以及加密字符串是否存在于网关,判断所述请求是否为重放攻击。
[0029]可选地,所述根据所述请求的时间戳信息与当前服务器的时间信息的差值,判断所述请求是否为重放攻击包括:
[0030]根据所述时间戳信息,判断所述请求的时间戳信息与当前服务器的时间信息的差值是否小于预设第二阈值;
[0031]当所述请求的时间戳信息与所述当前服务器的时间信息的差值小于所述预设第二阈值时,判断所述加密字符串是否在所述网关中存在;
[0032]当所述加密字符串在所述网关中不存在时,将所述加密字符串存入所述网关,则所述请求不为重放攻击。
[0033]可选地,所述方法还包括:
[0034]若所述请求不为重放攻击,则将所述加密字符串匹配的请求发送给应用服务器,以使所述应用服务器响应所述请求,将响应结果返回至浏览器。
[0035]可选地,所述判断所述请求的时间戳信息与当前服务器的时间信息的差值是否小于预设第二阈值还包括:当所述请求的时间与当前服务器的时间信息的差值大于所述预设第二阈值时,则判断为重放攻击。
[0036]可选地,所述判断所述加密字符串是否在所述网关中存在还包括:当所述加密字符串在所述网关缓存中存在时,则判断为重放攻击。
[0037]可选地,所述网关预先存有公钥,根据所述含有加密字符串的请求,确定解密数据包括:
[0038]根据所述含有加密字符串的请求,确定待解密数据和随机因子;
[0039]调用公钥,确定所述待解密数据匹配的解密数据;
[0040]可选地,所述根据所述解密数据,确定所述请求的时间戳信息包括:
[0041]根据所述解密数据,去除所述解密数据前后的随机数,得到校验位数据;去除掉校
验位数据,得到所述请求的时间戳信息。
[0042]可选地,所述方法还包括:
[0043]根据所述校验位数据,比较所述校验位数据与根据时间戳信息计算的校验位数据;
[0044]如果比较不一致,则抛出异常,如果比较一致,则返回结果。
[0045]可选地,本专利技术还公开了一种防止重放攻击的装置,所述装置应用于浏览器,所述浏览器通过网关与应用服务器通信,所述装置包括:
[0046]拦截模块,用于当监听到浏览器向应用服务器发送的请求时,拦截所述请求;
[0047]获取模块,用于获取所述请求匹配的时间戳,并根据所述时间戳,确定待加密数据;
[0048]确定模块,用于根据所述待加密数据,确定加密字符串;
[0049]发送模块,用于向网关发送含有所述加密字符串的请求,以使得所述网关对所述请求进行解密,根据解密结果判断所述请求是否为重放攻击。
[0050]可选地,本专利技术还公开了另一种防止重放攻击的装置,所述装置应用于网关,所述浏览器通过网关与应用服务器通信,所述装置包括:
[0051]接收模块,用于接收来自浏览器的含有加密字符串的请求;
[0052]解密数据确定模块,用于根据所述含有加密字符串的请求,确定解密数据;
[0053]时间本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种防止重放攻击的方法,其特征在于,所述方法应用于浏览器,所述浏览器通过网关与应用服务器通信,所述方法包括:当监听到浏览器向应用服务器发送的请求时,拦截所述请求;获取所述请求匹配的时间戳,并根据所述时间戳,确定待加密数据;根据所述待加密数据,确定加密字符串;向网关发送含有所述加密字符串的请求,以使得所述网关对所述请求进行解密,根据解密结果判断所述请求是否为重放攻击。2.根据权利要求1所述的方法,其特征在于,所述根据所述时间戳,确定待加密数据包括:根据所述时间戳生成校验位数据;将所述校验位数据附加在时间戳之后,得到校验位加密数据;在所述校验位加密数据之前和之后添加随机数,作为待加密数据。3.根据权利要求2所述的方法,其特征在于,所述浏览器植入有加密封装模块,所述根据所述待加密数据,确定加密字符串包括:调用加密封装模块,确定所述待加密数据字符串的签名和随机因子,将所述随机因子和所述加密数据组合为所述加密字符串。4.根据权利要求3所述的方法,其特征在于,所述加密封装模块预先存有母钥,所述调用加密封装模块,确定所述加密数据和随机因子,将所述随机因子和所述加密数据组合为所述加密字符串包括:调用加密封装模块,在所述母钥中随机抽取一个字符串,作为初始随机因子;循环的执行以下步骤,直至所述待加密数据与第一余数的差为第一阈值;对所述待加密数据取余操作,获取取余操作的第一余数;从所述母钥中查找所述第一余数和初始随机因子匹配的字符,将所述字符置于预设签名集合中;对所述第一余数平方进行取余运算,得到第二余数;从所述母钥中,查找与所述第二余数匹配的字符作为第二随机因子;判断所述待加密数据与所述第一余数的差是否为第一阈值;若是,则结束运算,将所述第二随机因子和所述预设签名集合中的字符组合为加密字符串;若否,则将待加密数据和密钥长度进行取整操作,得到新的待加密数据,以及将所述第二随机因子作为新的初始随机因子,返回对所述待加密数据取余操作,获取取余操作的第一余数的步骤。5.一种防止重放攻击的方法,其特征在于,所述方法应用于网关,所述浏览器通过网关与应用服务器通信,所述方法包括:接收来自浏览器的含有加密字符串的请求;根据所述含有加密字符串的请求,确定解密数据;根据所述解密数据,确定所述请求的时间戳信息;根据所述请求的时间戳信息与当前服务器的时间信息的差值,以及加密字符串是否存在于网关,判断所述请求是否为重放攻击。
6.根据权利要求5所述的方法,所述根据所述请求的时间戳信息与当前服务器的时间信息的差值,判断所述请求是否为重放攻击包括:根据所述时间戳信息,判断所述请求的时间戳信息与当前服务器的时间信息的差值是否小于预设第二阈值;当所述请求的时间戳信息与所述当前服务器的时间信息的差值小于所述预设第二阈值时,判断所述加密字符串是否在所述网关中存在;当所述加密字符串在所述网关中不存在时,将所述加密字符串存入所述网关,则所述请求不为重放攻击。7.根据权利要求6所述的方法,所述方法还包括:若所述请求不为重放攻击,则将所述加密字符串匹配的请求发送给应用服务器,以使所述应用服务器响应所述请求,将响应结果返回至浏览器。8.根据权利要...

【专利技术属性】
技术研发人员:徐冬冬刘营付迎鑫闫永德高乐刘桥王健徐锐槐正
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1