CN106713061A - 监测攻击报文的方法、系统及装置 - Google Patents
监测攻击报文的方法、系统及装置 Download PDFInfo
- Publication number
- CN106713061A CN106713061A CN201510792487.6A CN201510792487A CN106713061A CN 106713061 A CN106713061 A CN 106713061A CN 201510792487 A CN201510792487 A CN 201510792487A CN 106713061 A CN106713061 A CN 106713061A
- Authority
- CN
- China
- Prior art keywords
- identifying code
- terminal
- message
- cleaning
- source data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种监测攻击报文的方法、系统及装置。其中,该方法包括:清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。本发明解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种监测攻击报文的方法、系统及装置。
背景技术
UDP Flood:(UDP报文洪水攻击),是一种流量型Dos攻击,该种攻击常常利用大量UDP小包冲击DNS服务器、视频服务器等,以消耗服务器的带宽资源以及处理器资源,UDP Flood有时会使得防火墙瘫痪。
因为UDP不建立连接,无法进行源探测,目前针对UDP Flood的防御方案通常为如下两类:第一类,限流,限流的方案可以为基于目的IP地址的限流,基于某个安全区域的限流,基于会话的限流。第二类,指纹学习,因为UDP Flood攻击报文通常都拥有相同的特征字段,比如包含某一个字符串,甚至报文内容完全一致,可以通过指纹学习的方式对报文做分类统计,过滤大量出现的具备一致指纹的报文。
需要说明的是,上述现有的UDP Flood的防御方案存在以下缺陷:
(1)限流的这种方法可以有效缓解链路带宽的压力,但是简单粗暴,不区分正常的业务报文和攻击报文,存在误杀,导致对攻击报文的监测不准确。
(2)指纹学习的方案需要攻击报文具备某一相同特征,而且在学习的过程中,攻击报文也会被当作正常报文透过,导致对攻击报文的监测不准确。
针对上述采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种监测攻击报文的方法、系统及装置,以至少解决采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
根据本发明实施例的一个方面,提供了一种监测攻击报文的方法,该方法包括:清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
根据本发明实施例的另一方面,还提供了一种监测攻击报文的方法,该方法包括:源数据终端发送报文至清洗终端;源数据终端接收到清洗终端返回的检测结果,检测结果包括:确定报文为安全报文或攻击报文;其中,清洗终端在检测到报文中未携带有验证码,和/或校验验证码失败的情况下,确定报文为攻击报文。
根据本发明实施例的另一方面,还提供了一种监测攻击报文的系统,该系统包括:源数据终端,用于发送报文;清洗终端,与源数据终端通信,用于接收源数据终端发送的报文,并检测报文中是否携带有验证码,其中,在检测到报文中未携带有验证码,和/或校验验证码失败的情况下,确定报文为攻击报文。
根据本发明实施例的另一方面,还提供了一种监测攻击报文的装置,该装置包括:接收单元,用于接收待验证的报文;检测单元,用于检测待验证的报文中是否携带有验证码;校验单元,用于在待验证的报文中携带有验证码的情况下,对验证码进行校验;确定单元,用于在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
在本发明实施例中,采用清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文的方式,解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据发明实施例的一种监测攻击报文的方法的运行终端的结构图;
图2是根据本发明实施例的一种监测攻击报文的方法的流程图;
图3是根据本发明实施例的一种可选地监测攻击报文的方法的示意图;
图4是根据本发明实施例的一种可选地监测攻击报文的方法的流程图;
图5是根据本发明实施例的一种可选地监测攻击报文的系统的示意图;
图6是根据本发明实施例的一种监测攻击报文的装置的示意图;
图7是根据本发明实施例的一种可选地监测攻击报文的装置的示意图;
图8是根据本发明实施例的一种可选地监测攻击报文的装置的示意图;
图9是根据本发明实施例的一种可选地监测攻击报文的装置的示意图;以及
图10是根据发明实施例的一种监测攻击报文的方法的运行终端的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本申请涉及到的名称解释如下:
UDP Flood:UDP报文洪水攻击,一种消耗服务器带宽资源和处理器资源的拒绝服务攻击方式。
实施例1
根据本发明实施例,还提供了一种监测攻击报文的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种监测攻击报文的方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的监测攻击报文的方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的监测攻击报文的方法。图2是根据本发明实施例一的监测攻击报文的方法的流程图,如图2所示,该方法可以包括:
步骤S20,清洗终端接收待验证的报文。
在上述步骤S20中,上述清洗终端可以为服务运营商设置的清洗设备,上述待验证的报文可以为访问终端发送的报文。需要说明的是,大量的访问终端在对服务运营商的业务服务器进行访问时,业务服务器可以收到大量的报文,在上述大量的报文中,可能存在非法的攻击报文。因此,服务运营商可以设置上述清洗终端,在上述大量的报文到达业务服务器之前,由清洗终端先接收上述大量的报文,并对上述大量的报文进行验证,以监测出攻击报文。上述报文可以为IP报文、TCP报文,UDP报文,在本方案中,清洗终端接收的报文优选为UDP报文。
需要说明的是,在本方案中,上述清洗终端可以为能实现清洗功能的任意终端,例如,PC,路由器、服务器等实现清洗功能的设备。
下面以监测针对网站服务器的UDP攻击报文为例,网站服务器WS每天会接收到大量的终端用户发送的大量UDP报文,在上述大量报文中存在着UDP攻击报文,该攻击报文可能导致上述网站服务器WS瘫痪,网站服务器WS的运营商可以设置清洗设备,在访问终端发送的大量UDP报文到达网站服务器WS之前,由清洗设备先接收上述大量的UDP报文,然后清洗设备可以根据预定策略对上述大量的UDP报文逐条进行验证,以监测出UDP攻击报文。
步骤S22,清洗终端检测待验证的报文中是否携带有验证码。
在上述步骤S22中,上述清洗终端在接收到报文之后,可以对上述报文头部进行检测,判断待验证的报文的头部是否携带有验证码,上述验证码可以为一个标签TAG。
仍以监测针对网站服务器的UDP攻击报文为例,清洗设备在接收到访问终端U1发送的UDP报文之后,可以首先获取UDP报文的头部,清洗设备进一步可以检测在UDP报文的头部是否携带便签TAG。
步骤S24,在确定待验证的报文中携带有验证码的情况下,对验证码进行校验。
在上述步骤S24中,如果检测到上述待验证的报文中携带有验证码的情况下,清洗终端可以对上述报文进行校验,需要说明的是,在清洗终端可以保存至少一个验证码,清洗终端可以根据保存的验证码对上述报文中携带的验证码进行校验。
仍以监测针对网站服务器的UDP攻击报文为例,在为网站运营商设置的清洗设备中可以保存有一个或多个TAG,在清洗设备接收到UDP报文之后,清洗设备可以利用保存的一个或多个TAG对访问终端U1发送的UDP报文中的TAG进行校验。
步骤S26,在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
在上述步骤S26提供的一种可选方案中,如果在接收到的报文中没有携带验证码,清洗终端直接将上述报文确定为攻击报文,另外一种可选实施例中,虽然待验证的报文中携带有验证码,但如果清洗终端中包含的验证码不包含报文报头中的验证码,或者与报文报头中的校验码不相同的情况下,清洗终端确定上述报文为攻击报文,并确定发送报文的源数据终端(例如访问终端U1)为非法用户的访问终端。
仍以监测针对网站服务器的UDP攻击报文为例,如果清洗设备在访问终端U1发送的UDP报文中没有检测到TAG,那么清洗设备直接确定访问终端U1为非法用户的访问终端,并确定访问终端U1发送的UDP报文为攻击报文,如果清洗设备中保存的至少一个TAG不包括访问终端U1发送的报文中的TAG的时候,那么,清洗设备也确定访问终端U1为非法用户的访问终端,并且访问终端U1发送的UDP报文为攻击报文。
在一种可选地实施例中,本方案还可以包括如下步骤:在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文。
在上述确定安全报文的步骤中,如果清洗终端中保存的一个或多个验证码包含上述报文的报头的验证码的情况下,则校验成功,清洗终端则确定待验证的报文为源数据终端(即访问终端)发送的安全报文,上述源数据终端可以为合法用户的访问终端。
仍以监测针对网站服务器的UDP攻击报文为例,清洗设备可以用其内部保存的TAG对UDP报文的报头中记录的TAG进行校验,如果清洗设备内部的保存的TAG包含上述UDP报文报头的TAG,或者与UDP报文中的TAG相同的情况下,则说明校验成功,清洗设备则确定发送UDP报文的访问终端U1为合法用户的访问终端。
本申请上述实施例一公开的方案中,如果要保证发送给服务运营商要的报文中不存在攻击报文,可以首先通过清洗终端接收源数据终端发送的所有报文,将报文作为待验证的报文进行验证,然后清洗终端检测待验证的报文中是否携带有验证码;接着,在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文;最后,在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。容易注意到,由于清洗终端对接收到报文进行校验中,可以采用清洗终端内部的验证码对报文头部的验证码进行校验,如果清洗终端内部的验证码包括报文头部的验证码的情况下,则校验成功,清洗终端将报文确定为合法报文,如果校验失败,则将报文确定为攻击报文。与现有的限流方案比较,这样不仅实现了可以避免对正常业务报文(合法报文)的误杀,提高了攻击报文的监测的准确率,而且,与现有的指纹学习方案比较,本实施例的方案在清洗终端对报文校验的过程中,不对报文进行假设,无需设置学习过程,使得监测攻击报文更加快捷。由此,本申请提供的上述实施例一的方案解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
在本申请提供的一种可选实施例中,步骤S20,清洗终端接收待验证的报文之前,本方案还可以包括:
步骤S17,验证码生成终端定时生成验证码,其中,验证码生成终端在不同的周期内生成不同的验证码。
在上述步骤S17中,上述验证码生成终端可以为服务运营商设置的,在本方案中,可以采用上述控制中心设备来生成上述验证码,上述验证码的长度可以根据不同报文的类型进行设置,比如,如果上述报文的为UDP报文,那么验证码生成终端生成的验证码为16bit。需要说明的是,验证码生成终端可以在第一个周期生成第一验证码,在第二个周期生成第二验证,第一验证码与第二验证码优选为不同的,需要说明的是,上述验证码生成终端在各个周期生成的验证码可以为随机生成的数据。
仍以监测针对网站服务器的UDP攻击报文为例,网站服务商可以设置有控制中心设备,控制中心设备可以在第一周期随机生成一个16bit的TAG1,在第二周期随机生成一个16bit的TAG2,在本实施例中,TAG1与TAG2可以不同。
步骤S18,清洗终端和源数据终端分别从验证码生成终端获取验证码。
在上述步骤S18中,上述验证码生成终端可以分别与上述源数据终端以及上述清洗终端建立通信关系,即,在上述验证码生成终端生成验证码之后,上述源数据终端与上述清洗终端分别从上述验证码生成终端获取验证码。
仍以监测针对网站服务器的UDP攻击报文为例,网站服务商可以设置控制中心设备与上述源数据终端以及上述清洗设备分别建立通信关系,在上述控制中心设备随机生成TAG1之后,访问终端即上述源数据终端与清洗设备可以分别从上述控制中心设备获取上述TAG2。
需要说明的是,本方案中采用源数据终端和清洗终端从验证码生成终端实时获取TAG,对带宽的损耗较小。
步骤S19,源数据终端将验证码写入待发送的报文,并将写入验证码的报文发送至清洗终端。
在上述步骤S19中,源数据终端从上述验证码生成终端获取到验证码之后,可以将上述验证码写入待发送的报文终端,需要说明的是,源数据终端可以将验证码写入报文的头部,然后源数据终端可以将头部包含验证码的报文发送至与源数据终端机建立通信关系的清洗终端,由上述清洗终端对报文进行校验。还需要说明的是,在源数据终端中可以设置一个发送接口,在源数据终端需要发送报文时,可以调用上述发送接口,源数据终端自动从验证码生成终端获取验证码,然后将上述验证码写入到报文中,最后将上述报文自动发送至清洗终端。
仍以监测针对网站服务器的UDP攻击报文为例,访问终端内部设置有一个发送接口“UDP interface”,在访问终端需要发送UDP报文时,可以调用上述发送接口“UDPinterface”,然后上述访问终端自动从控制中心设备获取TAG,然后将TAG写入到上述UDP报文的头部,然后自动将UDP报文发送至上述清洗终端。
在本申请提供的一种可选实施例中,可以将验证码写入到待发送报文的头部的校验和字段中,其中,步骤S24,清洗终端对验证码进行校验的步骤可以包括:
步骤S241,清洗终端解析由源数据终端发送的报文,从报文的校验和字段中提取验证码。
在上述步骤S241中,清洗终端在接收到源数据终端发送的报文之后,可以解析上述报文,获取上述报文的头部,然后从上述报文的头部提取验证码。
仍以监测针对网站服务器的UDP攻击报文为例,清洗设备可以在接收到访问终端U1的UDP报文之后,可以解析上述UDP报文,获取上述UDP报文的头部并从UDP报文的头部提取16bit的TAG。
步骤S242,清洗终端将本地已经获取到的验证码与解析得到的验证码进行匹配;其中,在匹配成功的情况下,确定源数据终端发送的报文为安全报文,并将校验和字段置为空;在匹配失败的情况下,确定源数据终端发送的报文为攻击报文。
在上述步骤S242中,清洗终端本地中存储的验证码可以为从验证码生成终端中获取的,清洗终端可以将其本地预存的验证码同上述报文中的验证码进行匹配,在匹配成功的情况下,清洗终端则确定源数据终端发送的报文为安全报文,并且将报文中的校验和字段设置为空,在匹配失败的情况下,清洗终端则确定源数据终端发送的报文为攻击报文。
仍以监测针对网站服务器的UDP攻击报文为例,清洗设备可以使用本地中存储的TAG对UDP报文终端TAG进行匹配,在匹配成功的情况下,清洗设备则确定该UDP报文为安全报文(合法报文),如果匹配失败,清洗设备则确定该UDP报文为攻击报文。
在本申请提供的一种可选实施例中,在步骤S17,验证码生成终端定时生成验证码之后,本方案还可以包括:
步骤S171,验证码生成终端将定时生成的验证码进行加密处理,并将加密后的验证码发送给清洗终端和源数据终端。
在上述步骤S171中,验证码生成终端内部可以设置有加密算法,验证码生成终端可以按照上述加密算法对定时生成的验证码进行加密,然后将加密后的验证码分别发送给清洗终端和源数据终端,需要说明的是,在清洗终端与源数据终端中可以设置有与加密算法对应的解密算法,即,清洗终端与源数据终端在从上述验证码生成终端获取到验证码之后,可以根据上述解密算法对加密处理的验证码进行解密,以得到验证码。
仍以监测针对网站服务器的UDP攻击报文为例,控制中心设备是定时生成TAG之后,可以采用MD5加密算法对TAG进行加密,生成TAG_MD5,然后控制中心设备将TAG_MD5分别发送至访问终端以及清洗设备,上述访问终端然后可以根据解密算法对TAG_MD5进行解密,得到TAG本身。
在本申请提供的一种可选实施例中,本方案还包括如下:
步骤S1700,验证码生成终端可以按照第一预定周期生成验证码,清洗终端可以按照第二预定周期从验证码生成终端获取验证码,源数据终端按照第三预定周期从验证码生成终端获取验证码,其中,验证码生成终端将生成的验证码的状态设置为第一状态,第一状态用于表示验证码为未被读取过的验证码。
在上述步骤S1700中,上述第一预定周期、第二预定周期、第三预定周期可以为三个定时时间,即验证码生成终端可以每隔第一预定周期的时间生成一次验证码,清洗终端每隔第二预定周期的时间从验证码生成终端去获取一次验证码,清洗终端每隔第三预定周期的时间从验证码生成终端去获取一次验证码,需要说明的是,上述三个定时时间可以相同。还需要说明的是,验证码验证终端在按照上述第一预定周期的定时时间生成一个验证码之后,可以将该验证码的状态设置为第一状态,上述第一状态可以用于表征该验证码准备被使用即未被读取过。
仍以监测针对网站服务器的UDP攻击报文为例,验证码生成终端作为控制中心设备可以每隔Timer_tag1的时间生成一次TAG,清洗设备每隔Timer_tag2的时间从验证码生成终端去获取一次TAG,用户的访问终端可以每隔Timer_tag3的时间从验证码生成终端获取一次TAG,需要说明的是,上述Timer_tag1、Timer_tag2以及Timer_tag3可以相同。还需要说明的是,验证码生成终端在按照上述Timer_tag1的定时时间生成一个TAG之后,可以将该TAG的状态设置为ready_to_use,并在该TAG被清洗设备读取之后,将状态切换为in_use。
在本申请提供的一种可选实施例中,在上述步骤S1700,验证码生成终端将新生成的验证码的状态设置为第一状态之后,本方案还可以包括:
步骤S1710,在清洗终端获取状态为第一状态的验证码之后,验证码生成终端将验证码的第一状态修改为第二状态,并删除本地已经存储的其他验证码,其中,其他验证码的状态为第二状态,第二状态用于表示验证码已经被读取。
在上述步骤S1710中,在清洗终端按照上述第二周期到验证码生成终端读取到验证码之后,验证码生成终端则将验证码的第一状态修改为第二状态,上述第一状态表示该验证码未被清洗设备读取,上述第二状态表示该验证码已被清洗设备读取,需要说明的是,在验证码生成终端内部可以存储有多个验证码的情况下,在最新生成的验证码的状态变为第二状态之后,验证码生成终端则删除其他状态为第二状态的验证码,此时,在验证码生成终端中只存在一个状态为第二状态的验证码。
仍以监测针对网站服务器的UDP攻击报文为例,控制中心设备每隔Timer_tag1的时间生成一次TAG(例如TAG1)之后,上述TAG1的状态被设置为ready_to_use,当清洗设备从控制中心设备获取上述TAG1之后,控制中心设备则将上述TAG1的状态修改为,in_use,表示上述TAG1已被读取,然后控制中心设备删除其内部存储的多个状态为in_use的TAG,此时,在控制中心设备只存在一个状态为in_use的TAG,及上述TAG1。
在本申请提供的一种可选实施例中,清洗终端可以将获取到的验证码依次写入验证码队列,其中,验证码队列保存至少两个验证码。
在上述步骤中,清洗终端可以设置有验证码队列,上述验证码队列可以用于存储清洗终端从验证码生成终端按照上述第二周期依次获取的多个验证码,在清洗终端接收到源数据终端发送的报文后,可以从验证码队列的头部至尾部依次取验证码对上述报文中的验证码进行校验,在队列中的任意一个验证码校验报文中的验证码成功之后,确定该报文为安全报文。
在本申请提供的一种可选实施例中,在步骤S1710验证码生成终端将验证码的第一状态修改为第二状态之后,本方案还可以包括:
步骤S1720,源数据终端从验证码生成终端获取状态为第二状态的验证码,并将状态为第二状态的验证码写入待发送的报文。
在上述步骤S1720中,源数据终端可以按照上述第三预定周期从验证码生成终端获取状态为已读取的验证码,然后将上述已读取的验证码写入待发送的报文,需要说明的是,源数据终端可以调用发送接口,由发送接口实现将上述第二状态的验证码写入待发送的报文。
仍以监测针对网站服务器的UDP攻击报文为例,访问访问终端需要发送UDP报文时,可以调用发送接口“UDP interface”,上述发送接口“UDP interface”自动从控制中心设备获取状态为in_use的TAG1,然后上述发送接口将TAG1写入UDP报文的头部,再将携带有TAG1的UDP报文发送至上述清洗设备。
在本申请提供的一种可选实施例中,第一预定周期、第二预定周期和第三预定周期为相同的定时时间,其中,验证码生成终端生成验证码的时刻、清洗终端从验证码生成终端获取验证码的时刻和源数据终端从验证码生成终端获取验证码的时刻是异步的。
仍以监测针对网站服务器的UDP攻击报文为例,定时时间imer_tag1(第一预定周期)、定时时间Timer_tag2(第二预定周期)以及定时时间Timer_tag3(第三预定周期)可以相同,即,控制中心设备生成TAG、清洗设备获取TAG以及访问终端获取TAG三者的定时时间可以相同,但是,控制中心设备生成TAG、清洗设备获取TAG以及访问终端获取TAG三者的动作是异步的。控制中心设备最先产生TAG1,接下来清洗设备获取到TAG21,过了一段时间,访问终端也获取到TAG1,清洗设备和访问终端之间以TAG1交互了一段时间后,清洗设备的Timer_tag2到时,于是到控制中心设备重新获取TAG,这时候获取到TAG2,于是会存在这种状态:访问终端中存储的为TAG1,清洗设备上存储的是TAG2,本方案为了兼容这种跨定时区间的情况,在清洗设备上,可以保存两个TAG,即上一步获取的TAG1和当前的TAG2,这两个TAG,任何一个如果能匹配UDP报文中的TAG,即认为该UDP报文合法。
在本申请提供的一种可选实施例中,在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文,基于验证结果为安全报文的情况下,本方案还可以包括如下实施步骤:
步骤S280,在清洗终端确定待验证的报文为安全报文的情况下,清洗终端透传安全报文至目标终端,且目标终端不校验安全报文;在清洗终端确定待验证的报文为攻击报文的情况下,清洗终端丢弃攻击报文。
在上述步骤中,上述目标终端可以为服务运营商的业务服务器,上述业务服务器可以与上述清洗终端建立通信关系,在清洗终端将访问终端发送的报文确定为安全报文的情况下,可以将上述安全报文透传至上述业务服务器,如果清洗终端将访问终端发送的报文确定为攻击报文,那么清洗终端直接将攻击报文进行丢弃,从而业务服务器不会接收到攻击报文。
仍以监测针对网站服务器的UDP攻击报文为例,网站运营商可以设置清洗设备与网站服务器WS建立通信关系,清洗设备可以接收访问终端发送的UDP报文,在清洗设备确定该UDP报文为安全报文的情况,清洗设备才将UDP报文透传至上述网站服务器WS,如果清洗设备确定该UDP报文我攻击报文,那么,清洗设备则直接将该攻击报文丢弃,这样网站服务器WS则不会受到UDP Flood的攻击。
此处还需要说明的是,本申请上述实施例中的清洗设备可以与验证码生成设备在逻辑上为同一个设备,即清洗设备定时生成验证码发送给源数据终端,在源数据终端利用清洗设备过滤报文的过程中,可以将获取到的报文写入待发送的报文中,发送的报文作为待验证的报文在清洗设备中进行检测,如果检测到接收到的报文中携带有验证码,和/或验证码被验证成功,则确认当前源数据终端发送的报文为安全报文,清洗设备将该报文透传给网络服务器,否则,清洗设备丢弃该当前被验证为攻击报文。
下面结合交互图3,描述本申请的一种优选的实施例。
如图3所示,本申请的方案可以包括如下步骤:
步骤A,验证码生成终端生成验证码。
在上述步骤A中,验证码生成终端可以根据随机数据生成算法按照定时时间(预定周期)生成验证码,该验证码可以为标签TAG,需要说明的是,每次随机生成的TAG可以为16bit,验证码生成终端按照上述预定周期生成的多个TAG都是不同的,还需要说明的是,验证码生成终端在生成TAG之后,可以将TAG的状态设置为未被读取。
步骤B,清洗终端从验证码生成终端获取验证码。
在上述步骤B中,清洗终端可以按照定时时间从验证码生成终端获取新生成的TAG,需要说明的是,清洗终端获取TAG的定时时间可以与上述验证码的生成终端生成TAG的定时时间相同。需要说明的是,在清洗终端从验证码生成终端获取到TAG之后,验证码生成终端则将验证码终端中的TAG的状态修改为已被读取状态,并且删除其他状态为被读取状态的TAG。
步骤C,源数据终端从验证码生成终端获取验证码。
在上述步骤C中,源数据终端可以访问终端,访问终端可以按照定时时间从验证码生成终端获取新生成的TAG,需要说明的是,访问终端获取TAG的定时时间、清洗终端获取TAG的定时时间以及验证码生成TAG的定时时间可以相同,但是,访问终端获取TAG、清洗终端获取TAG以及验证码生成TAG这三者的动作可以为异步的。
步骤D,源数据终端将验证码写入报文。
在上述步骤D中,源数据终端可以发送报文(例如UDP报文),源数据终端可以将获取到的TAG写入UDP报文的头部的校验和字段。
步骤E,源数据终端将报文发送至清洗终端。
在上述步骤E中,源数据终端可以将携带有的TAG的UDP报文发送至清洗终端。
步骤F,清洗终端对报文进行验证。
在上述步骤F中,清洗终端可以使用其内部预存的TAG与UDP报文中的TAG进行匹配,即清洗终端检测UDP报文中的校验和字段是否为清洗终端内部存储的TAG。
需要说明的是,在清洗终端内部可以存储有多个TAG。
步骤G,验证成功,清洗终端将报文确定为安全报文。
在上述步骤G中,如果清洗终端内部的TAG与UDP报文中的TAG匹配的情况下,清洗终端则将UDP报文确定为安全报文,需要说明的是,在清洗终端内部存储的多个TAG有任意一个TAG与UDP报文匹配成功的情况下,清洗终端则确定UDP报文为安全报文,在确定安全报文之后,清洗终端可以将安全报文的校验和字段设置为0。
步骤H,清洗终端将安全报文透传至目标终端。
在上述步骤H中,上述目标终端可以为访问终端想访问的业务服务器,清洗终端在接收到UDP报文之后,如果发现UDP报文的头部的校验和字段为0的情况下,目标终端则忽略对UDP报文的校验。
在一种优选的实施例当中,验证码生成终端与清洗终端可以为一个终端设备server实现的不同的功能模块,即终端设备server可以通过其内部的验证码生成模块来生成TAG,通过其内部的清洗模块来叫TAG进行校验。
在另一种优选的实施例当中,本方案中的可以仅由源数据终端、清洗终端以及目标终端实现,即,在源数据终端内部与清洗终端内部预先设置有密钥本(验证码本),源数据终端可以与清洗终端根据动态密钥机制通过协商来达成一致的秘钥的更新频率,更新序号,然后源数据终端、清洗终端可以根据协商后的更新频率,更新序号从各自的密钥本中读取验证码(TAG),源数据终端再将写到有验证码的UDP报文发送至清洗终端,清洗终端再对该UDP报文进行校验。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
根据本发明实施例,还提供了一种用于监测攻击报文的方法,如图4所示,该方法可以包括:
步骤S41,源数据终端发送报文至清洗终端。
在上述步骤S41中,上述源数据终端可以为访问终端,上述清洗终端可以为服务运营商设置的清洗设备,访问终端需要访问运营商的业务服务器的情况下,需要发送大量的报文,,在上述大量的报文中,可能存在非法的攻击报文。因此,服务运营商可以设置上述清洗终端,在上述大量的报文到达业务服务器之前,由清洗终端先接收上述大量的报文。上述报文可以为IP报文、TCP报文,UDP报文,在本方案中,清洗终端接收的报文优选为UDP报文。
下面以监测针对网站服务器的UDP攻击报文为例,网站服务器WS每天会接收到大量的终端用户发送的大量UDP报文,在上述大量报文中存在着UDP攻击报文,该攻击报文可能导致上述网站服务器WS瘫痪,网站服务器WS的运营商可以设置清洗设备,在访问终端发送的大量UDP报文到达网站服务器WS之前,由清洗设备先接收上述大量的UDP报文。
步骤S43,源数据终端接收到清洗终端返回的检测结果,检测结果包括:确定报文为安全报文或攻击报文;其中,在确定报文中未携带有验证码,和/或校验验证码失败的情况下,确定报文为攻击报文。
在上述步骤S43中,清洗终端内部可以存有多个验证码(TAG),清洗终端可以先判断接收到的报文是否携带TAG,在报文携带TAG的情况下,清洗终端直接确定报文为攻击报文,并返回检测结果。如果报文携带有TAG,清洗终端可以按照其内部存储的多个TAG则对报文携带的TAG进行校验,在校验失败的情况下,清洗终端则确认该报文为攻击报文,并返回检测结果。
以监测针对网站服务器的UDP攻击报文为例,清洗终端在接收到源数据终端发送的UDP报文之后,可以先检查该UDP报文是否包含TAG,如果该UDP报文不携带TAG的情况下,清洗终端直接确定该UDP报文为攻击报文,并返回检测结果至源数据终端,如果报文携带有TAG,清洗终端可以按照其内部存储的多个TAG则对报文携带的TAG进行校验,如果校验失败,清洗终端则确定该UDP报文为攻击报文,并返回检测结果至源数据终端。
在一种可选的实施例中,本方案还可以包括:清洗终端在检测到报文中携带有验证码,且校验验证码成功的情况下,确定报文为安全报文。
在上述确定安全报文的步骤中:如果报文携带有TAG,清洗终端可以按照其内部存储的多个TAG则对报文携带的TAG进行校验,在校验成功的情况下,清洗终端则确定报文为安全报文。
以监测针对网站服务器的UDP攻击报文为例,如果该UDP报文携带有TAG的情况下,清洗终端则使用其内部存储的TAG同UDP携带的TAG进行匹配,在匹配成功的情况下,清洗终端则确定该UDP报文为安全报文.
本申请上述实施例二公开的方案中,如果要保证发送给服务运营商要的报文中不存在攻击报文,可以首先通过清洗终端接收源数据终端发送的所有报文,将报文作为待验证的报文进行验证,;然后清洗终端检测待验证的报文中是否携带有验证码;接着,在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文;最后,在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。容易注意到,由于清洗终端对接收到报文进行校验中,可以采用清洗终端内部的验证码对报文头部的验证码进行校验,如果清洗终端内部的验证码包括报文头部的验证码的情况下,则校验成功,清洗终端将报文确定为合法报文,如果校验失败,则将报文确定为攻击报文。与现有的限流方案比较,这样不仅实现了可以避免对正常业务报文(合法报文)的误杀,提高了攻击报文的监测的准确率,而且,与现有的指纹学习方案比较,本实施例的方案在清洗终端对报文校验的过程中,不对报文进行假设,无需设置学习过程,使得监测攻击报文更加快捷。由此,本申请提供的上述实施例二的方案解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
在一种可选的实施例中,在步骤S41源数据终端发送报文至清洗终端之前,本方案还可以包括:
步骤S391,验证码生成终端定时生成验证码,其中,验证码生成终端在不同的周期内生成不同的验证码。
在上述步骤S391中,验证码生成终端可以为控制中心设备,控制中心设备可以按照不同的周期(Time_tag)生成不同的验证码,及每隔Time_tag的时间,验证码则生成一次TAG。
步骤S392,清洗终端和源数据终端分别从验证码生成终端获取验证码。
在上述步骤S392中,在验证码生成终端按照Time_tag的定时时间生成TAG之后,清洗终端以及源数据终端也可以按照同样的定时时间从验证码生成终端获取TAG。
步骤S393,源数据终端将验证码写入待发送的报文。
在上述步骤S393中,源数据终端在获取到TAG之后,可以将上述TAG写入到报文(UDP报文)的头部,然后源数据终端可以将包含TAG的报文发送至清洗终端,由清洗终端对上述报文进行校验。
实施例3
根据本发明实施例,还提供了一种用于实施监测攻击报文的方法的监测攻击报文的系统,如图5所示,该系统可以包括:源数据终端50,清洗终端52。
源数据终端50,用于发送报文。
清洗终端52,与源数据终端通信,用于接收源数据终端发送的报文,并检测报文中是否携带有验证码,在确定报文中未携带有验证码,和/或校验验证码失败的情况下,确定报文为攻击报文。
在一种可选地实施例中,清洗终端52还用于在检测到报文中携带有验证码,且校验验证码成功的情况下,确定报文为安全报文,
在上述系统中,上述源数据终端50可以为访问终端,上述清洗终端52可以为服务运营商设置的清洗设备,访问终端需要访问运营商的业务服务器的情况下,需要发送大量的报文,在上述大量的报文中,可能存在非法的攻击报文。因此,服务运营商可以设置上述清洗终端52,在上述大量的报文到达业务服务器之前,由清洗终端52先接收上述大量的报文。上述报文可以为IP报文、TCP报文,UDP报文,在本方案中,清洗终端接收的报文优选为UDP报文。清洗终端52内部可以存有多个验证码(TAG),清洗终端可以先判断接收到的报文是否携带TAG,在报文携带TAG的情况下,清洗终端52直接确定报文为攻击报文,并返回检测结果。如果报文携带有TAG,清洗终端52可以按照其内部存储的多个TAG则对报文携带的TAG进行校验,在校验成功的情况下,清洗终端52则确定报文为安全报文,在校验失败的情况下,清洗终端52则确认该报文为攻击报文,并返回检测结果。
本申请上述实施例三公开的方案中,如果服务运营商要从接收到的报文中监测出攻击报文,可以首先通过清洗终端接收待验证的报文;然后清洗终端检测待验证的报文中是否携带有验证码;接着,在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文;最后,在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。容易注意到,由于清洗终端对接收到报文进行校验中,可以采用清洗终端内部的验证码对报文头部的验证码进行校验,如果清洗终端内部的验证码包括报文头部的验证码的情况下,则校验成功,清洗终端将报文确定为合法报文,如果校验失败,则将报文确定为攻击报文。与现有的限流方案比较,这样不仅实现了可以避免对正常业务报文(合法报文)的误杀,提高了攻击报文的监测的准确率,而且,与现有的指纹学习方案比较,本实施例的方案在清洗终端对报文校验的过程中,不对报文进行假设,无需设置学习过程,使得监测攻击报文更加快捷。由此,本申请提供的上述实施例三的方案解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
在一种可选的实施例中,上述系统还可以包括:
验证码生成终端54,分别与源数据终端和清洗终端通信,用于定时生成验证码,其中,验证码生成终端在不同的周期内生成不同的验证码。清洗终端52还用于从验证码生成终端获取验证码,源数据终端50还用于从验证码生成终端54获取验证码,并将验证码写入待发送的报文。
在上述系统中,验证码生成终端54可以为控制中心设备,控制中心设备可以按照不同的周期(Time_tag)生成不同的验证码,即每隔Time_tag的时间,验证码生成终端54则生成一次TAG。在验证码生成终端54按照Time_tag的定时时间生成TAG之后,清洗终端52以及源数据终端50也可以按照同样的定时时间从验证码生成终端54获取TAG。在上述步骤S393中,源数据终端50在获取到TAG之后,可以将上述TAG写入到报文(UDP报文)的头部,然后源数据终端50可以将包含TAG的报文发送至清洗终端52,由清洗终端52对上述报文进行校验。
实施例4
根据本发明实施例,还提供了一种用于实施上述监测攻击报文的方法的监测攻击报文的装置,如图6所示,该装置包括:接收单元60,检测单元62,校验单元64,确定单元68。
其中,接收单元60,用于接收待验证的报文;检测单元62,用于检测待验证的报文中是否携带有验证码;校验单元64,用于在待验证的报文中携带有验证码的情况下,对验证码进行校验;确定单元68,用于在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
本申请上述实施例四公开的方案中,如果要保证发送给服务运营商要的报文中不存在攻击报文,可以首先通过清洗终端接收源数据终端发送的所有报文,将报文作为待验证的报文进行验证,;然后清洗终端检测待验证的报文中是否携带有验证码;接着,在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文;最后,在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。容易注意到,由于清洗终端对接收到报文进行校验中,可以采用清洗终端内部的验证码对报文头部的验证码进行校验,如果清洗终端内部的验证码包括报文头部的验证码的情况下,则校验成功,清洗终端将报文确定为合法报文,如果校验失败,则将报文确定为攻击报文。与现有的限流方案比较,这样不仅实现了可以避免对正常业务报文(合法报文)的误杀,提高了攻击报文的监测的准确率,而且,与现有的指纹学习方案比较,本实施例的方案在清洗终端对报文校验的过程中,不对报文进行假设,无需设置学习过程,使得监测攻击报文更加快捷。由此,本申请提供的上述实施例四的方案解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
在一种可选的实施例中,如图7所示,上述装置还可以包括:生成单元72,获取单元74,写入单元76。
其中,生成单元72,用于定时生成验证码,其中,生成单元在不同的周期内生成不同的验证码;获取单元74,用于从验证码生成终端获取验证码;写入单元76,用于源数据终端将验证码写入待发送的报文,并将写入验证码的报文发送至清洗终端。
在一种可选地实施例中,上述校验单元64可以包括:解析模块641,匹配模块643。
其中,解析模块641,用于解析源数据终端发送的报文,从报文的校验和字段中提取验证码;匹配模块643,用于将本地已经获取到的验证码与解析得到的验证码进行匹配;其中,在匹配成功的情况下,确定源数据终端发送的报文为安全报文,并将校验和字段置为空;在匹配失败的情况下,确定源数据终端发送的报文为攻击报文。
在一种可选地实施例中,如图8所示,上述装置还可以包括:加密单元80。
其中,加密单元80,用于将定时生成的验证码进行加密处理,并将加密后的验证码发送给清洗终端和源数据终端。
在一种可选地实施例中,验证码生成终端按照第一预定周期生成验证码,清洗终端按照第二预定周期从验证码生成终端获取验证码,源数据终端按照第三预定周期从验证码生成终端获取验证码,其中,验证码生成终端将生成的验证码的状态设置为第一状态,第一状态用于表示验证码为未被读取过的验证码。
在一种可选地实施例中,如图9所示,上述装置还可以包括:修改单元90。
其中,修改单元90,用于在清洗终端获取状态为第一状态的验证码之后,验证码生成终端将验证码的第一状态修改为第二状态,并删除本地已经存储的其他验证码,其中,其他验证码的状态为第二状态,第二状态用于表示验证码已经被读取。
实施例5
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行监测攻击报文的方法中以下步骤的程序代码:清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
可选地,图10是根据本发明实施例的一种计算机终端的结构框图。如图10所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器、存储器。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的监测攻击报文的方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的系统漏洞攻击的检测方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:验证码生成终端定时生成验证码,其中,验证码生成终端在不同的周期内生成不同的验证码;清洗终端和源数据终端分别从验证码生成终端获取验证码;源数据终端将验证码写入待发送的报文,并将写入验证码的报文发送至清洗终端。
可选的,上述处理器还可以执行如下步骤的程序代码:清洗终端解析由源数据终端发送的报文,从报文的校验和字段中提取验证码;清洗终端将本地已经获取到的验证码与解析得到的验证码进行匹配;其中,在匹配成功的情况下,确定源数据终端发送的报文为安全报文,并将校验和字段置为空;在匹配失败的情况下,确定源数据终端发送的报文为攻击报文。
可选的,上述处理器还可以执行如下步骤的程序代码:在验证码生成终端定时生成验证码之后,方法还包括:验证码生成终端将定时生成的验证码进行加密处理,并将加密后的验证码发送给清洗终端和源数据终端。
可选的,上述处理器还可以执行如下步骤的程序代码:验证码生成终端按照第一预定周期生成验证码,清洗终端按照第二预定周期从验证码生成终端获取验证码,源数据终端按照第三预定周期从验证码生成终端获取验证码,其中,验证码生成终端将生成的验证码的状态设置为第一状态,第一状态用于表示验证码为未被读取过的验证码。
可选的,上述处理器还可以执行如下步骤的程序代码:在清洗终端获取状态为第一状态的验证码之后,验证码生成终端将验证码的第一状态修改为第二状态,并删除本地已经存储的其他验证码,其中,其他验证码的状态为第二状态,第二状态用于表示验证码已经被读取。
可选的,上述处理器还可以执行如下步骤的程序代码:清洗终端将获取到的验证码依次写入验证码队列,其中,验证码队列保存至少两个验证码。
可选的,上述处理器还可以执行如下步骤的程序代码:源数据终端从验证码生成终端获取状态为第二状态的验证码,并将状态为第二状态的验证码写入待发送的报文。
可选的,上述处理器还可以执行如下步骤的程序代码:第一预定周期、第二预定周期和第三预定周期为相同的定时时间,其中,验证码生成终端生成验证码的时刻、清洗终端从验证码生成终端获取验证码的时刻和源数据终端从验证码生成终端获取验证码的时刻是异步的。
可选的,上述处理器还可以执行如下步骤的程序代码:在清洗终端确定待验证的报文为安全报文的情况下,清洗终端透传安全报文至目标终端,且目标终端不校验安全报文;在清洗终端确定待验证的报文为攻击报文的情况下,清洗终端丢弃攻击报文。
可选的,上述处理器还可以执行如下步骤的程序代码:源数据终端发送报文至清洗终端;源数据终端接收到清洗终端返回的检测结果,检测结果包括:确定报文为安全报文或攻击报文;其中,清洗终端在确定报文中未携带有验证码,和/或校验验证码失败的情况下,确定报文为攻击报文。
可选的,上述处理器还可以执行如下步骤的程序代码:验证码生成终端定时生成验证码,其中,验证码生成终端在不同的周期内生成不同的验证码;清洗终端和源数据终端分别从验证码生成终端获取验证码;源数据终端将验证码写入待发送的报文。
采用本发明实施例,提供了一种监测攻击报文的方法。通过清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在校验验证码成功的情况下,确定待验证的报文为源数据终端发送的安全报文;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。解决了采用限流防御或学习防御的方案来监测攻击报文,导致监测结果不准确的问题的技术问题。
本领域普通技术人员可以理解,图10所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的监测攻击报文的方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:清洗终端接收待验证的报文;清洗终端检测待验证的报文中是否携带有验证码;在清洗终端确定待验证的报文中携带有验证码的情况下,对验证码进行校验;在确定待验证的报文中未携带有验证码,和/或校验验证码失败的情况下,确定待验证的报文为攻击报文。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (20)
1.一种监测攻击报文的方法,其特征在于,包括:
清洗终端接收待验证的报文;
所述清洗终端检测所述待验证的报文中是否携带有验证码;
在所述清洗终端确定所述待验证的报文中携带有所述验证码的情况下,对所述验证码进行校验;
在确定所述待验证的报文中未携带有所述验证码,和/或校验所述验证码失败的情况下,确定所述待验证的报文为攻击报文。
2.根据权利要求1所述的方法,其特征在于,在清洗终端接收待验证的报文之前,所述方法还包括:
验证码生成终端定时生成所述验证码,其中,所述验证码生成终端在不同的周期内生成不同的验证码;
所述清洗终端和所述源数据终端分别从所述验证码生成终端获取所述验证码;
所述源数据终端将所述验证码写入待发送的报文,并将写入所述验证码的报文发送至所述清洗终端。
3.根据权利要求2所述的方法,其特征在于,在将所述验证码写入所述待发送的报文的校验和字段中的情况下,所述清洗终端对所述验证码进行校验包括:
所述清洗终端解析由所述源数据终端发送的所述报文,并从所述报文的所述校验和字段中提取所述验证码;
所述清洗终端将本地已经获取到的验证码与提取到的所述验证码进行匹配;
其中,在匹配成功的情况下,确定所述源数据终端发送的所述报文为安全报文,并将所述校验和字段置为空;
在匹配失败的情况下,确定所述源数据终端发送的所述报文为所述攻击报文。
4.根据权利要求3所述的方法,其特征在于,在验证码生成终端定时生成所述验证码之后,所述方法还包括:所述验证码生成终端将所述定时生成的所述验证码进行加密处理,并将加密后的验证码发送给所述清洗终端和所述源数据终端。
5.根据权利要求2至4中任意一项所述的方法,其特征在于,所述验证码生成终端按照第一预定周期生成所述验证码,所述清洗终端按照第二预定周期从所述验证码生成终端获取所述验证码,所述源数据终端按照第三预定周期从所述验证码生成终端获取所述验证码,
其中,所述验证码生成终端将生成的所述验证码的状态设置为第一状态,所述第一状态用于表示所述验证码为未被读取过的验证码。
6.根据权利要求5所述的方法,其特征在于,在所述验证码生成终端将新生成的所述验证码的状态设置为第一状态之后,所述方法还包括:
在所述清洗终端获取所述状态为所述第一状态的验证码之后,所述验证码生成终端将所述验证码的所述第一状态修改为第二状态,并删除本地已经存储的其他验证码,其中,所述其他验证码的状态为所述第二状态,所述第二状态用于表示所述验证码已经被读取。
7.根据权利要求6所述的方法,其特征在于,所述清洗终端将获取到的验证码依次写入验证码队列,其中,所述验证码队列保存至少两个验证码。
8.根据权利要求6所述的方法,其特征在于,在所述验证码生成终端将所述验证码的所述第一状态修改为第二状态之后,所述方法还包括:
所述源数据终端从所述验证码生成终端获取状态为所述第二状态的验证码,并将所述状态为所述第二状态的验证码写入所述待发送的报文。
9.根据权利要求5所述的方法,其特征在于,所述第一预定周期、所述第二预定周期和所述第三预定周期为相同的定时时间,其中,所述验证码生成终端生成所述验证码的时刻、所述清洗终端从所述验证码生成终端获取所述验证码的时刻和所述源数据终端从所述验证码生成终端获取所述验证码的时刻是异步的。
10.根据权利要求1所述的方法,其特征在于,在校验所述验证码成功的情况下,确定所述待验证的报文为源数据终端发送的安全报文,并在所述清洗终端确定所述待验证的报文为所述安全报文的情况下,所述清洗终端透传所述安全报文至目标终端,且所述目标终端不校验所述安全报文;在所述清洗终端确定所述待验证的报文为所述攻击报文的情况下,所述清洗终端丢弃所述攻击报文。
11.一种监测攻击报文的方法,其特征在于,包括:
源数据终端发送报文至清洗终端;
所述源数据终端接收所述清洗终端返回的检测结果,所述检测结果包括:确定所述报文为安全报文或攻击报文;
其中,所述清洗终端在确定所述报文中未携带有验证码,和/或校验所述验证码失败的情况下,确定所述报文为攻击报文。
12.根据权利要求11所述的方法,其特征在于,在源数据终端发送报文至清洗终端之前,所述方法还包括:
验证码生成终端定时生成所述验证码,其中,所述验证码生成终端在不同的周期内生成不同的验证码;
所述清洗终端和所述源数据终端分别从所述验证码生成终端获取所述验证码;
所述源数据终端将所述验证码写入待发送的所述报文。
13.一种监测攻击报文的系统,其特征在于,包括:
源数据终端,用于发送报文;
清洗终端,与所述源数据终端通信,用于接收所述源数据终端发送的所述报文,并检测所述报文中是否携带有验证码,其中,在检测到所述报文中未携带有所述验证码,和/或校验所述验证码失败的情况下,确定所述报文为攻击报文。
14.根据权利要求13所述的系统,其特征在于,所述系统还包括:
验证码生成终端,分别与所述源数据终端和所述清洗终端通信,用于定时生成所述验证码,其中,所述验证码生成终端在不同的周期内生成不同的验证码;
所述清洗终端还用于从所述验证码生成终端获取所述验证码;
所述源数据终端还用于从所述验证码生成终端获取所述验证码,并将所述验证码写入待发送的报文。
15.一种监测攻击报文的装置,其特征在于,包括:
接收单元,用于接收待验证的报文;
检测单元,用于检测所述待验证的报文中是否携带有验证码;
校验单元,用于在所述待验证的报文中携带有所述验证码的情况下,对所述验证码进行校验;
确定单元,用于在确定所述待验证的报文中未携带有所述验证码,和/或校验所述验证码失败的情况下,确定所述待验证的报文为攻击报文。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括:
生成单元,用于定时生成所述验证码,其中,所述生成单元在不同的周期内生成不同的验证码;
获取单元,用于从验证码生成终端获取所述验证码;
写入单元,用于所述源数据终端将所述验证码写入待发送的报文,并将写入所述验证码的报文发送至清洗终端。
17.根据权利要求16所述的装置,其特征在于,所述校验单元包括:
解析模块,用于解析源数据终端发送的所述报文,从所述报文的所述校验和字段中提取所述验证码;
匹配模块,用于将本地已经获取到的验证码与提取得到的所述验证码进行匹配;其中,在匹配成功的情况下,确定所述源数据终端发送的所述报文为安全报文,并将所述校验和字段置为空;在匹配失败的情况下,确定所述源数据终端发送的所述报文为所述攻击报文。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
加密单元,用于将所述定时生成的所述验证码进行加密处理,并将加密后的验证码发送给清洗终端和所述源数据终端。
19.根据权利要求16至18中任意一项所述的装置,其特征在于,所述验证码生成终端按照第一预定周期生成所述验证码,所述清洗终端按照第二预定周期从所述验证码生成终端获取所述验证码,所述源数据终端按照第三预定周期从所述验证码生成终端获取所述验证码,
其中,所述验证码生成终端将生成的所述验证码的状态设置为第一状态,所述第一状态用于表示所述验证码为未被读取过的验证码。
20.根据权利要求19所述的装置,其特征在于,所述装置还包括:
修改单元,用于在所述清洗终端获取所述状态为所述第一状态的验证码之后,所述验证码生成终端将所述验证码的所述第一状态修改为第二状态,并删除本地已经存储的其他验证码,其中,所述其他验证码的状态为所述第二状态,所述第二状态用于表示所述验证码已经被读取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510792487.6A CN106713061B (zh) | 2015-11-17 | 2015-11-17 | 监测攻击报文的方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510792487.6A CN106713061B (zh) | 2015-11-17 | 2015-11-17 | 监测攻击报文的方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106713061A true CN106713061A (zh) | 2017-05-24 |
CN106713061B CN106713061B (zh) | 2020-12-01 |
Family
ID=58932921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510792487.6A Active CN106713061B (zh) | 2015-11-17 | 2015-11-17 | 监测攻击报文的方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106713061B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108965309A (zh) * | 2018-07-27 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 一种数据传输处理方法、装置、系统及设备 |
CN108959514A (zh) * | 2018-06-27 | 2018-12-07 | 中国建设银行股份有限公司 | 一种数据处理方法及装置 |
CN109862439A (zh) * | 2019-01-29 | 2019-06-07 | 视联动力信息技术股份有限公司 | 数据处理方法和装置 |
CN112152964A (zh) * | 2019-06-26 | 2020-12-29 | 中兴通讯股份有限公司 | 网络攻击防御方法、装置、接收设备及计算机存储介质 |
CN113612786A (zh) * | 2021-08-09 | 2021-11-05 | 上海交通大学宁波人工智能研究院 | 一种车辆总线的入侵检测系统及方法 |
CN114172738A (zh) * | 2021-12-15 | 2022-03-11 | 广州市苏纳米实业有限公司 | 一种基于智能安全箱的抗DDoS攻击方法、装置及智能安全箱 |
CN116546269A (zh) * | 2023-05-12 | 2023-08-04 | 应急管理部大数据中心 | 一种媒体流插帧的网络流量清洗方法、系统及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101136747A (zh) * | 2006-08-30 | 2008-03-05 | 中兴通讯股份有限公司 | 一种信息验证的系统及方法 |
WO2010150052A2 (en) * | 2009-06-24 | 2010-12-29 | Nokia Corporation | Methods and apparatuses for avoiding denial of service attacks by rogue access points |
CN102457491A (zh) * | 2010-10-20 | 2012-05-16 | 北京大学 | 动态身份认证方法和系统 |
CN103384242A (zh) * | 2013-03-15 | 2013-11-06 | 中标软件有限公司 | 基于Nginx代理服务器的入侵检测方法及系统 |
CN104618404A (zh) * | 2015-03-10 | 2015-05-13 | 网神信息技术(北京)股份有限公司 | 防止网络攻击Web服务器的处理方法、装置及系统 |
-
2015
- 2015-11-17 CN CN201510792487.6A patent/CN106713061B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101136747A (zh) * | 2006-08-30 | 2008-03-05 | 中兴通讯股份有限公司 | 一种信息验证的系统及方法 |
WO2010150052A2 (en) * | 2009-06-24 | 2010-12-29 | Nokia Corporation | Methods and apparatuses for avoiding denial of service attacks by rogue access points |
CN102457491A (zh) * | 2010-10-20 | 2012-05-16 | 北京大学 | 动态身份认证方法和系统 |
CN103384242A (zh) * | 2013-03-15 | 2013-11-06 | 中标软件有限公司 | 基于Nginx代理服务器的入侵检测方法及系统 |
CN104618404A (zh) * | 2015-03-10 | 2015-05-13 | 网神信息技术(北京)股份有限公司 | 防止网络攻击Web服务器的处理方法、装置及系统 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959514B (zh) * | 2018-06-27 | 2021-02-26 | 中国建设银行股份有限公司 | 一种数据处理方法及装置 |
CN108959514A (zh) * | 2018-06-27 | 2018-12-07 | 中国建设银行股份有限公司 | 一种数据处理方法及装置 |
CN108965309A (zh) * | 2018-07-27 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 一种数据传输处理方法、装置、系统及设备 |
CN109862439A (zh) * | 2019-01-29 | 2019-06-07 | 视联动力信息技术股份有限公司 | 数据处理方法和装置 |
CN109862439B (zh) * | 2019-01-29 | 2022-03-29 | 视联动力信息技术股份有限公司 | 数据处理方法和装置 |
EP3968595A4 (en) * | 2019-06-26 | 2022-06-15 | ZTE Corporation | METHOD AND DEVICE FOR DEFENDING NETWORK TERMS, RECEIVER DEVICE AND COMPUTER STORAGE MEDIUM |
WO2020258980A1 (zh) * | 2019-06-26 | 2020-12-30 | 中兴通讯股份有限公司 | 网络攻击防御方法、装置、接收设备及计算机存储介质 |
CN112152964A (zh) * | 2019-06-26 | 2020-12-29 | 中兴通讯股份有限公司 | 网络攻击防御方法、装置、接收设备及计算机存储介质 |
US12088622B2 (en) | 2019-06-26 | 2024-09-10 | Xi'an Zhongxing New Software Co. Ltd. | Method and apparatus for defending against cyber attacks, receiving device and computer storage medium |
CN113612786A (zh) * | 2021-08-09 | 2021-11-05 | 上海交通大学宁波人工智能研究院 | 一种车辆总线的入侵检测系统及方法 |
CN114172738A (zh) * | 2021-12-15 | 2022-03-11 | 广州市苏纳米实业有限公司 | 一种基于智能安全箱的抗DDoS攻击方法、装置及智能安全箱 |
CN114172738B (zh) * | 2021-12-15 | 2022-12-13 | 广州市苏纳米实业有限公司 | 基于智能安全箱的抗DDoS攻击方法、装置及智能安全箱 |
CN116546269A (zh) * | 2023-05-12 | 2023-08-04 | 应急管理部大数据中心 | 一种媒体流插帧的网络流量清洗方法、系统及设备 |
CN116546269B (zh) * | 2023-05-12 | 2024-01-30 | 应急管理部大数据中心 | 一种媒体流插帧的网络流量清洗方法、系统及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106713061B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106713061A (zh) | 监测攻击报文的方法、系统及装置 | |
Engelen et al. | Troubleshooting an intrusion detection dataset: the CICIDS2017 case study | |
US10218733B1 (en) | System and method for detecting a malicious activity in a computing environment | |
CN107360145B (zh) | 一种多节点蜜罐系统及其数据分析方法 | |
CN110602041A (zh) | 基于白名单的物联网设备识别方法、装置及网络架构 | |
CN107566381A (zh) | 设备安全控制方法、装置及系统 | |
Koroniotis et al. | The sair-iiot cyber testbed as a service: A novel cybertwins architecture in iiot-based smart airports | |
CN107241301A (zh) | 防御反射攻击的方法、装置和系统 | |
CN115801464B (zh) | 一种基于tcp协议攻击的模拟仿真方法、系统、设备及存储介质 | |
Dehlaghi-Ghadim et al. | Anomaly detection dataset for industrial control systems | |
CN109525587A (zh) | 一种数据包的识别方法及装置 | |
CN106708700A (zh) | 一种应用于服务端的运维监控方法和装置 | |
CN107483386A (zh) | 分析网络数据的方法及装置 | |
CN107666473A (zh) | 一种攻击检测的方法及控制器 | |
CN114531258B (zh) | 网络攻击行为的处理方法和装置、存储介质及电子设备 | |
US20230115046A1 (en) | Network security system for preventing unknown network attacks | |
CN109743314A (zh) | 网络异常的监控方法、装置、计算机设备及其存储介质 | |
US10630708B2 (en) | Embedded device and method of processing network communication data | |
CN108040039A (zh) | 一种识别攻击源信息的方法、装置、设备及系统 | |
CN107332804A (zh) | 网页漏洞的检测方法及装置 | |
CN106850865A (zh) | Mac地址的分配方法、装置及系统 | |
CN111126440A (zh) | 一种基于深度学习的一体化工控蜜罐识别系统及方法 | |
WO2017213998A1 (en) | In-band asymmetric protocol simulator | |
Kumar et al. | Light weighted CNN model to detect DDoS attack over distributed scenario | |
CN108924159A (zh) | 一种报文特征识别库的验证方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |