CN114070572A - 一种非法tcp数据流的检测方法、装置及计算机设备 - Google Patents

一种非法tcp数据流的检测方法、装置及计算机设备 Download PDF

Info

Publication number
CN114070572A
CN114070572A CN202010752844.7A CN202010752844A CN114070572A CN 114070572 A CN114070572 A CN 114070572A CN 202010752844 A CN202010752844 A CN 202010752844A CN 114070572 A CN114070572 A CN 114070572A
Authority
CN
China
Prior art keywords
data stream
detected
tcp data
message
tcp
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.)
Pending
Application number
CN202010752844.7A
Other languages
English (en)
Inventor
王方立
黄敏
龙国东
王静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Winicssec Technologies Co Ltd
Original Assignee
Beijing Winicssec Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Winicssec Technologies Co Ltd filed Critical Beijing Winicssec Technologies Co Ltd
Priority to CN202010752844.7A priority Critical patent/CN114070572A/zh
Publication of CN114070572A publication Critical patent/CN114070572A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种非法TCP数据流的检测方法、装置及计算机设备,该方法包括:接收被测端发送的待检测TCP数据流;获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到位于第一确认序列号和第二确认序列号之间的目标确认序列号;向被测端发送包括目标确认序列号的确认报文;接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文;根据数据报文的接收结果,确定待检测TCP数据流是否为非法TCP数据流。通过实施本发明,可准确检测整个TCP数据流的状态,避免了非法TCP数据流对工控***和军工***的攻击行为。

Description

一种非法TCP数据流的检测方法、装置及计算机设备
技术领域
本发明涉及工业控制技术领域,具体涉及一种非法TCP数据流的检测方法、装置及计算机设备。
背景技术
随着工业化与信息化进程的不断交叉融合,越来越多的信息技术应用到了工业领域。与此同时,由于工业控制***广泛采用通用软硬件和网络设施,以及与企业管理信息***的集成,导致工业控制或军工专用***越来越开放。因此,针对工业控制设备的非法攻击也越来越多,这样的非法攻击可能导致工业控制设备拒绝提供服务或者数据泄密等危险。针对这种危险,通过识别非法数据流,来有针对性的阻断危害的发生,对于工业控制设备的防护工作至关重要。
相关技术中,对非法攻击的检测主要是包过滤,包过滤方法是指针对每一个数据包的包头,按照包过滤规则进行判定,与规则相匹配的包则可以依据路由信息继续转发,否则就丢弃来抵抗非法攻击。但是包过滤方法一般只能检测某些字段的异常,不能检测整个TCP数据流的异常,影响了对非法攻击行为的检测效果。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中的包过滤方法只能检测某些字段的异常,不能检测TCP数据流的异常,影响了对非法攻击行为的检测效果的缺陷,从而提供一种非法TCP数据流的检测方法、装置及计算机设备。
根据第一方面,本发明实施例公开了一种非法TCP数据流的检测方法,应用于测试端,包括如下步骤:接收被测端发送的待检测TCP数据流;获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号,根据所述第一确认序列号和所述第二确认序列号得到目标确认序列号,所述目标确认序列号位于所述第一确认序列号和第二确认序列号之间;向所述被测端发送确认报文,所述确认报文包括所述目标确认序列号;接收所述被测端发送的数据报文,所述数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文;根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流。
可选地,所述根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流,包括:当在预设时间内未接收到重发的数据报文,确定所述待检测TCP数据流为非法的TCP数据流;或当在预设时间内接收到的重发的数据报文和上次接收的数据报文不一致,确定所述待检测TCP数据流为非法的TCP数据流。
可选地,在获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号之前,所述方法还包括:对所述待检测TCP数据流中的数据报文进行合法性验证。
可选地,所述方法还包括:当所述待检测TCP数据流中的数据报文不符合预设行为模型规则库时,暂停转发所述待检测TCP数据流。
根据第二方面,本发明实施例还公开了一种非法TCP数据流的检测方法,包括如下步骤:向测试端发送待检测TCP数据流;接收所述测试端发送的确认报文,所述确认报文包括目标确认序列号;根据所述确认报文向所述测试端再次发送所述待检测TCP数据流中的数据报文,所述待检测TCP数据流中的数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文。
根据第三方面,本发明实施例还公开了一种非法TCP数据流的检测装置,应用于测试端,包括:第一接收模块,用于接收被测端发送的待检测TCP数据流;获取模块,用于获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号,根据所述第一确认序列号和所述第二确认序列号得到目标确认序列号,所述目标确认序列号位于所述第一确认序列号和第二确认序列号之间;第一发送模块,用于向所述被测端发送确认报文,所述确认报文包括所述目标确认序列号;第二接收模块,用于接收所述被测端发送的数据报文,所述数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文;确定模块,用于根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流。
可选地,所述确定模块包括:确定子模块,用于当在预设时间内未接收到重发的数据报文,确定所述待检测TCP数据流为非法的TCP数据流;或当在预设时间内接收到的重发的数据报文和上次接收的数据报文不一致,确定所述待检测TCP数据流为非法的TCP数据流。
根据第四方面,本发明实施例还公开了一种非法TCP数据流的检测装置,应用于被测端,包括:第二发送模块,用于向测试端发送待检测TCP数据流;第三接收模块,用于接收所述测试端发送的确认报文,所述确认报文包括目标确认序列号;第三发送模块,用于根据所述确认报文向所述测试端再次发送所述待检测TCP数据流中的数据报文,所述待检测TCP数据流中的数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文。
根据第五方面,本发明实施例还公开了一种计算机设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选实施方式或第二方面所述的非法TCP数据流的检测方法的步骤。
根据第六方面,本发明实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式或第二方面所述的非法TCP数据流的检测方法的步骤。
本发明技术方案,具有如下优点:
1.本发明提供的非法TCP数据流的检测方法及装置,应用于测试端,通过接收被测端发送的待检测TCP数据流,获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间,接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文,根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。本发明利用了TCP协议对未确认报文的重发特性,通过对重复接收到的待检测的TCP数据流进行检测,可准确检测整个TCP数据流的状态,避免了非法TCP数据流对工控***和军工***的攻击行为。
2.本发明提供的非法TCP数据流的检测方法及装置,应用于被测端,通过向测试端发送待检测TCP数据流,接收测试端发送的确认报文,确认报文包括目标确认序列号,根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。本发明利用了TCP协议对未确认报文的重发特性,通过重复向测试端发送待检测的TCP数据流,可准确确定整个TCP数据流的状态,避免了传输非法的TCP数据流对工控***和军工***进行攻击。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中非法TCP数据流的检测方法的一个具体示例的流程图;
图2为本发明实施例2中非法TCP数据流的检测方法的一个具体示例的流程图;
图3为本发明实施例3中非法TCP数据流的检测***的一个具体示例图;
图4为本发明实施例4中非法TCP数据流的检测装置的一个具体示例的原理框图;
图5为本发明实施例5中非法TCP数据流的检测装置的一个具体示例的原理框图;
图6为本发明实施例6中计算机设备的一个具体示例图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
工控***如可编程逻辑控制器(Programmable Logic Controller,PLC)、分布式控制***(Distributed Control System,DCS)或军工领域的专用设备等进行TCP通信时,往往会通过五元组(源IP地址、目的IP地址、源端口、目的端口、协议类型)创建很多TCP数据流进行传输。但是有的TCP数据流并不是正常的TCP业务数据流,是通过伪造大量的五元组的创建的非法数据流,导致通过包过滤的方式并不能有效抵抗非法数据流,这些非法数据流会对工控***和军工***进行攻击。因此,检测这种非法的TCP数据流对于工控***或者军工***的安全防护至关重要。故本申请实施例提出一种非法TCP数据流的检测方法。
实施例1
本发明实施例提供一种非法TCP数据流的检测方法,应用于对测试端的一对网口(例如防火墙的一对网口)实时传输的TCP数据流的检测,该测试端可以工作在透明模式下,使得不管被测端传输何种比特组合的数据,均可以在链路上将数据传输至测试端。如图1所示,包括如下步骤:
S11:接收被测端发送的待检测TCP数据流。
示例性地,该被测端可以为工控***设备或军工***设备;待检测TCP数据流可以为工控***设备或军工***设备根据五元组(源IP地址、目的IP地址、源端口、目的端口、协议类型)创建的,该待检测TCP数据流包括多个数据报文。该TCP数据流的接收方式可以直接通过串口接收,也可以是利用无线/有线网络接收。接收的待检测TCP数据流可以是加密的TCP数据流,也可以是没有加密的TCP数据流。本发明实施例对该待检测数据流的接收方式以及加密状态均不作限定,本领域技术人员可以根据实际情况设定。
S12:获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间。
示例性地,在数据报文中,序列号用于记录发送方已经发送的字节序列,确认序列号用于记录接收方已经接收到的字节序列,序列号和确认序列号均可以采用32位序列号。每个数据报文的序列号由第一个字节序列号确定,被测端首次发送数据报文时,第一个数据报文的序列号是随机生成的,第二个数据报文的第一个字节序列号由根据第一个数据报文的字节数量与其序列号进行相加得到,以此类推可知道每一个数据报文的序列号;确认序列号可根据测试端给被测端发送的确认报文确定。
该目标确认序列号为测试端对接收到的TCP数据流中的数据报文的确认数量。获取待检测TCP数据流中的任意一个数据报文的确认序列号和任意一个数据报文的上一个数据报文的确认序列号,分别记为第一确认序列号N1和第二确认序列号N2,在本发明实施例中,根据第一确认序列号N1和第二确认序列号N2得到目标确认序列号N具体可以为目标确认序列号N位于第一确认序列号N1和第二确认序列号N2之间(即N2<N<N1),本发明实施例可采用N=(N1+N2)/2确定目标确认序列号。本发明实施例对该目标确认序列号的确定方法不作限定,本领域技术人员可以根据实际情况设定。
例如,被测端给测试端发送一条待检测TCP数据流,该待检测数据流中包括5条数据报文,本发明实施例以根据第3条数据报文确定待检测数据流是否为非法数据流为例,首先获取第3条数据报文完全确认的确认序列号,例如100,然后获取第2条数据报文的确认序列号,例如50,第2条数据报文的确认序列号50可以从测试端发给被测端的第2条数据报文的确认报文获得,根据第3条数据报文的确认序列号100和第2条数据报文的确认序列号50确定目标序列号,目标序列号在50-100之间即可,例如,该目标序列号可以为80。如果根据第1条数据报文确定待检测数据流是否为非法数据流,可以根据第1条数据报文的序列号和第1条数据报文完全确认的确认序列号确定目标序列号。
S13:向被测端发送确认报文,确认报文包括目标确认序列号。
示例性地,测试端接收到待检测TCP数据流后,会对待检测TCP数据流中的每一个数据报文进行确认,回复被测端一个确认报文。该确认报文可以不用包含报文数据,只要包含目标确认序列号告知被测端测试端确认了多少数据报文是正常的即可。该确认报文的发送方法与待检测数据流的接收方法相对应,可直接通过串口接收,也可以是利用无线/有线网络接收。
S14:接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。
示例性地,根据TCP协议的通信规则,当测试端对TCP数据流没有完全确认时,被测端会再次向测试端发送数据报文。该数据报文可以为上次接收的待检测TCP数据流中没有被确认的数据报文,也可以为上次接收的待检测TCP数据流中所有的数据报文,本发明实施例对该数据报文不作具体限定,本领域技术人员可以根据实际情况设定。该数据报文的接收方式和加密状态可以与上次待检测TCP数据流的接收方式和加密状态一样,在此不再赘述。
S15:根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。
示例性地,数据报文的接收结果可以包括在预设时间内没有接收到重发的数据报文、在预设时间内接收到与上次接收到的待检测TCP数据流一样的数据报文和在预设时间内接收到与上次接收到的待检测TCP数据流不一样的数据报文的任意一种。该预设时间可以为1s或500ms,本发明实施例对该预设时间不作具体限定,本领域技术人员可以根据实际情况设定。
在本发明实施例中,根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流,例如:当在预设时间内没有接收到重发的数据报文或接收到的重发的数据报文和上次接收的数据报文不一致,确定待检测TCP数据流为非法的TCP数据流;反之,当在预设时间内接收到重发的数据报文与上次接收的数据报文一致,确定待检测TCP数据流不是非法的TCP数据流。
本发明提供的非法TCP数据流的检测方法,通过接收被测端发送的待检测TCP数据流,获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间,接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文,根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。本发明利用了TCP协议对未确认报文的重发特性,通过对重复接收到的待检测的TCP数据流进行检测,可准确检测整个TCP数据流的状态,避免了非法TCP数据流对工控***和军工***的攻击行为。
作为本发明一个可选实施方式,在步骤S12之前,该非法TCP数据流的检测方法还包括:对待检测TCP数据流中的数据报文进行合法性验证。
示例性地,对待检测TCP数据流中的数据报文进行合法性验证可以为待检测TCP数据流中的数据报文不满足预设行为模型规则库,也可以通过现有的包过滤方法对待检测TCP数据流中的数据报文进行检测,本发明实施例对该合法性验证方法不作具体限定,本领域技术人员可以根据实际情况设定。该预设行为模型规则库可以为预先通过TCP数据流中的报文的行为模型(TCP状态机)构建的。
为了减少测试端的工作量,可以在接收到待检测TCP数据流之后先对待检测TCP数据流中的数据报文进行合法性验证,当待检测TCP数据流中的数据报文不合法时,再对整个待检测数据流进行检测,确认其是否合法,不需要在任何时候都对TCP数据流的状态进行检测,提高了TCP数据流检测的效率。
作为本发明一个可选实施方式,该非法TCP数据流的检测方法还包括:
当待检测TCP数据流中的数据报文不符合预设行为模型规则库时,暂停转发TCP数据流。
示例性地,当接收到的待检测TCP数据流中的数据报文不符合预设行为模型规则库时,认为该数据报文是不合法的,暂停转发该TCP数据流,防止不合法的TCP数据流攻击工控***或军工***,提高了TCP数据流转发的安全性。
实施例2
本发明实施例提供一种非法TCP数据流的检测方法,应用于被测端,如图2所示,包括如下步骤:
S21:向测试端发送待检测TCP数据流。
示例性地,该待检测TCP数据流根据实施例1中的步骤S11的方法创建,该待检测TCP数据流的发送方法可以为通过串口发送,也可以通过无线/有线发送,本发明实施例对该待检测TCP数据流的发送方法不作限定,本领域技术人员可以根据实际情况设定。
S22:接收测试端发送的确认报文,确认报文包括目标确认序列号。具体实施方式参见实施例1中对应步骤的描述,在此不再赘述。
S23:根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。
示例性地,根据TCP协议的通信规则,当测试端没有完全确认上一次发送的数据报文时,被测端会再次发送数据报文,待检测TCP数据流中的数据报文可以为该待检测数据流全部数据报文,也可以仅为没有确认的数据报文,只要包含待检测TCP数据流中目标确认序列号之后的数据报文即可。
本发明提供的非法TCP数据流的检测方法,通过向测试端发送待检测TCP数据流,接收测试端发送的确认报文,确认报文包括目标确认序列号,根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。本发明利用了TCP协议对未确认报文的重发特性,通过重复向测试端发送待检测的TCP数据流,可准确确定整个TCP数据流的状态,避免了传输非法的TCP数据流对工控***和军工***进行攻击。
实施例3
本发明实施例提供一种非法TCP数据流的检测***,应用于测试端与被测端的非法TCP数据流的检测,图中标号对应上述实施例中的标号,如图3所示,具体步骤如下:
S21:被测端向测试端发送待检测TCP数据流。
S11:测试端接收被测端发送的待检测TCP数据流。
S12:测试端获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间。
S13:测试端向被测端发送确认报文,确认报文包括目标确认序列号。
S22:被测端接收测试端发送的确认报文,确认报文包括目标确认序列号。
S23:被测端根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。
S14:测试端接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。
S15:测试端根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。对本实施例中各个步骤的说明,参见上述实施例,在此不再赘述。
本实施例提供的应用于测试设备和被测设备交互的非法TCP数据流的检测方法实现了对整个TCP数据流的检测,而不仅仅是对数据流中的数据包的检测,使得对非法攻击的检测更加准确。
实施例4
本发明实施例提供一种非法TCP数据流的检测装置,应用于测试端,如图4所示,包括:
第一接收模块31,用于接收被测端发送的待检测TCP数据流;具体实现方式见实施例1中步骤S11,在此不再赘述。
获取模块32,用于获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间;具体实现方式见实施例1中步骤S12,在此不再赘述。
第一发送模块33,用于向被测端发送确认报文,确认报文包括目标确认序列号;具体实现方式见实施例1中步骤S13,在此不再赘述。
第二接收模块34,用于接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文;具体实现方式见实施例1中步骤S14,在此不再赘述。
确定模块35,用于根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。具体实现方式见实施例1中步骤S15,在此不再赘述。
本发明提供的非法TCP数据流的检测装置,通过接收被测端发送的待检测TCP数据流,获取待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和任意一个数据报文的上一个数据报文的第二确认序列号,根据第一确认序列号和第二确认序列号得到目标确认序列号,目标确认序列号位于第一确认序列号和第二确认序列号之间,向被测端发送确认报文,确认报文包括目标确认序列号,接收被测端发送的数据报文,数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文根据数据报文的接收结果,确定待检测TCP数据流是否为非法的TCP数据流。本发明利用了TCP协议对未确认报文的重发特性,通过对重复接收到的待检测的TCP数据流进行检测,可准确检测整个TCP数据流的状态,避免了非法TCP数据流对工控***和军工***的攻击行为。
作为本发明一个可选实施方式,确定模块35包括:
确定子模块,用于当在预设时间内未接收到重发的数据报文,确定待检测TCP数据流为非法的TCP数据流;或当在预设时间内接收到的重发的数据报文和上次接收的数据报文不一致,确定待检测TCP数据流为非法的TCP数据流。具体实现方式见实施例1中对应的步骤,在此不再赘述。
作为本发明一个可选实施方式,该非法TCP数据流的检测装置还包括:
合法确认模块,用于对待检测TCP数据流中的数据报文进行合法性验证。具体实现方式见实施例1中对应的步骤,在此不再赘述。
作为本发明一个可选实施方式,该非法TCP数据流的检测装置还包括:
暂停模块,用于当待检测TCP数据流中的数据报文不符合预设行为模型规则库时,暂停转发TCP数据流。具体实现方式见实施例1中对应的步骤,在此不再赘述。
实施例5
本发明实施例提供一种非法TCP数据流的检测装置,应用于被测端,如图5所示,包括:
第二发送模块41,用于向测试端发送待检测TCP数据流;具体实现方式见实施例2中步骤S21,在此不再赘述。
第三接收模块42,用于接收测试端发送的确认报文,确认报文包括目标确认序列号;具体实现方式见实施例2中步骤S22,在此不再赘述。
第三发送模块43,用于根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。具体实现方式见实施例2中步骤S23,在此不再赘述。
本发明提供的非法TCP数据流的检测装置,通过向测试端发送待检测TCP数据流,接收测试端发送的确认报文,确认报文包括目标确认序列号,根据确认报文向测试端再次发送待检测TCP数据流中的数据报文,待检测TCP数据流中的数据报文包含待检测TCP数据流中目标确认序列号之后的数据报文。本发明利用了TCP协议对未确认报文的重发特性,通过重复向测试端发送待检测的TCP数据流,可准确确定整个TCP数据流的状态,避免了传输非法的TCP数据流对工控***和军工***进行攻击。
实施例6
本发明实施例还提供了一种计算机设备,如图6所示,该计算机设备可以包括处理器51和存储器52,其中处理器51和存储器52可以通过总线或者其他方式连接,图6中以通过总线连接为例。
处理器51可以为中央处理器(Central Processing Unit,CPU)。处理器51还可以为其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的非法TCP数据流的检测方法对应的程序指令/模块(例如,图4所示的第一接收模块31、获取模块32、第一发送模块33、第二接收模块34和确定模块35或图5所示的第二发送模块41、第三接收模块42和第三发送模块43)。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的非法TCP数据流的检测方法。
存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储处理器51所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器52中,当被所述处理器51执行时,执行如图1或图2所示实施例中的非法TCP数据流的检测方法。
上述计算机设备具体细节可以对应参阅图1或图2所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
实施例7
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的非法TCP数据流的检测方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard DiskDrive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

Claims (10)

1.一种非法TCP数据流的检测方法,应用于测试端,其特征在于,包括如下步骤:
接收被测端发送的待检测TCP数据流;
获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号,根据所述第一确认序列号和所述第二确认序列号得到目标确认序列号,所述目标确认序列号位于所述第一确认序列号和第二确认序列号之间;
向所述被测端发送确认报文,所述确认报文包括所述目标确认序列号;
接收所述被测端发送的数据报文,所述数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文;
根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流。
2.根据权利要求1所述的方法,其特征在于,所述根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流,包括:
当在预设时间内未接收到重发的数据报文,确定所述待检测TCP数据流为非法的TCP数据流;或
当在预设时间内接收到的重发的数据报文和上次接收的数据报文不一致,确定所述待检测TCP数据流为非法的TCP数据流。
3.根据权利要求1所述的方法,其特征在于,在获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号之前,所述方法还包括:对所述待检测TCP数据流中的数据报文进行合法性验证。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述待检测TCP数据流中的数据报文不符合预设行为模型规则库时,暂停转发所述待检测TCP数据流。
5.一种非法TCP数据流的检测方法,应用于被测端,其特征在于,包括如下步骤:
向测试端发送待检测TCP数据流;
接收所述测试端发送的确认报文,所述确认报文包括目标确认序列号;
根据所述确认报文向所述测试端再次发送所述待检测TCP数据流中的数据报文,所述待检测TCP数据流中的数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文。
6.一种非法TCP数据流的检测装置,应用于测试端,其特征在于,包括:
第一接收模块,用于接收被测端发送的待检测TCP数据流;
获取模块,用于获取所述待检测TCP数据流的多个数据报文中任意一个数据报文的第一确认序列号和所述任意一个数据报文的上一个数据报文的第二确认序列号,根据所述第一确认序列号和所述第二确认序列号得到目标确认序列号,所述目标确认序列号位于所述第一确认序列号和第二确认序列号之间;
第一发送模块,用于向所述被测端发送确认报文,所述确认报文包括所述目标确认序列号;
第二接收模块,用于接收所述被测端发送的数据报文;
确定模块,用于根据数据报文的接收结果,确定所述待检测TCP数据流是否为非法的TCP数据流。
7.根据权利要求6所述的装置,其特征在于,所述确定模块包括:
确定子模块,用于当在预设时间内未接收到重发的数据报文,确定所述待检测TCP数据流为非法的TCP数据流;或当在预设时间内接收到的重发的数据报文和上次接收的数据报文不一致,确定所述待检测TCP数据流为非法的TCP数据流。
8.一种非法TCP数据流的检测装置,应用于被测端,其特征在于,包括:
第二发送模块,用于向测试端发送待检测TCP数据流;
第三接收模块,用于接收所述测试端发送的确认报文,所述确认报文包括目标确认序列号;
第三发送模块,用于根据所述确认报文向所述测试端再次发送所述待检测TCP数据流中的数据报文,所述待检测TCP数据流中的数据报文包含所述待检测TCP数据流中目标确认序列号之后的数据报文。
9.一种计算机设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5任一所述的非法TCP数据流的检测方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的非法TCP数据流的检测方法的步骤。
CN202010752844.7A 2020-07-30 2020-07-30 一种非法tcp数据流的检测方法、装置及计算机设备 Pending CN114070572A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010752844.7A CN114070572A (zh) 2020-07-30 2020-07-30 一种非法tcp数据流的检测方法、装置及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010752844.7A CN114070572A (zh) 2020-07-30 2020-07-30 一种非法tcp数据流的检测方法、装置及计算机设备

Publications (1)

Publication Number Publication Date
CN114070572A true CN114070572A (zh) 2022-02-18

Family

ID=80226767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010752844.7A Pending CN114070572A (zh) 2020-07-30 2020-07-30 一种非法tcp数据流的检测方法、装置及计算机设备

Country Status (1)

Country Link
CN (1) CN114070572A (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003030443A1 (en) * 2001-10-03 2003-04-10 Pitney Bowes Inc. Securing a printhead in a closed system metering device
US6725378B1 (en) * 1998-04-15 2004-04-20 Purdue Research Foundation Network protection for denial of service attacks
KR20100001786A (ko) * 2008-06-27 2010-01-06 고려대학교 산학협력단 서포트 벡터 데이터 명세를 이용한 트래픽 폭주 공격 탐지방법, 그 장치 및 이를 기록한 기록 매체
CN101848096A (zh) * 2009-03-26 2010-09-29 华为技术有限公司 减少组播确认风暴的方法和装置
WO2012075866A1 (zh) * 2010-12-07 2012-06-14 成都市华为赛门铁克科技有限公司 云***分布式拒绝服务攻击防护方法以及装置和***
CN102655509A (zh) * 2012-05-07 2012-09-05 福建星网锐捷网络有限公司 一种网络攻击识别方法及装置
CN106302495A (zh) * 2016-08-25 2017-01-04 北京神州绿盟信息安全科技股份有限公司 一种ACK Flood攻击的防护方法及中间防护装置
CN106453419A (zh) * 2016-12-07 2017-02-22 东软集团股份有限公司 识别源ip地址合法性、网络攻击防御的方法及装置
CN107087007A (zh) * 2017-05-25 2017-08-22 腾讯科技(深圳)有限公司 一种网络攻击的防御方法、相关设备及***
CN109309647A (zh) * 2017-07-27 2019-02-05 华为技术有限公司 一种传输协议的协商方法、装置及***
CN110198293A (zh) * 2018-04-08 2019-09-03 腾讯科技(深圳)有限公司 服务器的攻击防护方法、装置、存储介质和电子装置
CN110365658A (zh) * 2019-06-25 2019-10-22 深圳市腾讯计算机***有限公司 一种反射攻击防护与流量清洗方法、装置、设备及介质
WO2020010511A1 (zh) * 2018-07-10 2020-01-16 华为技术有限公司 数据传输方法及基站
CN110784464A (zh) * 2019-10-24 2020-02-11 新华三信息安全技术有限公司 泛洪攻击的客户端验证方法、装置、***及电子设备
CN111314358A (zh) * 2020-02-21 2020-06-19 深圳市腾讯计算机***有限公司 攻击防护方法、装置、***、计算机存储介质及电子设备

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6725378B1 (en) * 1998-04-15 2004-04-20 Purdue Research Foundation Network protection for denial of service attacks
WO2003030443A1 (en) * 2001-10-03 2003-04-10 Pitney Bowes Inc. Securing a printhead in a closed system metering device
KR20100001786A (ko) * 2008-06-27 2010-01-06 고려대학교 산학협력단 서포트 벡터 데이터 명세를 이용한 트래픽 폭주 공격 탐지방법, 그 장치 및 이를 기록한 기록 매체
CN101848096A (zh) * 2009-03-26 2010-09-29 华为技术有限公司 减少组播确认风暴的方法和装置
WO2012075866A1 (zh) * 2010-12-07 2012-06-14 成都市华为赛门铁克科技有限公司 云***分布式拒绝服务攻击防护方法以及装置和***
CN102655509A (zh) * 2012-05-07 2012-09-05 福建星网锐捷网络有限公司 一种网络攻击识别方法及装置
CN106302495A (zh) * 2016-08-25 2017-01-04 北京神州绿盟信息安全科技股份有限公司 一种ACK Flood攻击的防护方法及中间防护装置
CN106453419A (zh) * 2016-12-07 2017-02-22 东软集团股份有限公司 识别源ip地址合法性、网络攻击防御的方法及装置
CN107087007A (zh) * 2017-05-25 2017-08-22 腾讯科技(深圳)有限公司 一种网络攻击的防御方法、相关设备及***
CN109309647A (zh) * 2017-07-27 2019-02-05 华为技术有限公司 一种传输协议的协商方法、装置及***
CN110198293A (zh) * 2018-04-08 2019-09-03 腾讯科技(深圳)有限公司 服务器的攻击防护方法、装置、存储介质和电子装置
WO2020010511A1 (zh) * 2018-07-10 2020-01-16 华为技术有限公司 数据传输方法及基站
CN110365658A (zh) * 2019-06-25 2019-10-22 深圳市腾讯计算机***有限公司 一种反射攻击防护与流量清洗方法、装置、设备及介质
CN110784464A (zh) * 2019-10-24 2020-02-11 新华三信息安全技术有限公司 泛洪攻击的客户端验证方法、装置、***及电子设备
CN111314358A (zh) * 2020-02-21 2020-06-19 深圳市腾讯计算机***有限公司 攻击防护方法、装置、***、计算机存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN108551446B (zh) 防攻击的syn报文处理方法、装置、防火墙及存储介质
US9219667B2 (en) Methods, systems, and computer readable media for selectively processing packets using time to live (TTL) information
US10542033B2 (en) Network device and network system
ES2784265T3 (es) Procedimiento y dispositivo para la captura sin repercusiones de datos
US8724466B2 (en) Packet filtering
KR101369727B1 (ko) 캡차를 기반으로 하는 트래픽 제어 장치 및 그 방법
US20110072515A1 (en) Method and apparatus for collaboratively protecting against distributed denial of service attack
EP1806888A1 (en) Denial-of-service attack detecting system, and denial-of-service attack detecting method
WO2017038500A1 (ja) 中継装置
CN104540134B (zh) 无线访问节点检测方法、无线网络检测***和服务器
CN110784464B (zh) 泛洪攻击的客户端验证方法、装置、***及电子设备
CN101180826A (zh) 较高级协议认证
US10263975B2 (en) Information processing device, method, and medium
CN108076003B (zh) 会话劫持的检测方法及装置
US20190068762A1 (en) Packet Parsing Method and Device
CN106899419B (zh) 一种实现异常处理的方法、装置及请求端
CN105897909B (zh) 服务器防护设备在旁路模式下的web服务监控方法
CN107154917B (zh) 数据传输方法及服务器
CN108574673A (zh) 应用于网关的arp报文攻击检测方法及装置
KR101380015B1 (ko) 분산서비스거부 공격에 대한 협업형 방어 방법 및 그 장치
JP7024069B2 (ja) 車両の制御機器に対する攻撃を検出する方法
US9298175B2 (en) Method for detecting abnormal traffic on control system protocol
CN114070572A (zh) 一种非法tcp数据流的检测方法、装置及计算机设备
US11489865B2 (en) Control device, communication system, control method, and computer program
US8086908B2 (en) Apparatus and a method for reporting the error of each level of the tunnel data packet in a communication network

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