CN113364722B - 网络安全防护方法和装置 - Google Patents
网络安全防护方法和装置 Download PDFInfo
- Publication number
- CN113364722B CN113364722B CN202010144209.0A CN202010144209A CN113364722B CN 113364722 B CN113364722 B CN 113364722B CN 202010144209 A CN202010144209 A CN 202010144209A CN 113364722 B CN113364722 B CN 113364722B
- Authority
- CN
- China
- Prior art keywords
- message
- data table
- index
- storage area
- statistical
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/143—Denial of service attacks involving systematic or selective dropping of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例涉及网络安全防护方法和装置、计算机可读存储介质、网络安全防护芯片、安全服务器、以及网络安全防护系统。所述方法包括:从接收到的第一报文中提取报文特征,根据报文特征确定第一报文的索引;将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文更新与目标索引对应的报文统计值;如果更新后的报文统计值大于第一阈值,将报文统计数据从活动数据表中移动到第二存储区中;扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。本发明实施例提供的网络安全防护方案,能够快速及时检测出是否发生了网络攻击。
Description
技术领域
本说明书涉及网络安全技术,更具体地,涉及网络安全防护方法、网络安全防护装置、计算机可读存储介质、网络安全防护芯片、安全服务器、以及网络安全防护系统。。
背景技术
分布式拒绝服务攻击DDoS(Distributed Denial of Service)是一种特殊形式的拒绝服务攻击,具有分布的、协同的大规模攻击的特点。DDoS的表现形式主要有两种,一种为流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络带宽被阻塞,合法网络包被虚假的攻击包淹没而无法到达主机。另一种为资源耗尽攻击,主要是针对服务器主机的攻击,即通过大量攻击包导致主机的内存被耗尽或主机的处理器被完全占用而造成无法提供网络服务。
DDoS防护系统作为检测防御系统,从攻击发生到做出防御动作的时间非常关键,越快则可以保证对业务的影响越小。DDoS防护系统的响应及时性非常关键,因此有必要提出一种能够提高响应速度的防护方案。
发明内容
本说明书公开的实施例提供网络安全防护方法和网络安全防护装置。
根据本说明书公开的第一方面,提供了网络安全防护方法,包括以下步骤:从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征;
将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;其中,活动数据表存储在第一存储区中并且允许写入操作,报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率;
如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;
如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中;
扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
可选地,所述方法还包括:如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据。
可选地,报文特征包括源地址或者目的地址中的至少一个。
可选地,报文特征还包括报文的协议类型。
可选地,根据提取出的报文特征确定第一报文的索引,包括:
根据提取出的报文特征计算哈希值;
第一报文的索引还包含计算出的哈希值。
可选地,在活动数据表中查找与目标索引对应的报文统计数据,包括:
将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;
将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。
可选地,第一存储区中还存储有非活动数据表,非活动数据表禁止写入操作;
按照预设的切换周期将活动数据表和非活动数据表进行切换;在将非活动数据表切换为活动数据表时,清空表中的内容。
可选地,所述方法还包括:扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第二存储区中,第二阈值小于第一阈值。
可选地,在向第二存储区写入报文统计数据时,为报文统计数据打上时间戳;
扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征,包括:
将扫描到的大于第一阈值的报文统计值所对应的报文特征确定为属于网络攻击的报文的报文特征;以及,
如果在扫描到第一报文统计数据之后,扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
可选地,所述方法还包括:扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第三存储区中,第二阈值小于第一阈值;
扫描第三存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
可选地,扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征,包括:
将扫描到的报文统计数据所对应的报文特征确定为属于网络攻击的报文的报文特征。
可选地,在向第三存储区写入报文统计数据时,为报文统计数据打上时间戳;
扫描第三存储区中的报文统计数据,确定属于网络攻击的报文的报文特征,包括:
如果在扫描到第一报文统计数据之后,扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
可选地,第二存储区采用环形队列存储机制。
可选地,第三存储区采用环形队列存储机制。
可选地,所述网络攻击为分布式拒绝服务攻击。
根据本说明书公开的第二方面,提供了网络安全防护装置,包括以下模块:
特征提取模块,用于从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征;
活动数据表管理模块,用于将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;其中,活动数据表存储在第一存储区中并且允许写入操作,报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率;如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中;
防护模块,用于扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
可选地,所述网络攻击为分布式拒绝服务攻击。
根据本说明书公开的第三方面,提供了网络安全防护装置,包括处理器和存储器;存储器中存储有计算机指令,计算机指令被处理器执行时实现前述任一项的网络安全防护方法。
根据本说明书公开的第四方面,提供了计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述任一项的网络安全防护方法。
根据本说明书公开的第五方面,提供了网络安全防护芯片,包括处理器和存储器;所述存储器中存储有计算机指令,所述计算机指令被所述处理器执行时实现前述任一项的网络安全防护方法。
根据本说明书公开的第六方面,提供了安全服务器,安装有前述网络安全防护芯片。
根据本说明书公开的第七方面,提供了网络安全防护系统,包括前述安全服务器。
本发明实施例提供的网络安全防护方法,在第一存储区中预先过滤掉小流量的报文的统计数据,第二存储区中只存储大流量的报文的统计数据,在很短的时间内就能够对第二存储区完成一次扫描,能够快速、及时地检测出是否发生了网络攻击。
通过以下参照附图对本说明书的示例性实施例的详细描述,本说明书的实施例的报文特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本说明书的实施例,并且连同其说明一起用于解释本说明书实施例的原理。
图1是本说明书一个实施例提供的网络安全防护方法的流程图;
图2是本说明书一个实施例提供的网络安全防护装置的框图;
图3是本说明书一个实施例提供的网络安全防护装置的框图;
图4是本说明书一个实施例提供的网络安全防护装置的框图;
图5是本说明书一个实施例提供的网络安全防护装置的框图。
具体实施方式
现在将参照附图来详细描述本说明书的各种示例性实施例。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本说明书实施例及其应用或使用的任何限制。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
网络攻击分为很多种,例如未经授权非法访问系统以窃取资料、会话劫持攻击,跨站脚本攻击、分布式拒绝服务攻击等等。为了实现网络攻击,攻击者有可能需要向系统服务器发送报文,通过分析统计报文,有可能识别出属于网络攻击的报文的特征。
本发明实施例中,提供了网络安全防护方法,包括以下步骤:
从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征;
将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;其中,活动数据表存储在第一存储区中并且允许写入操作,报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率;
如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;
如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中;
扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
下面以DDoS防护为例,进一步说明本发明的实施例提供的网络安全防护方法。
为了进行DDoS防护,通常在服务器的网络入口处实时采集报文数据以确定访问服务器的网络流量,当网络流量超过了防护阈值时,进行相关的防护动作。防护动作例如可以是针对攻击流量进行清洗以尽可能保证服务器的业务可用,例如可以是触发黑洞机制,暂时屏蔽服务器的外网访问。在具体实现中,实时接收报文并且生成报文记录,然后以一定的时间间隔(通常是1秒-5秒内)扫描遍历所有的报文记录,根据扫描到的报文记录做出相应的判断,根据判断结果执行对应的防护策略。随着网络带宽越来越大,报文记录的数量越来越大,扫描处理全部的报文记录需要更多的时间,导致不能够及时发现DDoS攻击。
本说明书实施例提供的网络安全防护方案,旨在快速、及时地处理报文记录,以及时检测出是否发生了DDoS攻击。
首先,介绍一下如何确定报文的索引。具体地,从接收到的报文中提取报文特征,根据提取出的报文特征确定报文的索引,报文的索引中包含从该报文中提取出的报文特征。
在一个实施例中,报文特征包括源地址或者目的地址中的至少一个,例如,提取出的报文特征可以是“源地址”,可以是“目的地址”,可以是“源地址-目的地址”。在另一个实施例中,报文的报文特征还可以包括报文的协议类型,例如,提取出的报文特征可以是“源地址-协议类型”,可以是“目的地址-协议类型”,可以是“源地址-目的地址-协议类型”。
在一个实施例中,将提取出的特征作为报文的索引,即报文的索引就是提取出的报文特征。在另一个实施例中,用提取出的报文特征计算哈希值,“报文特征-用报文特征计算出的哈希值”一起构成该报文的索引。在本发明的一个实施例中,可以采用16位或者32位的哈希算法。
然后,介绍一下本发明实施例中的活动数据表和活动数据表中的报文统计数据。报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率。
在一个实施例中,报文的索引就是提取出的报文特征,报文统计数据包括“报文特征-与报文特征对应的报文统计值”。在另一个实施例中,用提取出的报文特征计算哈希值,报文的索引包含提取出的报文特征和用提取出的报文特征计算出的哈希值,报文统计数据包括“报文特征-用报文特征计算出的哈希值-与报文特征对应的报文统计值”。
统计具有同一索引的报文的总比特数(或者总数据包数),然后用总比特数(或者总数据包数)除以总时间计算得到与该索引对应的报文统计值,这里的总时间是指第一次接收到具有该索引的报文到当前最新一次接收到具有该索引的报文之间的时长。
活动数据表中的报文统计数据来源于接收到的报文。下面以一个具体的例子进行说明:当第一次接收到索引为A1的报文(接收时间为x1,报文的比特数为y1)时,在活动数据表中创建与索引A1对应的报文统计数据U1,此时,报文统计数据U1的索引项为A1,报文统计值项为空白。当第二次接收到索引为A1的报文(接收时间为x2,报文的比特数为y2)时,计算总比特数为y1+y2,计算总时间为x2-x1,用总比特数除以总时间得到比特率z1,将报文统计数据U1的报文统计值项更新为比特率z1。当第三次接收到索引为A1的报文(接收时间为x3,报文的比特数为y3)时,计算总比特数为y1+y2+y3,计算总时间为x3-x1,用总比特数除以总时间得到比特率z2,将报文统计数据U1的报文统计值项更新为比特率z2。
表1-表3分别示意出了活动数据表的三个例子。在表1中,只以报文的源地址作为报文的索引,报文统计值是具有同一源地址的报文的比特率。在表2中,以报文的源地址和目的地址作为报文的索引,报文统计值是具有同一源地址和同一目的地址的报文的数据包率。在表3中,以报文的源地址、目的地址、根据源地址和目的地址计算出的哈希值作为报文的索引,报文统计值是具有同一源地址和同一目的地址的报文的比特率。在表3中,可以看出,用报文特征“源地址a1-目的地址b2”计算出的哈希值和用报文特征“源地址a5-目的地址b6”计算出的哈希值是一样的,都是“63567800”。相比于查找报文特征,查找哈希值的速度非常快,本发明实施例中将用报文特征计算出的哈希值也作为索引,主要目的是为了缩小查找范围,降低查找时间。
例如,如果直接在表3中查找“源地址a1-目的地址b2”,查找时间会比较长。因此,先用“源地址a1-目的地址b2”计算出哈希值“63567800”,在表3中查找出哈希值为“63567800”的多个报文统计数据作为候选报文统计数据,然后在候选报文统计数据中查找出报文特征为“源地址a1-目的地址b2”的报文统计数据,能够提高查找速度。
表1
报文特征 | 比特率 |
源地址a1 | 500Mbps |
源地址a2 | 300Mbps |
… | … |
… | … |
… | … |
表2
表3
报文特征 | 哈希值 | 比特率 |
源地址a1-目的地址b1 | 15655712 | 630Mbps |
源地址a1-目的地址b2 | 63567800 | 300Mbps |
源地址a2-目的地址b2 | 98784514 | 530Mbps |
源地址a3-目的地址b4 | 21564456 | 260Mbps |
源地址a5-目的地址b6 | 63567800 | 450Mbps |
… | … | … |
… | … | … |
… | … | … |
<第一实施例>
在第一实施例中,预先规划有第一存储区和第二存储区,活动数据表存储在第一存储区中,活动数据表能够被读取、删除和写入。
参见图1所示,第一实施例提供的网络安全防护方法,包括以下步骤:
S202、从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
提取的报文特征包括源地址或者目的地址中的至少一个,还可以包括报文的协议类型。在步骤S202中,提取哪些报文特征,可以根据实际应用需求进行设定,不限于上述情况。
参照前述提取报文特征的内容,从接收到的第一报文中提取报文特征,根据从第一报文中提取出的报文特征确定第一报文的索引,第一报文的索引中包含该提取的报文特征。参照前述提取报文特征的内容,第一报文的索引进一步还可以包含用提取出的报文特征计算出的哈希值。
S204、将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据。
如果报文的索引包括哈希值,在步骤S204中,按照以下方式进行查找:将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。可以参见前述在表3中查找与索引“源地址a1-目的地址b2-63567800”对应的报文统计数据的过程。
如果在活动数据表中查找到与目标索引对应的报文统计数据,执行步骤S206。如果在活动数据表中没有查找到与目标索引对应的报文统计数据,执行步骤S208。
S206、如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值。
具体地,步骤S206可以参见前述对报文统计数据U1的报文统计值进行更新的过程。
S208、如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据。
具体地,步骤S208可以参见前述第一次接收到索引为A1的报文时,在活动数据表中创建与索引A1对应的报文统计数据U1的过程。
S210、如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
也就是说,如果更新后的报文统计值大于第一阈值,将更新后的报文统计值所对应的报文统计数据写入到第二存储区中,并且将更新后的报文统计值所对应的报文统计数据从活动数据表中删除。
在一个具体的例子中,参见表3所示,报文统计值是比特率,第一阈值可以设置成600Mbps,索引“源地址a1-目的地址b1-15655712”对应的报文统计值从500Mbps更新为630Mbps,超过了第一阈值,将“源地址a1-目的地址b1-15655712-630Mbps”这一条报文统计数据从活动数据表中移动到第二存储区中。在一个具体的例子中,参见表2所示,报文统计值是数据包率,第一阈值可以设置成50Mpps,索引“源地址a1-目的地址b2”对应的报文统计值从45Mpps更新为70Mpps,超过了第一阈值,将“源地址a1-目的地址b2-70 Mpps”这一条报文统计数据从活动数据表中移动到第二存储区中。
如果在短时间内接收到大量的具有相同报文特征的报文,那么这些报文有可能是DDoS攻击报文。因此,在步骤S210中,如果一条报文统计数据的报文统计值大于第一阈值,说明该条报文统计数据的索引中包含的报文特征可能为DDoS攻击报文的报文特征,将该条报文统计数据移动到第二存储区中。
步骤S202-S210可以是一个实时处理的过程,对于实时接收到的报文进行实时处理,有利于及时判断、发现可能出现的疑似DDoS攻击。
S212、扫描第二存储区中的报文统计数据,确定属于分布式拒绝服务攻击DDoS的报文的报文特征以进行DDoS防护。
前述步骤对报文统计数据进行了过滤,只将报文统计值大于第一阈值的报文统计数据移动到第二存储区中。第二存储区中的数据量比较小,在很短的时间内就能够对第二存储区完成一次扫描,因此可以很及时的实现DDoS防护。
对于步骤S212,在一个实施例中,对扫描到的报文统计数据的报文统计值进行判断,以确定属于DDoS攻击报文的特征。在另一个实施例中,不进行判断,将在第二存储区中扫描到的报文统计数据对应的报文特征直接确定为DDoS攻击报文的特征。具体的防护动作,例如可以是针对攻击流量进行清洗以尽可能保证服务器的业务可用,例如可以是触发黑洞机制,暂时屏蔽服务器的外网访问。本领域技术人员可以根据实际需求设置判断策略和防护策略,这里不再赘述。
在一个实时例中,将第二存储区中的扫描过的报文统计数据清除。在另一个实施例中,第二存储区采用环形队列存储机制,环形队列存储机制也就是遵循先进先出原则的循环缓冲存储机制,具有一个读指针和一个写指针,通过移动读指针和写指针就可以实现同时对第二存储区的数据读取(扫描)和写入,当第二存储区存满时,第二存储区中最先被存入报文统计数据将被清除。
本发明实施例提供的网络安全防护方法,在第一存储区中预先过滤掉小流量的报文的统计数据,第二存储区中只存储大流量的报文的统计数据,在很短的时间内就能够对第二存储区完成一次扫描,能够快速、及时地检测出是否发生了DDoS攻击,降低对业务的影响。
本说明书实施例提供的网络安全防护方法,能够在高带宽场景下保证处理性能和DDoS防护的及时性。
<第二实施例>
在第二实施例中,预先规划有第一存储区和第二存储区,在第一存储区中存储有活动数据表和非活动数据表,活动数据表能够被读取、删除和写入,非活动数据表能够被读取和删除,但是不能够被写入。
第二实施例对于活动数据表的处理过程可以参见第一实施例。第二实施例和第一实施例的不同之处在于:
在第一实施例中,第一存储区中只设有活动数据表,如果活动数据表中的一条报文统计数据在很长时间内都没有被更新,将该条报文统计数据从活动数据表中删除,本领域技术人员可以实际需求设置删除活动数据表中的报文统计数据的时间条件,这里不做赘述。
在第二实施例中,第一存储区中还设有非活动数据表,两者采用乒乓球机制,即按照预设的切换周期将活动数据表和非活动数据表进行切换,其中,在将非活动数据表切换为活动数据表时,清空表中的数据。例如,可以设置定时器,通过定时器实现活动数据表和非活动数据表的切换。当定时器计时到预设时间时,将原活动数据表切换为新非活动数据表,也就是配置成不能够执行写操作;同时,将原非活动数据表清空,然后配置成能够执行写操作,从而切换成新活动数据表;以及将定时器清零,重新开始计时。
第二实施例包括步骤S302-S312:
S302、从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
S304、将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据。
S306、如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值。
S308、如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据。
S310、如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
S312、扫描第二存储区中的报文统计数据,确定属于分布式拒绝服务攻击DDoS的报文的报文特征以进行DDoS防护。
步骤S302-S312的相关内容可以参照第一实施例的步骤S202-212,这里不再赘述。
可以看出,由于步骤S310,活动数据表切换为非活动数据表后,非活动数据表中的报文统计数据中的报文统计值均小于等于第一阈值。
第二实施例还包括:步骤S314,扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第二存储区中,其中,第二阈值小于第一阈值。
也就是说,在当前周期内,一方面,在接收到报文时利用活动数据表实时更新报文统计数据以及利用第一阈值实时过滤报文统计数据,另一方面,对静态的非活动数据表(前一个周期的活动数据表)进行扫描,利用第二阈值过滤非活动数据表中的报文统计数据。
通过这种方式,第二存储区中存储的报文统计数据包括:从活动数据表处获取的报文统计值大于第一阈值的报文统计数据和从非活动数据表处获取的报文统计值小于等于第一阈值并且大于第二阈值的报文统计数据。
在第二实施例中,在向第二存储区写入报文统计数据时,为报文统计数据打上时间戳。
在步骤S312中,如果扫描到的报文统计数据的报文统计值大于第一阈值,将该条报文统计数据对应的报文特征确定为DDoS攻击报文的特征。
在步骤S312中,如果在扫描到某条报文统计数据之后,又扫描到与该条报文统计数据具有相同索引的另一条报文统计数据,并且这两条报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为DDoS攻击报文的特征。这可以理解为,如果在连续的两个切换周期内,从非活动数据表向第二存储区移动的两条报文统计数据具有同样的索引,则将该相同的索引所含有的报文特征确定为DDoS攻击报文的特征。也就是说,如果扫描到一条报文统计数据的报文统计值小于等于第一阈值并且大于第二阈值,需要继续观察等待下一个周期的非活动数据表的过滤结果,如果在下一周期内从非活动数据表向第二存储区中移动了相同索引的报文统计数据,则将该相同索引的报文特征确定为DDoS攻击报文的报文特征。例如,在第n个周期和第n+1个周期,分别从非活动数据表向第二存储区移动了索引为B的报文统计数据,将索引B中包含的报文特征确定为DDoS攻击报文的特征,n为正整数。
在步骤S312中,扫描第二存储区中的报文统计数据,因为第二存储区中的数据只包括经过步骤S310和S314筛选出的数据,第二存储区中的数据量比较小,在很短的时间内就能够对第二存储区完成一次扫描,能够快速、及时地检测出是否发生了DDoS攻击。
本说明书实施例提供的网络安全防护方法,通过设置活动数据表和非活动数据表,能够设置多层次的过滤条件,从而尽量避免漏报。
本说明书实施例提供的网络安全防护方法,通过乒乓球机制的活动数据表和非活动数据表,能够在限定时间内处理更多的报文统计数据并且降低处理冲突,提高了系统吞吐量。
本说明书实施例提供的网络安全防护方法,能够在高带宽场景下保证处理性能和DDoS防护的及时性。
<第三实施例>
在第三实施例中,预先规划有第一存储区、第二存储区和第三存储区。在第一存储区中存储有活动数据表和非活动数据表,活动数据表能够被读取、删除和写入,非活动数据表能够被读取和删除,但是不能够被写入。
第三实施例对于活动数据表的处理过程可以参见第一实施例。第三实施例和第一实施例的不同之处在于:
在第一实施例中,第一存储区中只设有活动数据表,如果活动数据表中的一条报文统计数据在很长时间内都没有被更新,将该条报文统计数据从活动数据表中删除,本领域技术人员可以实际需求设置删除活动数据表中的报文统计数据的时间条件,这里不做赘述。
在第三实施例中,第一存储区中还设有非活动数据表,两者采用乒乓球机制,即按照预设的切换周期将活动数据表和非活动数据表进行切换,其中,在将非活动数据表切换为活动数据表时,清空表中的数据。例如,可以设置定时器,通过定时器实现活动数据表和非活动数据表的切换。当定时器计时到预设时间时,将原活动数据表切换为新非活动数据表,也就是配置成不能够执行写操作;同时,将原非活动数据表清空,然后配置成能够执行写操作,从而切换成新活动数据表;以及将定时器清零,重新开始计时。
第三实施例包括步骤S402-S412:
S402、从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
S404、将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据。
S406、如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值。
S408、如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据。
S410、如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
S412、扫描第二存储区中的报文统计数据,确定属于分布式拒绝服务攻击DDoS的报文的报文特征以进行DDoS防护。
步骤S402-S412的相关内容可以参照第一实施例的步骤S202-212,这里不再赘述。
可以看出,由于步骤S410,活动数据表切换为非活动数据表后,非活动数据表中的报文统计数据中的报文统计值均小于等于第一阈值。
第三实施例还包括:步骤S414,扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第三存储区中,其中,第二阈值小于第一阈值。
也就是说,在当前周期内,一方面,在接收到报文时利用活动数据表实时更新报文统计数据以及利用第一阈值实时过滤报文统计数据,将从活动数据表中筛选出的报文统计数据实时存储到第二存储区中;另一方面,对静态的非活动数据表(前一个周期的活动数据表)进行扫描,利用第二阈值过滤非活动数据表中的报文统计数据,将从非活动数据表中筛选出的报文统计数据存储到第三存储区中。
通过这种方式,第二存储区中存储的报文统计数据包括:从活动数据表处获取的报文统计值大于第一阈值的报文统计数据。第三存储区中存储的报文统计数据包括:从非活动数据表处获取的报文统计值小于等于第一阈值并且大于第二阈值的报文统计数据。
在第三实施例中,在向第三存储区写入报文统计数据时,为报文统计数据打上时间戳。
第三实施例还包括:步骤S416,扫描第三存储区中的报文统计数据,确定属于分布式拒绝服务攻击DDoS的报文的报文特征以进行DDoS防护。
对于步骤S412,可以不进行判断,将在第二存储区中扫描到的报文统计数据对应的报文特征直接确定为DDoS攻击报文的特征。由于不进行判断,可以进一步提高处理速度,加快响应速度。
对于步骤S416,如果在扫描到某条报文统计数据之后,又扫描到与该条报文统计数据具有相同索引的另一条报文统计数据,并且这两条报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为DDoS攻击报文的特征。这可以理解为,如果在连续的两个切换周期内,从非活动数据表向第三存储区移动的两条报文统计数据具有同样的索引,则将该相同的索引所含有的报文特征确定为DDoS攻击报文的特征。也就是说,如果扫描到一条报文统计数据的报文统计值小于等于第一阈值并且大于第二阈值,需要继续观察等待下一个周期的非活动数据表的过滤结果,如果在下一周期内从非活动数据表向第三存储区中移动了相同索引的报文统计数据,则将该相同索引的报文特征确定为DDoS攻击报文的报文特征。例如,在第n个周期和第n+1个周期,分别从非活动数据表向第二存储区移动了索引为B的报文统计数据,将索引B中包含的报文特征确定为DDoS攻击报文的特征,n为正整数。
在步骤S412中,扫描第二存储区中的报文统计数据,因为第二存储区中的数据只包括经过步骤S410筛选出的数据,第二存储区中的数据量比较小,在很短的时间内就能够对第二存储区完成一次扫描,能够快速、及时地检测出是否发生了DDoS攻击。
在步骤S416中,扫描第三存储区中的报文统计数据,因为第三存储区中的数据只包括经过步骤S414筛选出的数据,第三存储区中的数据量比较小,在很短的时间内就能够对第三存储区完成一次扫描,能够快速、及时地检测出是否发生了DDoS攻击。
在一个实时例中,将第三存储区中的扫描过的报文统计数据清除。在另一个实施例中,第三存储区采用环形队列存储机制,环形队列存储机制也就是遵循先进先出原则的循环缓冲存储机制,具有一个读指针和一个写指针,通过移动读指针和写指针就可以实现同时对第三存储区的数据读取(扫描)和写入,当第三存储区存满时,第三存储区中最先被存入报文统计数据将被清除。
本说明书实施例提供的网络安全防护方法,通过设置活动数据表和非活动数据表,能够设置多层次的过滤条件,从而避免漏报。
本说明书实施例提供的网络安全防护方法,通过乒乓球机制的活动数据表和非活动数据表,能够在限定时间内处理更多的报文统计数据并且降低处理冲突,提高了系统吞吐量。
本说明书实施例提供的网络安全防护方法,能够在高带宽场景下保证处理性能和DDoS防护的及时性。
本发明第一至第三实施例提供的网络安全防护方法,适用于对分布式拒绝服务攻击进行防护,但是本发明实施例不限定于此,本发明实施例的网络安全防护方法也可以适用于防护其他类型的基于报文的网络攻击。本发明实施例提供的网络安全防护方法,可以基于不同的防护场景和防护高度需求,设置不同的阈值。
<网络安全防护装置>
<第一实施例>
参见图2所示,本发明实施例提供了一种网络安全防护装置10。网络安全防护装置10包括以下模块:
特征提取模块11,用于从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
活动数据表管理模块12,用于:将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据;如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
防护模块13,用于扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。其中,活动数据表存储在第一存储区中并且允许写入操作。报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率。
可选地,报文特征包括源地址或者目的地址中的至少一个。可选地,报文特征还包括报文的协议类型。
可选地,特征提取模块11根据提取出的报文特征确定第一报文的索引,包括:根据提取出的报文特征计算哈希值;第一报文的索引还包含计算出的哈希值。
可选地,活动数据表管理模块12在活动数据表中查找与目标索引对应的报文统计数据,包括:将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。
可选地,所述网络攻击为分布式拒绝服务攻击。
本发明实施例提供的网络安全防护装置,在第一存储区中预先过滤掉小流量的报文的统计数据,第二存储区中只存储大流量的报文的统计数据,在很短的时间内就能够对第二存储区完成一次扫描,能够快速、及时地检测出是否发生了网络攻击,降低对业务的影响。
本说明书实施例提供的网络安全防护装置,能够在高带宽场景下保证处理性能和网络攻击防护的及时性。
<第二实施例>
参见图3所示,本发明实施例提供了一种网络安全防护装置20。网络安全防护装置20包括以下模块:
特征提取模块21,用于从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
活动数据表管理模块22,用于:将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据;如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
非活动数据表管理模块23,用于扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第二存储区中,第二阈值小于第一阈值。
切换模块24,用于按照预设的切换周期将活动数据表和非活动数据表进行切换;在将非活动数据表切换为活动数据表时,清空表中的内容。
防护模块25,用于扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
其中,活动数据表和非活动数据表存储在第一存储区中,活动数据表允许写入操作,非活动数据表禁止写操作。报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率。
可选地,报文特征包括源地址或者目的地址中的至少一个。可选地,报文特征还包括报文的协议类型。
可选地,特征提取模块21根据提取出的报文特征确定第一报文的索引,包括:根据提取出的报文特征计算哈希值;第一报文的索引还包含计算出的哈希值。
可选地,活动数据表管理模块22在活动数据表中查找与目标索引对应的报文统计数据,包括:将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。
活动数据表管理模块22,还用于在向第二存储区写入报文统计数据时,为报文统计数据打上时间戳。
非活动数据表管理模块23,还用于在向第二存储区写入报文统计数据时,为报文统计数据打上时间戳。
防护模块25扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护,包括:将扫描到的大于第一阈值的报文统计值所对应的报文特征确定为属于网络攻击的报文的报文特征;以及,如果在扫描到第一报文统计数据之后,扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
可选地,所述网络攻击为分布式拒绝服务攻击。
本说明书实施例提供的网络安全防护装置,通过设置活动数据表和非活动数据表,能够设置多层次的过滤条件,从而避免漏报。
本说明书实施例提供的网络安全防护装置,通过乒乓球机制的活动数据表和非活动数据表,能够在限定时间内处理更多的报文统计数据并且降低处理冲突,提高了系统吞吐量。
本说明书实施例提供的网络安全防护装置,能够在高带宽场景下保证处理性能和网络攻击防护的及时性。
<第三实施例>
参见图4所示,本发明实施例提供了一种网络安全防护装置30。网络安全防护装置30包括以下模块:
特征提取模块31,用于从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征。
活动数据表管理模块32,用于:将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据;如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中。
非活动数据表管理模块33,用于扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第三存储区中,第二阈值小于第一阈值。
切换模块34,用于按照预设的切换周期将活动数据表和非活动数据表进行切换;在将非活动数据表切换为活动数据表时,清空表中的内容。
第一防护模块35,用于扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
第二防护模块36,用于扫描第三存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护。
其中,活动数据表和非活动数据表存储在第一存储区中,活动数据表允许写入操作,非活动数据表禁止写操作。报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率。
可选地,报文特征包括源地址或者目的地址中的至少一个。可选地,报文特征还包括报文的协议类型。
可选地,特征提取模块31根据提取出的报文特征确定第一报文的索引,包括:根据提取出的报文特征计算哈希值;第一报文的索引还包含计算出的哈希值。
可选地,活动数据表管理模块32在活动数据表中查找与目标索引对应的报文统计数据,包括:将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。
非活动数据表管理模块33,还用于在向第三存储区写入报文统计数据时,为报文统计数据打上时间戳。
第一防护模块35扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征,包括:将扫描到的报文统计数据所对应的报文特征确定为属于网络攻击的报文的报文特征。
第二防护模块36扫描第三存储区中的报文统计数据,确定属于网络攻击的报文的报文特征,包括:如果在扫描到第一报文统计数据之后,扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
可选地,所述网络攻击为分布式拒绝服务攻击。
本说明书实施例提供的网络安全防护装置,通过设置活动数据表和非活动数据表,能够设置多层次的过滤条件,从而避免漏报。
本说明书实施例提供的网络安全防护装置,通过乒乓球机制的活动数据表和非活动数据表,能够在限定时间内处理更多的报文统计数据并且降低处理冲突,提高了系统吞吐量。
本说明书实施例提供的网络安全防护装置,能够在高带宽场景下保证处理性能和网络攻击防护的及时性。
<第四实施例>
参见图5所示,本发明实施例提供了一种网络安全防护装置40。网络安全防护装置40包括处理器41和存储器42,存储器42中存储有计算机指令,计算机指令被处理器41执行时实现前述任一项实施例的网络安全防护方法。
安全防护装置例如是专用于网络安全防护的服务器,其配置可以包括但不限于:处理器、存储器、接口装置、通信装置、输入装置。处理器可以包括但不限于中央处理器CPU、微处理器MCU等。存储器可以包括但不限于ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置可以包括但不限于USB接口、串行接口、并行接口等。通信装置例如能够进行有线通信或无线通信,具体地可以包括WiFi通信、蓝牙通信、2G/3G/4G/5G通信等。输入装置包括但不限于键盘、鼠标、触摸屏等。服务器的配置也可以仅包括上述装置中的部分装置,或者包括其它的更多装置。
本领域技术人员可以根据本说明书实施例所公开的方案设计计算机指令。计算机指令如何控制处理器进行操作,是本领域公知技术,故在此不再详细描述。
<计算机可读介质>
本说明书实施例还提供了一种计算机可读介质,其上存储有计算机程序,当计算机程序被处理器执行时实现前述任一项实施例的网络安全防护方法。
本发明实施例还提供了一种网络安全防护芯片,包括处理器和存储器;所述存储器中存储有计算机指令,所述计算机指令被所述处理器执行时实现前述任一实施例的网络安全防护方法。也就是说,将用于执行前述任一实施例的网络安全防护方法的计算机程序指令固化到芯片中,以可安装/卸载的网络安全防护芯片的形式提供给用户。本发明实施例中提供的网络安全防护芯片,将网络安全防护方案以硬件产品的形式提供给用户,更加容易实现高防护效率和高防护效果。
本发明实施例中,可以将网络安全防护芯片安装到其安全防护系统中,例如安装到安全服务器中,以实现相关的网络安全防护功能。本发明实施例还提供一种网络安全防护系统,包括安装了前述网络安全防护芯片的安全服务器。
本发明实施例中,提供一种数据中心专用的安全服务器,安装有前述安全防护芯片。数据中心是向用户提供专业性和标准化的数据存放业务和相关服务的中心,数据中心通常具有大流量高并发的特点,并且需要高响应速度和高安全性,一旦宕机就会导致用户业务中断,造成巨大损失。本发明实施例中提供的数据中心专用的安全服务器,能够实现对数据中心的高防护保证,从而降低数据中心的宕机风险。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书的实施例可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本说明书实施例的各个方面的计算机可读程序计算机指令。
计算机可读存储介质可以是可以保持和存储由计算机指令执行设备使用的计算机指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有计算机指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序计算机指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序计算机指令,并转发该计算机可读程序计算机指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本说明书的实施例操作的计算机程序计算机指令可以是汇编计算机指令、计算机指令集架构(ISA)计算机指令、机器计算机指令、机器相关计算机指令、微代码、固件计算机指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序计算机指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序计算机指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序计算机指令,从而实现本说明书实施例的各个方面。
这里参照根据本说明书实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本说明书实施例的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序计算机指令实现。
这些计算机可读程序计算机指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序计算机指令存储在计算机可读存储介质中,这些计算机指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有计算机指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的计算机指令。
也可以把计算机可读程序计算机指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的计算机指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本说明书的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或计算机指令的一部分,模块、程序段或计算机指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行计算机指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方
式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本说明书的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (16)
1.一种网络安全防护方法,包括以下步骤:
从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征;
将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;其中,活动数据表存储在第一存储区中并且允许写入操作,报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率;
如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;
如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中;
扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护;
第一存储区中还存储有非活动数据表,非活动数据表禁止写入操作;按照预设的切换周期将活动数据表和非活动数据表进行切换;在将非活动数据表切换为活动数据表时,清空表中的内容;
扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第二存储区或者第三存储区中并打上时间戳,第二阈值小于第一阈值;
将在第二存储区中扫描到的大于第一阈值的报文统计值所对应的报文特征确定为属于网络攻击的报文的报文特征;
如果在第二存储区或者第三存储区中扫描到第一报文统计数据之后,在第二存储区或者第三存储区中又扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
2.根据权利要求1所述的方法,还包括:如果在活动数据表中没有查找到与目标索引对应的报文统计数据,根据第一报文在活动数据表中创建与目标索引对应的报文统计数据。
3.根据权利要求1所述的方法,报文特征包括源地址或者目的地址中的至少一个。
4.根据权利要求1所述的方法,报文特征还包括报文的协议类型。
5.根据权利要求1所述的方法,根据提取出的报文特征确定第一报文的索引,包括:
根据提取出的报文特征计算哈希值;
第一报文的索引还包含计算出的哈希值。
6.根据权利要求5所述的方法,在活动数据表中查找与目标索引对应的报文统计数据,包括:
将目标索引包含的哈希值作为目标哈希值,在活动数据表中查找与目标哈希值对应的报文统计数据,将与目标哈希值对应的报文统计数据作为候选报文统计数据;
将目标索引包含的报文特征作为目标报文特征,在候选报文统计数据中查找与目标报文特征对应的报文统计数据。
7.根据权利要求1-6任一项所述的方法,第二存储区采用环形队列存储机制。
8.根据权利要求1-6任一项所述的方法,第三存储区采用环形队列存储机制。
9.根据权利要求1所述的方法,所述网络攻击为分布式拒绝服务攻击。
10.一种网络安全防护装置,包括以下模块:
特征提取模块,用于从接收到的第一报文中提取报文特征,根据提取出的报文特征确定第一报文的索引,第一报文的索引中包含提取出的报文特征;
活动数据表管理模块,用于将第一报文的索引作为目标索引,在活动数据表中查找与目标索引对应的报文统计数据;其中,活动数据表存储在第一存储区中并且允许写入操作,报文统计数据包括报文的索引和与报文的索引对应的报文统计值,报文统计值为比特率或者数据包率;如果在活动数据表中查找到与目标索引对应的报文统计数据,根据接收到第一报文的时间和第一报文在活动数据表中更新与目标索引对应的报文统计值;如果更新后的报文统计值大于预设的第一阈值,将更新后的报文统计值所对应的报文统计数据从活动数据表中移动到第二存储区中;
非活动数据表管理模块,用于扫描非活动数据表中的报文统计值,将大于预设的第二阈值的报文统计值所对应的报文统计数据从非活动数据表中移动到第二存储区或者第三存储区中并打上时间戳,第二阈值小于第一阈值;其中,非活动数据表存储在第一存储区中并且禁止写入操作;
切换模块,用于按照预设的切换周期将活动数据表和非活动数据表进行切换;在将非活动数据表切换为活动数据表时,清空表中的内容;
防护模块,用于扫描第二存储区中的报文统计数据,确定属于网络攻击的报文的报文特征以进行防护;将在第二存储区中扫描到的大于第一阈值的报文统计值所对应的报文特征确定为属于网络攻击的报文的报文特征;如果在第二存储区或者第三存储区中扫描到第一报文统计数据之后,在第二存储区或者第三存储区中又扫描到与第一报文统计数据具有相同索引的第二报文统计数据,并且第一报文统计数据的时间戳和第二报文统计数据的时间戳之间的时间间隔小于等于两个切换周期的总时长,将该相同索引所含有的报文特征确定为属于网络攻击的报文的报文特征。
11.根据权利要求10所述的装置,所述网络攻击为分布式拒绝服务攻击。
12.一种网络安全防护装置,包括处理器和存储器;所述存储器中存储有计算机指令,所述计算机指令被所述处理器执行时实现权利要求1-9任一项所述的网络安全防护方法。
13.一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现权利要求1-9任一项所述的网络安全防护方法。
14.一种网络安全防护芯片,其特征在于,包括处理器和存储器;所述存储器中存储有计算机指令,所述计算机指令被所述处理器执行时实现权利要求1-9任一项所述的网络安全防护方法。
15.一种安全服务器,其特征在于,安装有权利要求14所述的网络安全防护芯片。
16.一种网络安全防护系统,其特征在于,包括权利要求15所述的安全服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010144209.0A CN113364722B (zh) | 2020-03-04 | 2020-03-04 | 网络安全防护方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010144209.0A CN113364722B (zh) | 2020-03-04 | 2020-03-04 | 网络安全防护方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113364722A CN113364722A (zh) | 2021-09-07 |
CN113364722B true CN113364722B (zh) | 2023-04-25 |
Family
ID=77523717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010144209.0A Active CN113364722B (zh) | 2020-03-04 | 2020-03-04 | 网络安全防护方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113364722B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124744B (zh) * | 2021-11-24 | 2023-06-02 | 绿盟科技集团股份有限公司 | 一种流量数据展示方法、装置、电子设备及存储介质 |
CN117076094B (zh) * | 2023-10-16 | 2024-01-16 | 中国船舶集团有限公司第七〇七研究所 | 一种密码运算多任务并发处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016101870A1 (zh) * | 2014-12-26 | 2016-06-30 | 中兴通讯股份有限公司 | 网络攻击分析方法和装置 |
CN105939339A (zh) * | 2016-03-22 | 2016-09-14 | 杭州迪普科技有限公司 | 攻击协议报文流的防护方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8079083B1 (en) * | 2005-09-02 | 2011-12-13 | Symantec Corporation | Method and system for recording network traffic and predicting potential security events |
JP2011166270A (ja) * | 2010-02-05 | 2011-08-25 | Nec Corp | トラフィック集計装置、トラフィック集計方法及びトラフィック集計プログラム |
CN106330579B (zh) * | 2015-06-15 | 2020-04-28 | 中兴通讯股份有限公司 | 一种用于ptn设备的丢包统计方法及装置 |
CN106330849A (zh) * | 2015-07-07 | 2017-01-11 | 安恒通(北京)科技有限公司 | 防止域名劫持的方法和装置 |
CN107547548B (zh) * | 2017-09-05 | 2020-06-30 | 北京京东尚科信息技术有限公司 | 数据处理方法及系统 |
-
2020
- 2020-03-04 CN CN202010144209.0A patent/CN113364722B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016101870A1 (zh) * | 2014-12-26 | 2016-06-30 | 中兴通讯股份有限公司 | 网络攻击分析方法和装置 |
CN105939339A (zh) * | 2016-03-22 | 2016-09-14 | 杭州迪普科技有限公司 | 攻击协议报文流的防护方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113364722A (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109831461B (zh) | 一种分布式拒绝服务DDoS攻击防御方法及装置 | |
JP6201614B2 (ja) | ログ分析装置、方法およびプログラム | |
US9641545B2 (en) | Methods, systems, and computer program products for detecting communication anomalies in a network based on overlap between sets of users communicating with entities in the network | |
US20080104702A1 (en) | Network-based internet worm detection apparatus and method using vulnerability analysis and attack modeling | |
CN107360118B (zh) | 一种高级持续威胁攻击防护方法及装置 | |
CN113364722B (zh) | 网络安全防护方法和装置 | |
CN110650117B (zh) | 跨站攻击防护方法、装置、设备及存储介质 | |
KR20140027616A (ko) | 웹 트랜잭션 밀집도 기반 에이치티티피 봇넷 탐지 장치 및 방법 | |
US10440035B2 (en) | Identifying malicious communication channels in network traffic by generating data based on adaptive sampling | |
JP5739034B1 (ja) | 攻撃検知システム、攻撃検知装置、攻撃検知方法および攻撃検知プログラム | |
JP7049087B2 (ja) | 疑わしい電子メッセージを検出する技術 | |
US20150312269A1 (en) | Methods and apparatus to identify an internet protocol address blacklist boundary | |
WO2016121348A1 (ja) | マルウェア対策装置、マルウェア対策システム、マルウェア対策方法、及び、マルウェア対策プログラムが格納された記録媒体 | |
JP2015222471A (ja) | 悪性通信パターン検知装置、悪性通信パターン検知方法、および、悪性通信パターン検知プログラム | |
CN112671759A (zh) | 基于多维度分析的dns隧道检测方法和装置 | |
CN111859374B (zh) | 社会工程学攻击事件的检测方法、装置以及系统 | |
CN106911665B (zh) | 一种识别恶意代码弱口令入侵行为的方法及系统 | |
KR20140044970A (ko) | 접근 제어 목록을 이용한 공격 차단 제어 방법 및 그 장치 | |
CN114003904B (zh) | 情报共享方法、装置、计算机设备及存储介质 | |
CN108712365B (zh) | 一种基于流量日志的DDoS攻击事件检测方法及系统 | |
CN112559595A (zh) | 安全事件挖掘方法、装置、存储介质及电子设备 | |
CN115017502A (zh) | 一种流量处理方法、及防护系统 | |
Boggs et al. | Discovery of emergent malicious campaigns in cellular networks | |
CN109600361B (zh) | 基于哈希算法的验证码防攻击方法、装置、电子设备及非暂态计算机可读存储介质 | |
JP2005011234A (ja) | 不正アクセス検出装置、不正アクセス検出方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40059837 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |