一种防止重放攻击的方法和服务器技术

技术编号:14560344 阅读:88 留言:0更新日期:2017-02-05 15:59
本发明专利技术提供了一种防止重放攻击的方法和服务器,包括:服务器接收业务请求消息,从消息唯一标识中解析出时间戳,确定所述时间戳是否在服务器预设的时间窗内,如果所述时间戳在所述时间窗内,则进一步与保存的已接收消息标识列表中的标识比较,如果列表中没有包含与所述消息唯一标识相同的标识,则认为不是重放攻击,可进行业务处理。本发明专利技术进一步提高了网络安全性。

【技术实现步骤摘要】

本专利技术涉及信息
,尤其涉及一种防止重放攻击的方法和服务器
技术介绍
重放攻击(ReplayAttacks)又称重播攻击(PlaybackAttack)或新鲜性攻击(FreshnessAttacks),是指攻击者拦截并重发一个目标主机已接收过的包,来达到欺骗的目的。这种攻击会不断恶意或欺诈性地重复一个有效的数据传输。攻击者利用网络监听或者其他方式盗取认证凭据,之后再把它重新发给服务器。重放攻击在任何网络通讯过程中都可能发生。目前网络服务的各种服务器常常受到攻击方的重放攻击。现有技术中,已有一些防止重放攻击的方法,例如问答方法。这种方法就是通信时,客户端设备先从网络服务器获取一个随机数N,后续客户端在发送的消息中携带该随机数。服务器将消息中携带的随机数与自己保存的进行比较,如果不一致,则认为是重放攻击,拒绝该消息。上述方法对于一次消息发送需要客户端与服务器进行两次交互,系统性能下降了一半,对于网络中的服务器等高并发系统是一个很大的问题。
技术实现思路
为克服现有技术的缺陷,本专利技术实施例提供了一种防止重放攻击的方法和服务器,以实现精确的重放攻击检测和防御,提高业务系统的安全性。第一方面,本专利技术实施例提供了一种防止重放攻击的方法,包括:服务器接收业务请求消息,所述业务请求消息中包含消息唯一标识;从所述消息唯一标识中解析出时间戳,确定所述时间戳是否在服务器预设的时间窗内;如果所>述时间戳在所述时间窗内,则与保存的已接收消息标识列表中的标识比较;如果列表中没有包含与所述消息唯一标识相同的标识,则将所述消息唯一标识加入所述已接收消息标识列表;对所述业务请求消息进行业务处理。通过时间窗和消息唯一标识,实现了精确的重放攻击检测和防御,提高了业务系统的安全性。在一个可能的设计中,该方法进一步包括:如果所述时间戳不在时间窗内,或者,如果所述列表中包含与所述消息唯一标识相同的标识,则丢弃所述消息或返回错误响应消息。所述确定时间戳是否在服务器预设的时间窗内具体为:判断业务请求消息中的时间戳与服务器的时间的差值是否不超过预设的时长。所述业务请求消息中的时间戳是请求的客户端增加了时间补偿,或者服务器的时间是服务器增加了时间补偿,所述时间补偿是服务器本地时间与请求客户端本地时间的差值。这进一步提高了检测重放攻击的准确性。在一个可能的设计中,所述服务器判断列表中存储的标识中的时间戳与服务器时间的差值,当差值超过预设时长时,删除所述列表中存储的标识。这样减少了判断的时间,提高了服务器的效率。第二方面,本专利技术实施例提供了一种服务器,该服务器具有实现上述方法实现中服务器行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,服务器的结构中包括处理器和存储器,所述存储器用于存储支持服务器执行上述方法的应用程序代码,所述处理器被配置为用于执行所述存储器中存储的应用程序。所述服务器还可以包括通信接口,用于服务器与其他客户端通信。第三方面,本专利技术实施例提供了一种计算机存储介质,用于储存为上述服务器所用的计算机软件指令,其包含用于执行上述方面为服务器所设计的程序。本专利技术实施例提供的上述技术方案通过时间窗和消息唯一标识比较确认,实现了精确的重放攻击检测和防御,提高了业务系统的安全性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。图1为本专利技术实施例提供的一种系统架构图;图2为本专利技术实施例提供的一种计算机设备示意图;图3为本专利技术实施例提供的一种正常业务请求消息处理的方法流程示意图;图4为本专利技术实施例提供的一种重放攻击消息处理的方法流程示意图;图5为本专利技术实施例提供的服务器的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下获取的所有其他实施例,都属于本专利技术保护的范围。如图1所示,是本专利技术实施例应用的的一个业务系统,其中包含了服务器101和若干终端102。终端向服务器请求服务,服务器用于为终端提供服务,事实上,互联网中的各种类型的服务器都会受到网络攻击。本专利技术实施例提供的就是服务器如何区分真正的服务请求和重放攻击,从而防止重放攻击。图1中的服务器可以以图2中的计算机设备(或系统)的方式来实现。图2所示为本专利技术实施例提供的计算机设备示意图。该计算机设备包括至少一个处理器201,通信总线202,存储器203以及至少一个通信接口204。处理器201可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(application-specificintegratedcircuit,ASIC),或一个或多个用于控制本专利技术方案程序执行的集成电路。通信总线202可包括一通路,在上述组件之间传送信息。所述通信接口204,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WirelessLocalAreaNetworks,WLAN)等。存储器203可以是只读存储器(read-onlymemory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasableProgrammableRead-OnlyMemory,EEPROM)、只读光盘(CompactDiscRead-OnlyMemory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。其中,所述存储器203用于存储执行本专利技术方案的应用程序代码,并由处理本文档来自技高网...

【技术保护点】
一种防止重放攻击的方法,其特征在于,包括:服务器接收业务请求消息,所述业务请求消息中包含消息唯一标识;从所述消息唯一标识中解析出时间戳,确定所述时间戳是否在服务器预设的时间窗内;如果所述时间戳在所述时间窗内,则与保存的已接收消息标识列表中的标识比较;如果列表中没有包含与所述消息唯一标识相同的标识,则将所述消息唯一标识加入所述已接收消息标识列表;对所述业务请求消息进行业务处理。

【技术特征摘要】
1.一种防止重放攻击的方法,其特征在于,包括:
服务器接收业务请求消息,所述业务请求消息中包含消息唯一标识;
从所述消息唯一标识中解析出时间戳,确定所述时间戳是否在服务器预设
的时间窗内;
如果所述时间戳在所述时间窗内,则与保存的已接收消息标识列表中的标
识比较;
如果列表中没有包含与所述消息唯一标识相同的标识,则将所述消息唯一
标识加入所述已接收消息标识列表;
对所述业务请求消息进行业务处理。
2.如权利要求1所述的方法,其特征在于,所述方法进一步包括:如果
所述时间戳不在时间窗内,或者,如果所述列表中包含与所述消息唯一标识相
同的标识,则丢弃所述消息或返回错误响应消息。
3.如权利要求1所述的方法,其特征在于,所述确定时间戳是否在服务
器预设的时间窗内具体为:
判断业务请求消息中的时间戳与服务器的时间的差值是否不超过预设的
时长。
4.如权利要求3所述的方法,其特征在于,所述业务请求消息中的时间
戳是请求的客户端增加了时间补偿,或者服务器的时间是服务器增加了时间补
偿,所述时间补偿是服务器本地时间与请求客户端本地时间的差值。
5.如权利要求1所述的方法,其特征在于,所述服务器判断列表中存储
的标识中的时间戳与服务器时间的差值,当差值超过预设时长时,删除所述列

\t表中存储的标识。
6.一种服务器,其特征在于,包括...

【专利技术属性】
技术研发人员:李世华
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1