CN111756713A - 网络攻击识别方法、装置、计算机设备及介质 - Google Patents
网络攻击识别方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN111756713A CN111756713A CN202010540684.XA CN202010540684A CN111756713A CN 111756713 A CN111756713 A CN 111756713A CN 202010540684 A CN202010540684 A CN 202010540684A CN 111756713 A CN111756713 A CN 111756713A
- Authority
- CN
- China
- Prior art keywords
- tcp connection
- data packet
- current
- connection request
- record
- 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
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/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
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种网络攻击识别方法、装置、计算机设备及介质,所述方法包括:根据监测到的多个TCP连接数据包生成连接请求记录表之后,获取当前时间戳,并根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址,并根据目标地址的半连接总数,识别网络攻击,从而该方法能够在网络环境下根据目标地址的半连接总数准确的识别出网络攻击,大大提高服务器的安全性。
Description
技术领域
本申请涉及网络安全技术领域,尤其涉及一种网络攻击识别方法、装置、计算机设备及介质。
背景技术
随着因特网和其他互联网承载的通信量持续增长和变化,例如,当今网络带宽由1Gbps发展到10Gbps、40Gbps,甚至100Gbps。尽管网络带宽不断增加,但随之而来也产生了各式各样的网络攻击,占用了网络带宽,从而降低了网络的利用效率。在各种网络攻击中,SYN flood(洪水攻击)是基于TCP协议栈发起的攻击,据统计,SYN flood攻击的占比高达79%。
因此,如何在网络环境中准确的识别出SYN flood网络攻击迫在眉睫。
发明内容
本申请提出一种网络攻击识别方法,该方法能够在网络环境下,根据目标地址的半连接总数准确的识别出网络攻击,大大提高服务器的安全性。
本申请第一方面实施例提出了一种网络攻击识别方法,所述方法包括:根据监测到的多个TCP(Transmission Control Protocol,传输控制协议)连接数据包,生成连接请求记录表,其中,所述连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至所述目的地址的首个TCP连接数据包所携带的起始时间戳;获取当前时间戳;根据所述当前时间戳,查询所述连接请求记录表,以从所述连接请求记录表记录的目的地址中,识别出所述起始时间戳与所述当前时间戳之差大于设定阈值时长的目标地址;根据所述目标地址的半连接总数,识别网络攻击。
根据本申请实施例的网络攻击识别方法,根据监测到的多个TCP连接数据包,生成连接请求记录表之后,获取当前时间戳,并根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址,并根据目标地址的半连接总数,识别网络攻击,从而该方法能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
本申请第二方面实施例提出了一种网络攻击识别装置,所述装置包括:生成模块,用于根据监测到的多个TCP连接数据包,生成连接请求记录表,其中,所述连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至所述目的地址的首个TCP连接数据包所携带的起始时间戳;获取模块,用于获取当前时间戳;查询模块,用于根据所述当前时间戳,查询所述连接请求记录表,以从所述连接请求记录表记录的目的地址中,识别出所述起始时间戳与所述当前时间戳之差大于设定阈值时长的目标地址;识别模块,用于根据所述目标地址的半连接总数,识别网络攻击。
根据本申请实施例的网络攻击识别装置,通过生成模块根据监测到的多个TCP连接数据包生成连接请求记录表之后,通过获取模块获取当前时间戳,并通过查询模块根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址,以便识别模块根据目标地址的半连接总数,识别网络攻击,从而该装置能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
本申请第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述的网络攻击识别方法。
本申请实施例的计算机设备,通过实现上述的网络攻击识别方法,从而能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的网络攻击识别方法。
本申请实施例的非临时性计算机可读存储介质,通过执行上述的网络攻击识别方法,从而能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本申请一个实施例的客户端与服务器之间三次握手的示意图;
图2是根据本申请一个实施例的攻击者向服务器发送大量SYN报文请求的示意图;
图3是根据本申请实施例的网络攻击识别方法的流程图;
图4是根据本申请一个具体实施例的网络攻击识别方法的流程图;
图5是根据本申请实施例的网络攻击识别装置的流程图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的网络攻击识别方法、装置、计算机设备及介质。
需要说明的是,TCP是主机对主机层的传输控制协议,能够提供可靠的连接服务。如图1所示,客户端和服务器在传输数据前,先在双方之间建立一条接通通道,即TCP三次握手。
其中,第一次握手:客户端向服务器发送一个SYN(Synchronize,请求)报文,指明想要建立连接的服务器端口,以及序列号;第二次握手:服务器在接收到客户端的SYN报文后,将返回一个SYN-ACK(Acknowledge,应答)报文,表示客户端的请求被接收,同时在SYN-ACK报文中将确认号设置为客户端的序列号加一;第三次握手:客户端接收到服务器的SYN-ACK报文,向服务器发送ACK报文进行确认,ACK报文发送完毕,三次握手建立成功。
而SYN flood攻击正是利用了TCP三次握手的这种机制。如图2所示,攻击者向服务器发送大量的SYN报文请求(该报文一般为源IP地址不存在或不可达),当服务器回应SYN-ACK报文时,不再继续回应ACK报文,导致服务器上建立大量的半连接,直至老化。这样,服务器的资源会被这些半连接耗尽,导致服务器无法处理正常的连接请求。
为解决上述问题,本申请提出了一种能够在网络环境下,根据目标地址的半连接总数准确的识别出网络攻击的网络攻击识别方法,进而大大提高服务器的安全性。
图3是根据本申请实施例的网络攻击识别方法的流程图。如图3所示,本申请实施例的网络攻击识别方法,包括:
S1,根据监测到的多个TCP连接数据包,生成连接请求记录表,其中,连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至目的地址的首个TCP连接数据包所携带的起始时间戳。
本实施例中,执行步骤S1的过程例如可以为:每当监测到一个TCP连接数据包,查询当前TCP连接数据包携带的TCP标志位;若TCP标志位中设置为有效的字段用于指示开始会话,则根据当前TCP连接数据包中携带的目的地址,在连接请求记录表中创建对应的第一记录,其中,在第一记录中,半连接总数设定为初始值;若TCP标志位中设置为有效的字段用于指示应答,则获取当前TCP连接数据包中携带的目的地址所对应的第二记录,以根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数。
需要说明的是,TCP标志位和其对应的意义如下所示:FIN表示结束会话;SYN表示开始会话请求;RST表示中断一个连接;PUSH表示数据包立即发送;ACK表示应答;URG表示紧急;ECE表示显示拥塞提醒回应;CWR表示拥塞窗口减少。
在本实施例中,第二记录还包括会话跟踪项,用于指示五元组信息和序列号。对应的,根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数的过程具体可以为:将当前TCP连接数据包中携带的五元组信息作为搜索条件,搜索第二记录中的会话跟踪项,以得到五元组信息匹配的会话跟踪项;将五元组信息匹配的会话跟踪项中的序列号作为参考序列号;当前TCP连接数据包中携带的序列号大于参考序列号,且当前TCP连接数据包中携带的序列号与参考序列号相邻,则将第二记录中半连接总数减一。
需要说明的是,五元组通常是指源IP地址、源端口、目的IP地址、目的端口和传输层协议,例如,192.168.1.1 10000TCP 121.14.88.76 80就构成了一个五元组,其意义是,一个IP地址为192.168.1.1的终端通过源端口10000,利用TCP协议,和IP地址为121.14.88.76,目的端口为80的终端进行连接。五元组能够区分不同会话,并且对应的会话是唯一的。
具体地说,对于TCP连接数据包,检测其TCP标志位是否是SYN(开始会话请求)或者ACK(应答)。当TCP连接数据包的TCP标志位是SYN或者ACK时,对于SYN或者ACK数据包,从连接请求记录表中查找该数据包的目的地址是否已经存在,即判断该服务器是否已经创建有连接请求记录。
第一种情况下,如果该TCP连接数据包的TCP标志位是SYN,那么获取当前TCP连接数据包中携带的目的地址,并根据该地址在连接请求记录中创建对应的第一记录。进而,根据一个TCP连接数据包中携带的五元组信息和序列号,生成第一记录中的会话跟踪项。
也就是说,当TCP连接数据包的TCP标志位是SYN时,在创建该请求(对应的第一记录),插入到连接请求记录表中的同时,还计算其五元组信息如哈希值。根据哈希值和序列号,生成第一记录中的会话跟踪项,并插入第一记录中的会话跟踪表中。
第二种情况下,如果该TCP连接数据包的TCP标志位是ACK,那么获取当前TCP连接数据包中携带的目的地址所对应的第二记录,从第二记录中的会话跟踪表中查找五元组信息匹配的会话跟踪项。判断TCP连接数据包中的序列号A与该会话跟踪项中的序列号B之差是否为1,如果是,则可确定该TCP连接数据包是TCP会话的三次握手数据包的第三个应答数据包(ACK数据包)。接收到该TCP数据包,则说明TCP会话的三次握手数据包的第三个应答数据包(ACK数据包)正常到达,因此将第二记录中的半连接总数request_count减一。
在本实施例中,根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表之后,还存在一种情况,即第三种情况。
在第三种情况下,查询到当前TCP连接数据包中携带的目的地址对应的第二记录,且当前TCP连接数据包携带的TCP标志位中设置为有效的字段未用于指示应答,则说明三次握手数据包的第三个应答数据包(ACK数据包)未到达,该TCP数据包是用于对该目标地址重复执行三次握手中前两次握手的步骤,可记为新增了一个半连接,从而在第二记录中将半连接总数加一。
具体地,在根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数之前,还根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表,若查询到对应的第二记录,且当前TCP连接数据包携带的TCP标志位中设置为有效的字段未用于指示应答,说明当前数据包是异常ACK包,本服务器又有一个新连接请求,因此,在第二记录中将半连接总数request_count加一。
S2,获取当前时间戳。
S3,根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址。
S4,根据目标地址的半连接总数,识别网络攻击。
在本实施例中,根据目标地址的半连接总数,识别网络攻击,包括:确定目标地址的半连接总数和设定阈值时长之间的比值;若比值大于比值阈值,则识别为存在半开式连接攻击;若比值小于或等于比值阈值,则识别为不存在半开式连接攻击。其中,设定阈值时长timeout和比值阈值均可根据实际情况进行设置,例如,设定阈值时长timeout可以为60s。
具体地,在根据监测到的多个TCP连接数据包,生成连接请求记录表之后,获取当前时间戳,根据连接请求记录表的创建时间,查看是否超时(起始时间戳与当前时间戳之差大于设定阈值时长),如果超时,那么计算本段时间内(起始时间戳至当前时间戳)的目标地址的半连接总数request_count和设定阈值时长timeout之间的比值pps,pps=request_count/timeout,计算出来的pps就表示为本服务器每秒的半连接个数,之后将pps与比值阈值进行比较,判断是否存在半开式连接攻击。其中,当pps小于或等于比值阈值时,认为不存在半开式连接攻击;当pps大于比值阈值时,说明本服务器正在遭受半开式连接攻击,需要立即告警,做进一步处理。
综上,根据本申请实施例的网络攻击识别方法,根据监测到的多个TCP连接数据包,生成连接请求记录表之后,获取当前时间戳,并根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址,并根据目标地址的半连接总数,识别网络攻击,从而该方法能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
基于上述实施例的基础上,为了保证创建第一记录的准确性,在连接请求记录表中创建对应的第一记录之前,还包括:根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表,以确定不存在对应记录。
基于上述实施例的基础上,为了保证更新第二记录的半连接总数的准确性,在根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数之前,还包括:根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表,以确定查询到对应的第二记录。
基于上述实施例的基础上,在根据监测到的多个TCP连接数据包,生成连接请求记录表之前,还包括:对监测到的TCP连接数据包缓存。
例如,可以先搭建DPDK的开发环境,并初始化DPDK环境;使用DPDK的收包接口rte_eth_rx_bursh接收报文,即从网卡接收报文;对于接收来的报文,做轻量级协议栈(如以太层、网络层、传输层)解析;并将解析后的报文缓存至DPDK提供的无锁环。
需要说明的是,DPDK(数据平面开发套件)是一个开源的数据平面开发工具集,是Intel为了解决Linux SMP环境下数据包处理性能问题而提供的一个用户空间下的高效数据包处理函数库和驱动集。
为使本领域的技术人员更清楚的了解本申请,如图3所示,该具体实施例的网络攻击识别方法包括:
S101,从环形队列取一个数据包。
S102,判断该数据包是否为IPv4且是TCP连接数据包,如果是,执行步骤S103;如果否,返回步骤S101。
需要说明的是,由于SYN flood是四层攻击,因此需要判断该数据包是否是TCP连接数据包。
S103,判断TCP标志位是否为SYN或者ACK,如果是,执行步骤S104;如果否,返回步骤S101。
S104,判断在连接请求记录表中是否查找到该目的IP地址,如果是,执行步骤S107;如果否,执行步骤S105。
S105,判断TCP的标志位是否为SYN,如果是,执行步骤S106;如果否,返回步骤S101。
S106,将该数据包插入连接请求记录表,同时将该数据包的哈希值存入会话跟踪表,记录目的IP地址的请求次数加一,记录本次报文的序列号为lastSeq。
S107,判断TCP的标志位是否为ACK,如果是,执行步骤S108;如果否,执行步骤S112。
S108,判断会话跟踪表中是否找到该数据包的哈希值,如果是,执行步骤S109;如果否,返回步骤S101。
S109,取出保存的序列号lastSeq。
S110,判断当前数据包的系列号是否等于lastSeq,如果是,执行步骤S111;如果否,返回步骤S101。
S111,该数据包的目的IP地址的请求次数减一。
S112,将目的IP地址的请求次数加一。
S113,判断是否到一个计算每秒请求次数周期了,如果是,执行步骤S114;如果否,返回步骤S101。
S114,计算目的IP地址每秒请求数PPS。PPS=request_count/timeout,其中,request_count为本段时间内的目标地址的半连接总数,timeout为设定阈值时长。
S115,判断PPS是否大于阈值,如果是,执行步骤S116;如果否,执行步骤S117。
S116,发生告警。
S117,会话跟踪表重置。
基于同一发明构思,本申请实施例还提供了与上述实施例中方法对应的装置。
图5是根据本申请公开的实施例的网络攻击识别装置的方框示意图。如图5所示,本实施例的网络攻击识别装置100,包括:生成模块10、获取模块20、查询模块30和识别模块40。
其中,生成模块10用于根据监测到的多个TCP连接数据包,生成连接请求记录表,其中,连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至目的地址的首个TCP连接数据包所携带的起始时间戳。获取模块20用于获取当前时间戳。查询模块30用于根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址。识别模块40用于根据目标地址的半连接总数,识别网络攻击。
根据本申请的一个实施例,生成模块10具体用于:每当监测到一个TCP连接数据包,查询当前TCP连接数据包携带的TCP标志位;若TCP标志位中设置为有效的字段用于指示开始会话,则根据当前TCP连接数据包中携带的目的地址,在连接请求记录表中创建对应的第一记录,其中,在第一记录中,半连接总数设定为初始值;若TCP标志位中设置为有效的字段用于指示应答,则获取当前TCP连接数据包中携带的目的地址所对应的第二记录,以根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数。
根据本申请的一个实施例,第二记录还包括会话跟踪项,用于指示五元组信息和序列号;对应的,生成模块10根据当前TCP连接数据包中携带的序列号,更新第二记录中的半连接总数时,包括:将当前TCP连接数据包中携带的五元组信息作为搜索条件,搜索第二记录中的会话跟踪项,以得到五元组信息匹配的会话跟踪项;将五元组信息匹配的会话跟踪项中的序列号作为参考序列号;当前TCP连接数据包中携带的序列号大于参考序列号,且当前TCP连接数据包中携带的序列号与参考序列号相邻,则将第二记录中半连接总数减一。
根据本申请的一个实施例,生成模块10在连接请求记录表中创建对应的第一记录之后,还用于:根据一个TCP连接数据包中携带的五元组信息和序列号,生成第一记录中的会话跟踪项。
根据本申请的一个实施例,生成模块10在连接请求记录表中创建对应的第一记录之前,还用于:根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表,以确定不存在对应记录。
根据本申请的一个实施例,生成模块10根据当前TCP连接数据包中携带的序列号,更新第二记录的半连接总数之前,还用于:根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表,以确定查询到对应的第二记录。
根据本申请的一个实施例,生成模块10根据当前TCP连接数据包中携带的目的地址,查询连接请求记录表之后,还用于:若查询到对应的第二记录,且当前TCP连接数据包携带的TCP标志位中设置为有效的字段未用于指示应答,则在第二记录中将半连接总数加一。
根据本申请的一个实施例,识别模块40具体用于:确定目标地址的半连接总数和设定阈值时长之间的比值;若比值大于比值阈值,则识别为存在半开式连接攻击;若比值小于或等于比值阈值,则识别为不存在半开式连接攻击。
根据本申请的一个实施例,生成模块10在根据监测到的多个TCP连接数据包,生成连接请求记录表之前,还用于:对监测到的TCP连接数据包缓存。
应当理解的是,上述装置用于执行上述实施例中的方法,装置中相应的程序模块,其实现原理和技术效果与上述方法中的描述类似,该装置的工作过程可参考上述方法中的对应过程,此处不再赘述。
根据本申请实施例的网络攻击识别装置,通过生成模块根据监测到的多个TCP连接数据包生成连接请求记录表之后,通过获取模块获取当前时间戳,并通过查询模块根据当前时间戳,查询连接请求记录表,以从连接请求记录表记录的目的地址中,识别出起始时间戳与当前时间戳之差大于设定阈值时长的目标地址,以便识别模块根据目标地址的半连接总数,识别网络攻击,从而该装置能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
为了实现上述实施例,本申请还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述的网络攻击识别方法。
本申请实施例的计算机设备,通过实现上述的网络攻击识别方法,从而能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
为了实现上述实施例,本申请还提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的网络攻击识别方法。
本申请实施例的非临时性计算机可读存储介质,通过执行上述的网络攻击识别方法,从而能够在网络环境下准确的识别出网络攻击,大大提高服务器的安全性。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (12)
1.一种网络攻击识别方法,其特征在于,所述方法包括:
根据监测到的多个TCP连接数据包,生成连接请求记录表,其中,所述连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至所述目的地址的首个TCP连接数据包所携带的起始时间戳;
获取当前时间戳;
根据所述当前时间戳,查询所述连接请求记录表,以从所述连接请求记录表记录的目的地址中,识别出所述起始时间戳与所述当前时间戳之差大于设定阈值时长的目标地址;
根据所述目标地址的半连接总数,识别网络攻击。
2.根据权利要求1所述的网络攻击识别方法,其特征在于,所述根据监测到的多个TCP连接数据包,生成连接请求记录表,包括:
每当监测到一个TCP连接数据包,查询当前TCP连接数据包携带的TCP标志位;
若所述TCP标志位中设置为有效的字段用于指示开始会话,则根据当前TCP连接数据包中携带的目的地址,在所述连接请求记录表中创建对应的第一记录,其中,在所述第一记录中,所述半连接总数设定为初始值;
若所述TCP标志位中设置为有效的字段用于指示应答,则获取当前TCP连接数据包中携带的目的地址所对应的第二记录,以根据当前TCP连接数据包中携带的序列号,更新所述第二记录的所述半连接总数。
3.根据权利要求2所述的网络攻击方法,其特征在于,所述第二记录还包括会话跟踪项,用于指示五元组信息和序列号;
所述根据当前TCP连接数据包中携带的序列号,更新所述第二记录中的所述半连接总数,包括:
将当前TCP连接数据包中携带的五元组信息作为搜索条件,搜索所述第二记录中的会话跟踪项,以得到所述五元组信息匹配的会话跟踪项;
将所述五元组信息匹配的会话跟踪项中的所述序列号作为参考序列号;
所述当前TCP连接数据包中携带的序列号大于所述参考序列号,且所述当前TCP连接数据包中携带的序列号与所述参考序列号相邻,则将所述第二记录中所述半连接总数减一。
4.根据权利要求3所述的网络攻击识别方法,其特征在于,所述在所述连接请求记录表中创建对应的第一记录之后,还包括:
根据所述一个TCP连接数据包中携带的五元组信息和序列号,生成所述第一记录中的会话跟踪项。
5.根据权利要求2所述的网络攻击识别方法,其特征在于,所述在所述连接请求记录表中创建对应的第一记录之前,还包括:
根据当前TCP连接数据包中携带的目的地址,查询所述连接请求记录表,以确定不存在对应记录。
6.根据权利要求2所述的网络攻击识别方法,其特征在于,所述根据当前TCP连接数据包中携带的序列号,更新所述第二记录的所述半连接总数之前,还包括:
根据当前TCP连接数据包中携带的目的地址,查询所述连接请求记录表,以确定查询到对应的所述第二记录。
7.根据权利要求6所述的网络攻击识别方法,其特征在于,所述根据当前TCP连接数据包中携带的目的地址,查询所述连接请求记录表之后,还包括:
若查询到对应的所述第二记录,且当前TCP连接数据包携带的TCP标志位中设置为有效的字段未用于指示应答,则在所述第二记录中将所述半连接总数加一。
8.根据权利要求1-7中任一项所述的网络攻击识别方法,其特征在于,所述根据所述目标地址的半连接总数,识别网络攻击,包括:
确定所述目标地址的所述半连接总数和所述设定阈值时长之间的比值;
若所述比值大于比值阈值,则识别为存在半开式连接攻击;
若所述比值小于或等于所述比值阈值,则识别为不存在半开式连接攻击。
9.根据权利要求1-7中任一项所述的网络攻击识别方法,其特征在于,所述根据监测到的多个TCP连接数据包,生成连接请求记录表之前,还包括:
对监测到的TCP连接数据包缓存。
10.一种网络攻击识别装置,其特征在于,所述装置包括:
生成模块,用于根据监测到的多个TCP连接数据包,生成连接请求记录表,其中,所述连接请求记录表用于指示发送至同一目的地址的TCP连接数据包产生的半连接总数,以及发送至所述目的地址的首个TCP连接数据包所携带的起始时间戳;
获取模块,用于获取当前时间戳;
查询模块,用于根据所述当前时间戳,查询所述连接请求记录表,以从所述连接请求记录表记录的目的地址中,识别出所述起始时间戳与所述当前时间戳之差大于设定阈值时长的目标地址;
识别模块,用于根据所述目标地址的半连接总数,识别网络攻击。
11.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-9中任一所述的网络攻击识别方法。
12.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-9中任一所述的网络攻击识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540684.XA CN111756713B (zh) | 2020-06-15 | 2020-06-15 | 网络攻击识别方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010540684.XA CN111756713B (zh) | 2020-06-15 | 2020-06-15 | 网络攻击识别方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111756713A true CN111756713A (zh) | 2020-10-09 |
CN111756713B CN111756713B (zh) | 2022-12-27 |
Family
ID=72676080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010540684.XA Active CN111756713B (zh) | 2020-06-15 | 2020-06-15 | 网络攻击识别方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111756713B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709130A (zh) * | 2021-08-20 | 2021-11-26 | 江苏通付盾科技有限公司 | 基于蜜罐系统的风险识别方法及装置 |
CN114301653A (zh) * | 2021-12-22 | 2022-04-08 | 山石网科通信技术股份有限公司 | 抵御半连接攻击的方法、装置、存储介质以及处理器 |
CN114666169A (zh) * | 2022-05-24 | 2022-06-24 | 杭州安恒信息技术股份有限公司 | 一种扫描探测类型的识别方法、装置、设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020103916A1 (en) * | 2000-09-07 | 2002-08-01 | Benjie Chen | Thwarting connection-based denial of service attacks |
CN1972286A (zh) * | 2006-12-05 | 2007-05-30 | 苏州国华科技有限公司 | 一种针对DDoS攻击的防御方法 |
CN101022458A (zh) * | 2007-03-23 | 2007-08-22 | 杭州华为三康技术有限公司 | 会话的控制方法及控制装置 |
CN104468624A (zh) * | 2014-12-22 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | Sdn控制器、路由/交换设备及网络防御方法 |
CN105119942A (zh) * | 2015-09-16 | 2015-12-02 | 广东睿江科技有限公司 | 一种洪水攻击检测方法 |
CN108551446A (zh) * | 2018-04-08 | 2018-09-18 | 东软集团股份有限公司 | 防攻击的syn报文处理方法、装置、防火墙及存储介质 |
CN109962918A (zh) * | 2019-03-28 | 2019-07-02 | 烽火通信科技股份有限公司 | 一种防御攻击报文的方法、系统及设备 |
CN110535861A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普信息技术有限公司 | 一种识别syn攻击行为中统计syn包数量的方法及装置 |
-
2020
- 2020-06-15 CN CN202010540684.XA patent/CN111756713B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020103916A1 (en) * | 2000-09-07 | 2002-08-01 | Benjie Chen | Thwarting connection-based denial of service attacks |
CN1972286A (zh) * | 2006-12-05 | 2007-05-30 | 苏州国华科技有限公司 | 一种针对DDoS攻击的防御方法 |
CN101022458A (zh) * | 2007-03-23 | 2007-08-22 | 杭州华为三康技术有限公司 | 会话的控制方法及控制装置 |
CN104468624A (zh) * | 2014-12-22 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | Sdn控制器、路由/交换设备及网络防御方法 |
CN105119942A (zh) * | 2015-09-16 | 2015-12-02 | 广东睿江科技有限公司 | 一种洪水攻击检测方法 |
CN108551446A (zh) * | 2018-04-08 | 2018-09-18 | 东软集团股份有限公司 | 防攻击的syn报文处理方法、装置、防火墙及存储介质 |
CN109962918A (zh) * | 2019-03-28 | 2019-07-02 | 烽火通信科技股份有限公司 | 一种防御攻击报文的方法、系统及设备 |
CN110535861A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普信息技术有限公司 | 一种识别syn攻击行为中统计syn包数量的方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709130A (zh) * | 2021-08-20 | 2021-11-26 | 江苏通付盾科技有限公司 | 基于蜜罐系统的风险识别方法及装置 |
CN114301653A (zh) * | 2021-12-22 | 2022-04-08 | 山石网科通信技术股份有限公司 | 抵御半连接攻击的方法、装置、存储介质以及处理器 |
CN114301653B (zh) * | 2021-12-22 | 2024-02-02 | 山石网科通信技术股份有限公司 | 抵御半连接攻击的方法、装置、存储介质以及处理器 |
CN114666169A (zh) * | 2022-05-24 | 2022-06-24 | 杭州安恒信息技术股份有限公司 | 一种扫描探测类型的识别方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111756713B (zh) | 2022-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110445770B (zh) | 网络攻击源定位及防护方法、电子设备及计算机存储介质 | |
CN111756713B (zh) | 网络攻击识别方法、装置、计算机设备及介质 | |
US10305928B2 (en) | Detection of malware and malicious applications | |
EP2201738B1 (en) | Router detection | |
US8904524B1 (en) | Detection of fast flux networks | |
JP6726331B2 (ja) | アクセス要求を規制するシステムおよび方法 | |
CN109922072B (zh) | 一种分布式拒绝服务攻击检测方法及装置 | |
KR20130014226A (ko) | 공격 트래픽 형태별 특성에 따른 dns 플러딩 공격 탐지 방법 | |
US11711389B2 (en) | Scanner probe detection | |
US20050278779A1 (en) | System and method for identifying the source of a denial-of-service attack | |
CN108234473B (zh) | 一种报文防攻击方法及装置 | |
EP3432533B1 (en) | Method and system for processing forged tcp data packet | |
CN109040140B (zh) | 一种慢速攻击检测方法及装置 | |
US20110026529A1 (en) | Method And Apparatus For Option-based Marking Of A DHCP Packet | |
CN108810008B (zh) | 传输控制协议流量过滤方法、装置、服务器及存储介质 | |
US20130263268A1 (en) | Method for blocking a denial-of-service attack | |
CN107690004B (zh) | 地址解析协议报文的处理方法及装置 | |
Zhang et al. | Onis: Inferring tcp/ip-based trust relationships completely off-path | |
CN110958245B (zh) | 一种攻击的检测方法、装置、设备和存储介质 | |
CN108737344B (zh) | 一种网络攻击防护方法和装置 | |
CN111953810B (zh) | 识别代理互联网协议地址的方法、装置及存储介质 | |
EP3918762B1 (en) | Port scan detection | |
CN109309679B (zh) | 一种基于tcp流状态的网络扫描检测方法及检测系统 | |
CN114697088B (zh) | 一种确定网络攻击的方法、装置及电子设备 | |
JP3892322B2 (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210311 Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Applicant after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. Address before: No. 188, Yulong Avenue, Yufengshan Town, Yubei District, Chongqing Applicant before: OPPO (CHONGQING) INTELLIGENT TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |