一种攻击报文的获取方法和设备的制作方法

文档序号:7725867阅读:155来源:国知局
专利名称:一种攻击报文的获取方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种攻击报文的获取方法和设备。
背景技术
当前,一方面随着网络用户数量不断增长和网络应用的飞速发展,在网运行的网络设备的数量不断增大,另一方面随着用户业务的种类不断细化,为之提供服务的网络设备的复杂度也不断提高。越来越多的网络设备需要解析报文的不同层次的内容,并做出相应的转发动作。随着网络设备的转发决策对于报文内容的依赖性增多,必然导致了设备受到攻击的概率大大增加。纵观网络设备遭受的种种攻击中,最难以防御和分析定位的要属 DOS (Disk Operating System,磁盘操作系统)攻击,攻击者往往通过将精心构造的特殊报文发送给网络设备,导致网络设备处理异常出现设备重启或者资源耗尽不能提供正常的服务,构造该类攻击的代价小,但是带来的危害却非常巨大,而且由于网络设备的多样性带来的攻击多样性,往往也无法从源头上杜绝此类攻击。另一方面,对于网络设备来说,如果能够知道攻击报文的具体形态,修正这些 BUG(漏洞)往往又是极其容易的。因此,对于此类攻击的防御,准确的抓住攻击报文是关键。当前捕捉和分析对网络设备造成DOS攻击报文的方法往往是通过在网络中部署 IDSdntrusion Detection System,入侵检测系统)设备,依靠IDS设备识别并记录下此类攻击报文,并结合网络设备的故障时间段,共同分析来实现。在实现本发明的过程中,发明人发现现有技术至少存在以下问题通过IDS设备来实现DOS报文捕捉存在如下局限性(I)IDS设备一般价格昂贵,不可能在网络中广泛部署,一般被部署在网络的出口, 对于大型网络的内部攻击往往无能为力。(2) IDS设备与受攻击设备的距离也会对IDS设备的作用产生较大影响,距离过远不能保证攻击报文能够经过IDS设备,并被IDS设备准确的记录下来。(3) IDS设备对于攻击的识别规则往往和受攻击的网络设备对攻击的识别存在出入,由于并不是同一个设备,对网络设备造成攻击的报文不一定会被IDS设备识别出来。(4)对于高速网络,过多的IDS设备往往会对网络的性能产生影响。

发明内容
本发明提供一种攻击报文的获取方法和设备,在不影响网络性能的情况下,对攻击报文进行捕获。为达到上述目的,本发明一方面提供了一种攻击报文的获取方法,所述方法具体包括以下步骤将接收的报文存储于存储介质;
将所述存储介质存储报文的存储位置信息记录于循环队列;确定设备异常则在所述循环队列中查询当前被处理的报文的存储位置信息;根据查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文。优选的,所述将所述存储介质存储报文的存储位置信息记录于循环队列的步骤包括如果所述循环队列未满,则直接将所述报文所对应的存储位置信息记录到所述循环队列中;如果所述循环队列已满,则用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息。优选的,所述用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息之后,还包括判断所述最先记录的存储位置信息所对应的报文是否处理完成;如果处理完成,则在所述存储介质中删除所述最先记录的存储位置信息所对应的报文,释放相应的存储位置的存储资源;如果处理没有完成,则将所述最先记录的存储位置信息在所述存储介质中所对应的存储位置的引用计数值恢复为初始值。优选的,当所述当前被处理的报文完成处理后,所述方法还包括判断所述报文在所述存储介质中的存储位置的引用计数值是否为初始值;如果所述引用计数值不是初始值,则按照预设策略修改所述引用计数值;如果所述引用计数值是初始值,则在所述存储介质中删除所述报文,释放相应的存储位置的存储资源。优选的,所述根据查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文,具体包括在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文;或,根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。另一方面,本发明还提供了一种网络设备,包括存储介质,具体包括所述存储介质,用于存储接收到的报文;队列管理模块,用于建立循环队列,并将所述存储介质所存储报文的存储位置信息记录于所述循环队列;查询模块,用于在确定设备异常时,在所述循环队列中查询当前被处理的报文的存储位置信息;识别模块,用于根据所述查询模块所查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文。优选的,所述队列管理模块,具体用于如果所述循环队列未满,则直接将所述报文所对应的存储位置信息记录到所述循环队列中;如果所述循环队列已满,则用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息。
优选的,所述网络设备还包括存储介质管理模块,具体用于在所述队列管理模块用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息之后,判断所述最先记录的存储位置信息所对应的报文是否处理完成;如果处理完成,则在所述存储介质中删除所述最先记录的存储位置信息所对应的报文,释放相应的存储位置的存储资源;如果处理没有完成,则将所述最先记录的存储位置信息在所述存储介质中所对应的存储位置的引用计数值恢复为初始值。优选的,所述存储介质管理模块,具体用于当所述当前被处理的报文完成处理后,判断所述报文在所述存储介质中的存储位置的引用计数值是否为初始值;如果所述引用计数值不是初始值,则按照预设策略修改所述引用计数值;如果所述引用计数值是初始值,则在所述存储介质中删除所述报文,释放相应的存储位置的存储资源。优选的,所述识别模块,具体用于在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文;或,根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在网络设备中建立了记录最近接收到的报文的存储位置信息的循环队列,而且存储介质会保存在循环队列中存在位置信息记录的报文,所以, 在出现攻击时,可以依据循环队列所记录的信息,将发生攻击前最近接收到的报文获取出来,并从中识别攻击报文,通过这样的处理,在不影响网络设备的正常报文处理过程的情况下,始终对最近所接收到的报文进行保存,从而,在发生攻击时,确保攻击报文仍被保存在存储介质中,可以准确的获取到攻击报文的完整内容,在不影响网络性能的情况下完成攻击报文的捕获。


图1为本发明所提出的一种攻击报文的获取方法的流程示意图;图2为应用本发明所提出的一种攻击报文的获取方法的应用场景下进行报文处理的流程示意图;图3为本发明所提出的一种网络设备的结构示意图。
具体实施例方式如背景技术所述,现有的攻击报文捕捉技术存在捕捉设备成本过高,以及影响网络性能等问题。基于上述问题,本发明提出了一种攻击报文的获取方法,在不影响网络设备自身的处理性能,不降低网络整体性能的前提下,准确高效的记录下对该网络设备造成攻击的报文。
如图1所示,为本发明所提出的一种攻击报文的获取方法的流程示意图,该方法在网络设备中建立了一个循环队列,记录最近接收到的预设数量的报文在存储介质中的存储位置信息,而在存储介质中保存循环队列中所记录的存储位置信息所对应的报文,即只要循环队列中还记录有报文相对应的存储位置信息,存储介质中就会一直存储该报文的完整内容,不会删除该报文。在实际应用中,循环队列的具体长度可以根据实际场景的需要来设定,具体的可以参考网络设备接收报文的频率等信息来设定,因为循环队列的主要目的在于记录发生攻击时刻之前的一定时间范围内所接收到的报文,如果网络设备接收报文的频率较高,则相同的时间范围内接收到的报文更多,循环队列需要较长的长度设置,以便记录这些报文,而如果频率较低,则循环队列只需要较短的长度设置,便能够记录这些报文,在满足记录相应时间范围的报文的前提下,循环队列的长度变化并不会影响本发明的保护范围。具体的,该方法包括以下步骤步骤S101、将接收的报文存储于存储介质。步骤S102、将存储介质存储报文的存储位置信息记录于循环队列。在具体的实施场景中,在实现本步骤的处理之前,需要判断当前循环队列中记录存储位置信息的位置是否已被占满,根据具体的判断结果,本步骤的处理具体包括两种情况(1)如果当前循环队列未满,则将该报文所对应的存储位置信息记录到循环队列中。即在当前空白的位置记录相应的存储位置信息。(2)如果循环队列已满,则用报文所对应的存储位置信息替换循环队列中最先记录的存储位置信息。在此种情况下,对于被替换的最先记录的存储位置信息还需要包含以下的进一步处理判断最先记录的存储位置信息所对应的报文是否处理完成。如果该报文的处理已经完成,则在存储介质中删除该最先记录的存储位置信息所对应的报文,并释放相应的存储位置的存储资源。相反,如果该报文的处理当前还没有完成,则将该最先记录的存储位置信息在存储介质中所对应的存储位置的引用计数值恢复为初始值。这样的处理的原因在于,在本发明所提出的技术方案中,对于接收到的报文,如果报文的处理完成,那么,还需要进行以下的处理判断该报文的存储位置的引用计数值是否为初始值,如果引用计数值不是初始值,则按照预设策略修改引用计数值,而如果引用计数值是初始值,则在存储介质中删除报文,释放相应的存储位置的存储资源。由此可以看出,当该报文的处理完成时,如果相应的引用计数值为初始值,那么, 则表示该报文所对应的存储位置信息已经不在循环队列中记录,必然不再是最近所接收到的报文,并且该报文的处理也已完成,因此,可以在存储介质中删除该报文的完整内容,释放相应的存储位置的存储资源,避免其对于存储介质中的存储资源的继续占用,相反,如果相应的引用计数值不是初始值,那么,则表示该报文所对应的存储位置信息仍然在循环队列中记录,该报文属于最近所接收到的报文,因此,还不能确保该报文一定是安全的,需要在存储介质中继续保存该报文的完整内容。需要指出的是,本步骤中的将存储位置信息记录到循环队列的处理过程与网络设备对报文的正常处理过程不相矛盾,两者可以在接收到报文之后并行进行,由于在循环队列中记录相应的存储位置信息所消耗的网络设备自身的处理资源十分有限,因此,不会对网络设备自身的性能产生影响。而且,由于在循环队列中记录相应的存储位置信息的过程与报文的正常处理过程互不影响,所以,对报文的具体处理进程和效率也不会产生影响,不会影响网络系统的整体性能。步骤S103、确定设备异常则在循环队列中查询当前被处理的报文的存储位置信肩、ο步骤S104、根据查询的存储位置信息从存储介质获取对应的报文,并识别攻击报文。在具体的应用场景中,本步骤的处理至少可以包括以下两种方式(1)在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文。即根据攻击报文的特征进行针对性识别,这样的处理方案要求预先明确的确定攻击报文的特征。(2)根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。本方案无需预先确定攻击报文特征,而只是根据获取到的报文进行处理模拟,从而确定真正导致攻击的报文,将其确定为攻击报文。当然,还可以直接将攻击发生时刻之前收到的一定数量的报文直接确定为攻击报文,这样的处理方案虽然会导致一些正常报文被确定为攻击报文,但省去了对攻击报文进一步识别所消耗的处理资源。由以上说明可以看出,具体采用哪种技术方案可以根据系统实际的场景需要进行选择,但是能够在系统所能承受的资源负荷和识别精度的范围内,确定攻击报文,并获取该攻击报文的完整内容的方法都可以应用到本技术方案中,这样的变化并不影响本发明的保护范围。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在网络设备中建立了记录最近接收到的报文的存储位置信息的循环队列,而且存储介质会保存在循环队列中存在位置信息记录的报文,所以, 在出现攻击时,可以依据循环队列所记录的信息,将发生攻击前最近接收到的报文获取出来,并从中识别攻击报文,通过这样的处理,在不影响网络设备的正常报文处理过程的情况下,始终对最近所接收到的报文进行保存,从而,在发生攻击时,确保攻击报文仍被保存在存储介质中,可以准确的获取到攻击报文的完整内容,在不影响网络性能的情况下完成攻击报文的捕获。为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。在现有的技术方案中,几乎所有的网络设备的具体功能实现都是存储转发,即在报文转发过程中,首先会被存储在存储介质中,然后由网络设备对其进行分析和处理后执行相关的转发动作。本发明所提出的技术方案的实现前提条件就是必须将网络设备用于存储报文的存储介质按照如下的方式进行管理。(1)存储介质中存储报文的存储位置的头部增加引用计数字段。在对接收到的报文进行存储介质申请时,即将该报文存储到存储介质中的具体存储位置之前,相应的存储位置所对应的引用计数字段的引用计数值设置为初始值。(2)可以进行修改引用计数字段的具体引用计数值的操作。允许在报文转发过程中修改被转发的报文所占用的存储位置所对应的引用计数值。(3)当一个报文转发完毕,需要释放存储该报文的存储位置的存储资源时,首先检查该存储位置所对应的引用计数值。如果该引用计数值不等于初始值,则按照预设的处理规则处理该引用计数字段, 例如加1或者减1,具体的处理规则是在满足O)的要求的前提下提前设定的。如果该引用计数值等于初始值,则释放该存储位置的存储资源,即将该已经转发完毕的报文在存储介质中删除。本发明实施例在上述规则的基础上提出了实现攻击报文捕捉的方法,具体分为以下三个阶段进行说明(一)初始阶段。一方面,网络设备中创建用于记录报文在存储介质中的存储位置信息(一般为首地址)的循环队列,设备制造厂家或者用户可以根据该网络设备在网络中所处的位置,以及该网络设备处理的网络流量设定或者调整循环队列的长度。循环队列的实现可以借鉴软件循环队列的标准实现,至少需要提供如下操作(1)判断循环队列是否已满。(2)获取循环队列的尾部元素(最先记录的元素,或记录时间最久的元素)的操作。(3)将新的元素记录到循环队列中,如果需要,可以以新的元素覆盖循环队列的尾部元素。另一方面,存储介质中的各存储位置在初始状态下没有存储报文,所以其头部的引用计数字段均为初始值。(二)报文处理阶段。如图2所示,为应用本发明所提出的一种攻击报文的获取方法的应用场景下进行报文处理的流程示意图,相应的技术方案的具体描述如下步骤S201、网络设备接收到新的报文。步骤S202、网络设备在存储介质中为该报文分配相应的存储位置。本步骤完成后,同时执行步骤S203和步骤S209,即同时执行循环队列的更新和报文的正常处理过程。步骤S203、网络设备判断循环队列当前是否已满。即判断循环队列中当前是否还存在可以记录报文存储位置信息的空白位置。
如果判断结果为循环队列未满,执行步骤S204。如果判断结果为循环队列已满,则执行步骤S205。步骤S204、网络设备将该报文的存储位置信息记录到循环队列的空白位置。这种情况出要出现在网络设备初始化不久,接收到的报文数量还没有达到循环队列可记录的存储位置数量时。在具体进行记录时,可以按照循环队列中位置的先后顺序依次进行记录,也可以为相应的存储位置信息增加一个时间标签,标识记录该存储位置信息的时间,从而,方便后续处理过程中对最先记录的存储位置信息的查找。在完成本步骤后,循环队列中的存储位置信息的记录过程完成。步骤S205、网络设备以该报文的存储位置信息替换循环队列中最先记录的存储位直fe息。即按照记录时间的先后顺序,将最早记录的存储位置信息更新为最新接收到的报文的存储位置信息。在完成本步骤的处理后,对于被替换的存储位置信息,还需要进一步进行以下处理,即执行步骤S206。步骤S206、网络设备判断被替换的最先记录的存储位置信息所对应的报文是否完成了处理。如果判断结果为否,执行步骤S207 ;如果判断结果为是,执行步骤S208。步骤S207、网络设备修改被替换的最先记录的存储位置信息所对应的存储位置的头部的引用计数值为初始值。步骤S208、网络设备删除被替换的最先记录的存储位置信息所对应的存储位置所存储的报文,释放该存储位置的存储资源。步骤S209、网络设备在存储介质中相应的存储位置存储该报文。在存储完成后,按照相应的规则,修改该存储位置的头部的引用计数值,使其不再是初始值。步骤S210、按照正常的报文处理流程进行处理。在完成相应的报文处理后,执行步骤S211。步骤S211、网络设备判断存储该报文的存储位置的头部的引用计数值是否为初始值。如果判断结果为是,则执行步骤S208 ;如果判断结果为否,则执行步骤S212。步骤S212、网络设备按照预设的规则修改该报文的存储位置的头部的引用计数值,并继续在该存储位置存储该报文。有上述的说明过程可以看出(1)循环队列中用于记录存储位置信息的位置可以循环利用,从而保证循环队列中始终保存网络设备最近所接收到的报文的存储位置信息。(2)存储有报文的存储位置的头部的引用计数值可以标记该存储位置的信息是否依旧被循环队列所记录,由于循环队列的更新过程而被替换的存储位置信息所对应的存储
10位置,其头部的引用计数值为初始值。(3)在存储介质中,即使报文完成了相应的处理,也不一定会删除该报文,除非存储该报文的存储位置所对应的存储位置信息已经不再记录在循环队列中(该存储位置的头部的引用计数值为初始值),即该报文已不再是网络设备最近所接收到的报文。因此,循环队列和引用计数值引入,使存储介质中始终存储着网络设备最近所接收到的报文(因为循环队列记录着这些报文的存储位置信息,所以,相应的存储位置的头部的引用计数值不会为初始值,在这种情况下,即使报文处理完毕,也不会被删除),而之前所收到的报文,由于经过了一定时间的验证后,并没有导致网络攻击,所以,均可以确定为非攻击报文,在循环队列中将被更新掉,相应的引用计数值也会被置为初始值,则在完成相应的处理后即可删除。(三)攻击阶段。当网络设备确定自己遭到攻击后,进入此阶段。在攻击没有导致该网络设备重启的情况下,网络设备可以自行将攻击报文捕获, 具体的处理过程如下当网络设备遭到攻击导致影响业务运行,但是未造成设备重启时,该网络设备遍历循环队列,获取当前记录的所有存储位置信息,在这些存储位置信息所对应的存储位置中,存储有该网络设备最近所接收到的所有报文。然后,网络设备根据相应的存储位置信息获取相应的存储位置所存储的报文的完整报文内容。最后,将获取到的报文的完整报文内容输出或者记录到非易失介质中,例如记录到flash或者输出到日志中。根据相应的完整报文内容,可以通过特征识别或模拟等方式识别到真正导致本次攻击的报文,从而,完成攻击报文的完整报文内容的捕获,当然,也可以根据获取到的报文的完整报文内容直接进行攻击报文的识别,并将识别到的攻击报文的完整报文内容输出或者记录到非易失介质中,这样的处理虽然增加了之前的处理时间,但是却减少了需要输出或存储的内容,具体采用哪种技术方案,可以根据实际的需要进行选择,这样的变化并不影响本发明的保护范围。而当网络设备遭受的攻击导致该网络设备重启时,该网络设备需要在重启过程中的存储介质初始化阶段之前完成上述操作,同样可以捕捉到相应的攻击报文。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在网络设备中建立了记录最近接收到的报文的存储位置信息的循环队列,而且存储介质会保存在循环队列中存在位置信息记录的报文,所以, 在出现攻击时,可以依据循环队列所记录的信息,将发生攻击前最近接收到的报文获取出来,并从中识别攻击报文,通过这样的处理,在不影响网络设备的正常报文处理过程的情况下,始终对最近所接收到的报文进行保存,从而,在发生攻击时,确保攻击报文仍被保存在存储介质中,可以准确的获取到攻击报文的完整内容,在不影响网络性能的情况下完成攻击报文的捕获。为了实现本发明的技术方案,本发明还提出了一种网络设备,其结构示意图如图3 所示,包括存储介质31,存储介质31中包含多个用于存储报文的存储位置,该网络设备进一步包括所述存储介质31,用于存储接收到的报文;队列管理模块32,用于建立循环队列,并将所述存储介质31所存储报文的存储位置信息记录于所述循环队列;查询模块33,用于在确定设备异常时,在所述循环队列中查询当前被处理的报文的存储位置信息;识别模块34,用于根据所述查询模块33所查询的存储位置信息从所述存储介质 31获取对应的报文,并识别攻击报文。在具体的实施场景中,所述队列管理模块32,具体用于如果所述循环队列未满,则直接将该报文所对应的存储位置信息记录到循环队列中;如果所述循环队列已满,则用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息。需要指出的是,上述网络设备还包括存储介质管理模块35,具体用于在所述队列管理模块32用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息之后,判断所述最先记录的存储位置信息所对应的报文是否处理完成;如果处理完成,则在所述存储介质31中删除所述最先记录的存储位置信息所对应的报文,释放相应的存储位置的存储资源;如果处理没有完成,则将所述最先记录的存储位置信息在所述存储介质31中所对应的存储位置的引用计数值恢复为初始值。进一步的,所述存储介质管理模块35具体用于当当前被处理的报文完成处理后,判断该报文在存储介质31中的存储位置的引用计数值是否为初始值;如果所述引用计数值不是初始值,则按照预设策略修改所述引用计数值;如果所述引用计数值是初始值,则在所述存储介质31中删除所述报文,释放相应的存储位置的存储资源。另一方面,所述识别模块34,具体用于在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文;或,根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在网络设备中建立了记录最近接收到的报文的存储位置信息的循环队列,而且存储介质会保存在循环队列中存在位置信息记录的报文,所以, 在出现攻击时,可以依据循环队列所记录的信息,将发生攻击前最近接收到的报文获取出来,并从中识别攻击报文,通过这样的处理,在不影响网络设备的正常报文处理过程的情况下,始终对最近所接收到的报文进行保存,从而,在发生攻击时,确保攻击报文仍被保存在存储介质中,可以准确的获取到攻击报文的完整内容,在不影响网络性能的情况下完成攻击报文的捕获。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是⑶-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1.一种攻击报文的获取方法,其特征在于,所述方法具体包括以下步骤 将接收的报文存储于存储介质;将所述存储介质存储报文的存储位置信息记录于循环队列;确定设备异常则在所述循环队列中查询当前被处理的报文的存储位置信息;根据查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文。
2.如权利要求1所述的方法,其特征在于,所述将所述存储介质存储报文的存储位置信息记录于循环队列的步骤包括如果所述循环队列未满,则直接将所述报文所对应的存储位置信息记录到所述循环队列中;如果所述循环队列已满,则用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息。
3.如权利要求2所述的方法,其特征在于,所述用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息之后,还包括判断所述最先记录的存储位置信息所对应的报文是否处理完成; 如果处理完成,则在所述存储介质中删除所述最先记录的存储位置信息所对应的报文,释放相应的存储位置的存储资源;如果处理没有完成,则将所述最先记录的存储位置信息在所述存储介质中所对应的存储位置的引用计数值恢复为初始值。
4.如权利要求1所述的方法,其特征在于,当所述当前被处理的报文完成处理后,所述方法还包括判断所述报文在所述存储介质中的存储位置的引用计数值是否为初始值; 如果所述引用计数值不是初始值,则按照预设策略修改所述引用计数值; 如果所述引用计数值是初始值,则在所述存储介质中删除所述报文,释放相应的存储位置的存储资源。
5.如权利要求1所述的方法,其特征在于,所述根据查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文,具体包括在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文;或, 根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。
6.一种网络设备,包括存储介质,其特征在于,具体包括 所述存储介质,用于存储接收到的报文;队列管理模块,用于建立循环队列,并将所述存储介质所存储报文的存储位置信息记录于所述循环队列;查询模块,用于在确定设备异常时,在所述循环队列中查询当前被处理的报文的存储位置信息;识别模块,用于根据所述查询模块所查询的存储位置信息从所述存储介质获取对应的报文,并识别攻击报文。
7.如权利要求6所述的网络设备,其特征在于,所述队列管理模块,具体用于如果所述循环队列未满,则直接将所述报文所对应的存储位置信息记录到所述循环队列中;如果所述循环队列已满,则用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息。
8.如权利要求7所述的队列管理模块,其特征在于,还包括存储介质管理模块,具体用于在所述队列管理模块用所述报文所对应的存储位置信息替换所述循环队列中最先记录的存储位置信息之后,判断所述最先记录的存储位置信息所对应的报文是否处理完成;如果处理完成,则在所述存储介质中删除所述最先记录的存储位置信息所对应的报文,释放相应的存储位置的存储资源;如果处理没有完成,则将所述最先记录的存储位置信息在所述存储介质中所对应的存储位置的引用计数值恢复为初始值。
9.如权利要求8所述的网络设备,其特征在于,所述存储介质管理模块,具体用于当所述当前被处理的报文完成处理后,判断所述报文在所述存储介质中的存储位置的引用计数值是否为初始值;如果所述引用计数值不是初始值,则按照预设策略修改所述引用计数值; 如果所述引用计数值是初始值,则在所述存储介质中删除所述报文,释放相应的存储位置的存储资源。
10.如权利要求6所述的网络设备,其特征在于,所述识别模块,具体用于 在所获取到的所有报文中,根据预设的攻击报文特征识别攻击报文;或,根据所获取到的所有报文进行报文处理模拟,确定导致攻击的的报文为攻击报文。
全文摘要
本发明公开了一种攻击报文的获取方法和设备,通过应用本发明的技术方案,在网络设备中建立了记录最近接收到的报文的存储位置信息的循环队列,而且存储介质会保存在循环队列中存在位置信息记录的报文,所以,在出现攻击时,可以依据循环队列所记录的信息,将发生攻击前最近接收到的报文获取出来,并从中识别攻击报文,通过这样的处理,在不影响网络设备的正常报文处理过程的情况下,始终对最近所接收到的报文进行保存,从而,在发生攻击时,确保攻击报文仍被保存在存储介质中,可以准确的获取到攻击报文的完整内容,在不影响网络性能的情况下完成攻击报文的捕获。
文档编号H04L12/56GK102231747SQ201110200540
公开日2011年11月2日 申请日期2011年7月18日 优先权日2011年7月18日
发明者吕磊 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1