CN112769633B - 一种代理流量检测方法、装置、电子设备及可读存储介质 - Google Patents

一种代理流量检测方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN112769633B
CN112769633B CN202011417347.8A CN202011417347A CN112769633B CN 112769633 B CN112769633 B CN 112769633B CN 202011417347 A CN202011417347 A CN 202011417347A CN 112769633 B CN112769633 B CN 112769633B
Authority
CN
China
Prior art keywords
flow
detected
data packet
data
proxy
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
Application number
CN202011417347.8A
Other languages
English (en)
Other versions
CN112769633A (zh
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202011417347.8A priority Critical patent/CN112769633B/zh
Publication of CN112769633A publication Critical patent/CN112769633A/zh
Application granted granted Critical
Publication of CN112769633B publication Critical patent/CN112769633B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information

Abstract

本申请公开了一种代理流量检测方法、装置、电子设备及计算机可读存储介质,该方法包括:获取待检测流量,并确定待检测流量对应的数据流行为特征;数据流行为特征为基于待检测流量的网络通信情况得到的特征;利用识别分类模型对数据流行为特征进行分类处理,得到分类结果;若分类结果为异常,则确定待检测流量为代理流量;该方法并不关注流量中各个数据包的具体内容,而是提取对应的数据流行为特征。数据流行为特征可以体现会话连接或数据流方面的网络通信情况方面的特征,从流量的网络通信情况方面的特征方面对待检测流量进行检测,因此能够检出经过端口伪装或加密传输的代理流量,具有较强的检测能力。

Description

一种代理流量检测方法、装置、电子设备及可读存储介质
技术领域
本申请涉及网络安全技术领域,特别涉及一种代理流量检测方法、代理流量检测装置、电子设备及计算机可读存储介质。
背景技术
socks协议(Protocol for sessions traversal across firewall securely,防火墙安全会话转换协议)提供一个框架,使得在TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)域中的客户机或服务器应用程序能够更加方便和安全地使用网络防火墙所提供的服务,例如访问境外网站,隐藏自身真实IP。为了对代理流量进行检测,相关技术通常读取网络数据包的内容,即有效负载和端口号,并基于内容判定网络数据包是否为代理流量中的数据包。然而,若流量经过和端口伪装或传输加密,例如利用Shadowsocks工具生成(Shadowsocks是一款被广泛使用的基于socks协议的代理工具,使用对称加密算法加密通信流量),则会导致无法获取到网络数据包的内容,进而无法对代理流量进行检测,因此相关技术的检测能力较弱。
发明内容
有鉴于此,本申请的目的在于提供一种代理流量检测方法、代理流量检测装置、电子设备及计算机可读存储介质,具有较强的代理流量检测能力。
为解决上述技术问题,本申请提供了一种代理流量检测方法,包括:
获取待检测流量,并确定所述待检测流量对应的数据流行为特征;所述数据流行为特征为表现所述待检测流量的网络通信情况的特征;
利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果;
若所述分类结果为异常,则确定所述待检测流量为代理流量。
可选地,所述确定所述待检测流量对应的数据流行为特征,包括:
提取所述待检测流量对应的数据包长度信息、数据包间隔信息、数据包数量信息;
利用所述数据包长度信息、所述数据包间隔信息和所述数据包数量信息生成所述数据流行为特征。
可选地,所述获取待检测流量,包括:
获取初始流量,并提取所述初始流量中数据字符对应的字符熵;
判断所述字符熵是否处于第一预设区间;
若处于所述第一预设区间,则确定所述初始流量为所述待检测流量。
可选地,所述获取待检测流量,包括:
获取初始流量,并对所述初始流量中的数据包进行控制信息检测,得到目标数据包;
统计所述目标数据包对应的数量,并判断所述数量是否处于第二预设区间;
若处于所述第二预设区间,则确定所述初始流量为所述待检测流量。
可选地,所述对所述初始流量中的数据包进行控制信息检测,得到目标数据包,包括:
判断所述初始流量中是否存在相邻的目标下行数据包;所述目标下行数据包具有第一标志且数据包长度相同;
若存在相邻的所述目标下行数据包,则判断所述目标下行数据包之间是否存在具有第二标志的上行数据包;
若存在所述上行数据包,则确定所述上行数据包和所述目标下行数据包为所述目标数据包。
可选地,所述获取待检测流量,包括:
获取初始流量,并提取所述初始流量中各个数据包对应的数据包长度;
计算所述数据包长度处于第三预设区间内的目标比例;
若所述目标比例大于预设比例阈值,则确定所述初始流量为所述待检测流量。
可选地,所述利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果,包括:
对所述数据流行为特征进行基于皮尔逊积矩相关系数的主成分分析处理,得到第一特征;
将所述第一特征输入所述识别分类模型,得到所述分类结果。
本申请还提供了一种代理流量检测装置,包括:
获取模块,用于获取待检测流量,并确定所述待检测流量对应的数据流行为特征;所述数据流行为特征为表现所述待检测流量的网络通信情况的特征;
分类模块,用于利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果;
确定模块,用于若所述分类结果为异常,则确定所述待检测流量为代理流量。
本申请还提供了一种电子设备,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如上述的代理流量检测方法。
本申请还提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现上述的代理流量检测方法。
本申请提供的代理流量检测方法,获取待检测流量,并确定待检测流量对应的数据流行为特征;数据流行为特征为基于待检测流量的网络通信情况得到的特征;利用识别分类模型对数据流行为特征进行分类处理,得到分类结果;若分类结果为异常,则确定待检测流量为代理流量。
可见,该方法在获取到待检测流量后,并不提取其具体内容,而是提取对应的数据流行为特征。数据流行为特征为基于待检测流量的网络通信情况得到的特征,其可以体现会话连接、数据流通讯等网络通信方面的特征,例如数据包长度、连接速率、数据包时间间隔等,其与数据包的具体内容无关。不同的应用类型在会话连接或数据流等网络通信方面的的特征各有不同,利用识别分类模型对数据流行为特征进行分类,可以从待检测流量的行为特征方面对其类型进行检测,若分类结果为异常,则可以确定待检测流量为代理流量,即该流量隐藏了自身身份。相比于相关技术,该方法并不关注流量中各个数据包的具体内容,而是从流量的网络通信情况方面的特征方面对待检测流量进行检测,因此能够检出经过端口伪装或加密传输的代理流量,具有较强的检测能力,解决了相关技术的检测能力较弱的问题。
此外,本申请还提供了一种代理流量检测装置、电子设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种代理流量检测方法流程图;
图2为本申请实施例提供的一种待检测流量获取过程流程图;
图3为本申请实施例提供的另一种待检测流量获取过程流程图;
图4为本申请实施例提供的另一种待检测流量获取过程流程图;
图5为本申请实施例提供的一种具体的代理流量检测过程流程图;
图6为本申请实施例提供的一种代理流量检测装置的结构示意图;
图7为本申请实施例提供的一种代理流量检测方法所适用的一种硬件组成框架示意图;
图8为本申请实施例提供的另一种代理流量检测方法所适用的一种硬件组成框架示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种代理流量检测方法流程图。该方法包括:
S101:获取待检测流量,并确定待检测流量对应的数据流行为特征。
待检测流量即为需要被进行代理流量检测的流量,其可以为直接获取得到的流量,例如从网关或路由器处直接获取的流量,或者可以为经过处理的流量,例如可以为经过过滤的流量,或者可以为经过初步检测后无法确定是否为正常流量的流量。待检测流量可以为执行本实施例中全部或部分步骤的电子设备从自身处获取的流量,即可以用路由器或网关等电子设备执行本实施例中的全部或部分步骤,将直接经过电子设备的流量确定为待检测流量。待检测流量还可以为其他电子设备转发的流量,例如可以用服务器执行本申请实施例中的全部或部分步骤,将路由器、网关等电子设备发送的流量确定为待检测流量。
在获取待检测流量后,提取其数据流行为特征,以便在后续基于数据流行为特征判断待检测流量是否为代理流量。数据流行为特征基于待检测流量的网络通信行为得到,可以用于表现待检测流量的网络通信情况。由于不同类型的应用在会话连接或数据流状态等网络通信方面的体现不同,该不同无需通过读取或解析数据流的具体内容即可得到,即无需得到数据流中各个数据包的具体内容即可得到数据流行为特征。数据流行为特征的具体提取方式不做限定,例如可以检测待检测流量中各个数据包的长度、类型、传输时间间隔、方差、信息熵等,以及整个待检测流量的数据包总长度、数据包平均到底时长、特殊的数据包组合等,即可以提取任意表征连接和数据传输情况的特征作为数据流行为特征。数据流行为特征的种类一般为多个,从多个角度对待检测流量进行表征。数据流行为特征的数量可以为一个或多个,例如各种数据流行为特征可以组成一个特征向量,这种情况下数据流行为特征即为一个;或者可以将每种数据流行为特征单独作为一个特征向量,这种情况下数据流行为特征即为多个。
S102:利用识别分类模型对数据流行为特征进行分类处理,得到分类结果。
识别分别模型为用于判断数据流行为特征是否异常的模型。识别分类模型被提前训练好,用于基于数据流行为特征对待检测流量进行分类。识别分类模型的具体类型不做限定,例如可以采用极端梯度提升模型(eXtreme Gradient Boosting,XGBoost),XGBoost模型源于梯度提升框架,但是其比梯度提升框架更加高效,原因在于极端梯度提升模型算法能够执行计算,能够近似建树,并能够对稀疏数据进行有效处理,同时还可以对内存使用情况进行优化,这使得XGBoost模型相比于梯度提升框架具有至少10倍的速度提升,大大提升了识别分类的速度。识别分类模型的具体训练过程不做限定,可以参考相关技术,具体不再赘述。在分类处理时,可以将数据流行为特征输入识别分类模型,识别分类模型对其进行分类处理,可以得到分类结果。本实施例并不限定分类结果的具体类型和数量,其至少包括两种类型,正常和异常,在具体的实施方式中,还可以包括多种,例如可以将正常类型进一步划分分多个具体的正常子分类。
S103:若分类结果为异常,则确定待检测流量为代理流量。
若分类结果为异常,则说明从数据流行为特征的角度来说,待检测流量为非正常的代理流量,例如为经过Shadowsocks工具处理过后的代理流量,因此确定待检测流量为代理流量,完成对代理流量的检出。本申请通过提取待检测流量对应的数据流行为特征,可以不需要对数据包的具体内容进行检测即可进行代理流量的检测,即使代理流量经过端口伪装和加密,同样可以检出代理流量,提高了对代理流量的检测能力。
应用本申请实施例提供的代理流量检测方法,在获取到待检测流量后,并不提取其具体内容,而是提取对应的数据流行为特征。数据流行为特征为基于待检测流量的网络通信情况得到的特征,其可以体现会话连接、数据流通讯等网络通信方面的特征,例如数据包长度、连接速率、数据包时间间隔等,其与数据包的具体内容无关。不同的应用类型在会话连接或数据流等网络通信方面的的特征各有不同,利用识别分类模型对数据流行为特征进行分类,可以从待检测流量的行为特征方面对其类型进行检测,若分类结果为异常,则可以确定待检测流量为代理流量,即该流量隐藏了自身身份。相比于相关技术,该方法并不关注流量中各个数据包的具体内容,而是从流量的网络通信情况方面的特征方面对待检测流量进行检测,因此能够检出经过端口伪装或加密传输的代理流量,具有较强的检测能力,解决了相关技术的检测能力较弱的问题。
基于上述实施例,下面对上述实施例中若干步骤的执行过程进行具体的阐述。其中,为了提高代理流量检测的准确率,同时减少计算资源的消耗,可以对直接获取到的初始流量进行过滤,并将过滤后剩下的初始流量确定为待检测流量。请参考图2,图2为本申请实施例提供的一种待检测流量获取过程流程图,获取待检测流量的步骤可以包括:
S201:获取初始流量,并提取初始流量中数据字符对应的字符熵。
本实施例中,初始流量为直接获取得到的网络流量。具体的,可以在获取网络流量后提取其五元组信息,五元组信息包括源IP、目的IP、源端口、目的端口、协议类型,需要说明的是,五元组信息中的源端口和目的端口并不需要为真实的端口,其可以为经过端口伪装处理后的端口号。五元组信息用于在复杂的网络流量中定位各个初始流量对应的数据包,以便准确地识别、分流并获取初始流量。
在获取初始流量后,可以提取其中数据字符对应的字符熵。其中,数据字符即为各个数据包的明文字符,该数据字符可能为原始数据的字符,或者可能为经过加密处理的数据的字符。熵是体系混乱程度的度量参数,熵增原理不仅可以用来描述化学反应,亦可用于更广泛的领域。热熵是系统混乱度的量度,熵越大系统越混乱。而信息熵表示事态不确定度的量度,与热熵相反,信息熵增大则意味着事态的混乱度减少。在本实施例中,字符熵属于信息熵的一种,其可以表示数据字符的混乱程度。对于正常的未加密的数据,其数据包中的数据字符具有一定规律,而数据字符规律会导致其字符熵较大。加密算法会使得数据包中的数据字符更加随机,起到加密的作用,因此其对应的字符熵较小。本实施例并不限定字符熵的具体计算方式,可以采用任意计算信息熵的计算方式。
S202:判断字符熵是否处于第一预设区间。
在获取字符熵后,将其与第一预设区间进行比较。第一预设区间的具体大小不做限定,其对应于待检测流量。根据字符熵的定义,可以确定第一预设区间应该覆盖字符熵可选区间中较小的一个部分,即将字符熵较小的部分对应的初始流量确定为待检测流量。若字符熵处于第一预设区间,可以执行S203步骤;若字符熵不处于第一预设区间,可以执行S204步骤。
S203:若处于第一预设区间,则确定初始流量为待检测流量。
若字符熵处于第一预设区间,则说明初始流量的数据字符排列随机性较强,很可能为经过加密的代理流量,因此可以将其确定为待检测流量。
S204:若不处于第一预设区间,则确定初始流量不为待检测流量。
若字符熵不处于第一预设区间,则说明初始流量没有经过加密,而未经过加密的流量可以被认为不可能是代理流量,因此确定初始流量不是待检测流量。
需要说明的是,在另一种可行的实施方式中,还可以将初始流量中的各个数据包以文本形式展示,并判断其是否具有不可见字符。不可见字符即为在文本形式下无法展示的字符,加密流量中会存在大量的不可见字符,在确定存在不可见字符后可以统计其数量,判断是否大于阈值,若大于阈值则可以确定初始流量为待检测流量,或者执行提取初始流量中数据字符对应的字符熵的步骤。
应用本申请实施例提供的代理流量检测方法,可以从字符熵的角度对初始流量进行过滤,将明显不是代理流量的初始流量滤除,避免后续对其进行处理造成的计算资源的浪费,同时防止其对代理流量检测造成干扰,保证代理流量检测的准确性。
进一步,基于上述实施例,本实施例将说明另一种待检测流量获取方式。请参考图3,图3为本申请实施例提供的另一种待检测流量获取过程流程图,获取待检测流量的步骤可以包括:
S301:获取初始流量,并对初始流量中的数据包进行控制信息检测,得到目标数据包。
不同的应用的通信过程中,受其自身采用的协议的限制以及基于实际的需求(例如为了保证通信的质量),在数据通信过程中需要以数据包的形式发送固定的控制信息,而代理流量同样会发送其特殊的控制信息。控制信息的具体内容不做限定,需要说明的是,控制信息的发送具有一定的规则,基于代理流量的控制信息发送规则可以对初始流量中的数据包进行检测,即可检测到用于发送代理流量对应的控制信息的数据包,即目标数据包。本实施例并不限定控制信息发送规则的具体内容,基于不同方式或工具生成的代理流量对应的控制信息发送规则可以不同。
具体的,在一种具体的实施方式中,针对经过Shadowsocks工具处理过后的代理流量,S301步骤具体可以包括:
步骤11:判断初始流量中是否存在相邻的目标下行数据包。
相邻的目标下行数据包为具有第一标志,且数据包长度相同的相邻下行数据包,其中,第一标志为[PSH,ACK]标志。在对初始流量进行检测时,若检测到两个相邻的下行数据包长度相同且均具有第一标志,则说明其可能为传输控制信息的目标数据包,因此进入步骤12进行进一步判定。
步骤12:若存在相邻的目标下行数据包,则判断目标下行数据包之间是否存在具有第二标志的上行数据包。
在确定存在相邻的目标下行数据包后,进一步检测两个目标下行数据包之间是否存在具有第二标志的上行数据包,其中,第二标志为[SYN,ACK]。若存在上述上行数据包,则可以确定其用于发送控制信息。
步骤13:若存在上行数据包,则确定上行数据包和目标下行数据包为目标数据包。
在本实施例中,可以将两个下行数据包和一个上行数据包均确定为目标数据包,在另一种可行的实施方式中,还可以仅将上行数据包,或全部的下行数据包,或部分下行数据包确定为目标数据包,本实施例对此不做限定。
需要说明的是,上述仅为一种具体的数据包确定方式,在一种可能的实施方式中,初始流量中可能存在满足不同规则的不同目标数据包,在这种情况下,可以分别将其确定为第一目标数据包、第二目标数据包等,并在后续分别对第一目标数据包、第二目标数据包进行处理。
S302:统计目标数据包对应的数量,并判断数量是否处于第二预设区间。
由于在正常的流量中也可能偶尔会使用代理流量使用的控制信息,因此在检测到代理流量对应的控制信息所处的数据包后,还可以进一步统计其数量,并判断数量是否处于第二预设区间。正常流量中代理流量对应的控制信息必然不会频繁出现,而代理流量中代理流量对应的控制信息则必然会频繁出现,因此通过统计目标数据包的数量可以对初始流量是否为代理流量进行检测。可以理解的是,若目标数据包的种类存在多个,则可以分别统计其对应的第一数量、第二数量等,并分别与对应的第二预设区间进行比较,各类目标数据包对应的第二预设区间可以相同也可以不同。
S303:若处于第二预设区间,则确定初始流量为待检测流量。
若数量处于第二预设区间,则说明初始流量中目标数据包的数量较多,因此其可能为代理流量,将初始流量确定为待检测流量。
S304:若不处于第二预设区间,则确定初始流量不为待检测流量。
若数量不处于第二预设区间,则说明初始流量中目标数据包的数量较少,代理流量发送如此少的控制信息无法正常工作,因此可以确定初始流量不为待检测流量。
应用本申请实施例提供的代理流量检测方法,可以从控制信息的角度对初始流量进行过滤,将明显不是代理流量的初始流量滤除,避免后续对其进行处理造成的计算资源的浪费,同时防止其对代理流量检测造成干扰,保证代理流量检测的准确性。
进一步,基于上述实施例,本实施例将说明另一种待检测流量获取方式。请参考图4,图4为本申请实施例提供的另一种待检测流量获取过程流程图,获取待检测流量的步骤可以包括:
S401:获取初始流量,并提取初始流量中各个数据包对应的数据包长度。
在网络数据传输过程中,应用都遵循自身使用的数据协议,由于各个数据协议指定的通信规则间均在一定的差异,这样会导致数据传输过程中流量中的数据包长度也存在一定的差异性,不同的应用惯用的数据包长度不同,因此可以统计初始流量中各个数据包对应的数据包长度,以便在后续根据其所处区间的概率对初始流量是否可能为代理流量进行识别。
S402:计算数据包长度处于第三预设区间内的目标比例。
第三预设区间为代理流量的数据包大部分分布的数据区间,因此在得到各个数据包对应的数据包长度后,判断各个数据包长度处于第三预设区间的比例,即目标比例,并将其与预设比例阈值进行比较。可以理解的是,第三预设区间的具体数量不做限定,例如针对经过Shadowsocks工具处理过后的代理流量,其数据包长度大部分分布在40-79的区间内,且其对应的大多数数据包为固定大小,例如为60。针对不同的代理流量,对应的第三预设区间可以不同,在存在多个第三预设区间的情况下,需要分别计算数据包长度处于各个第三预设区间的目标比例,可以采用第一目标比例、第二目标比例等进行区分。
S403:若目标比例大于预设比例阈值,则确定初始流量为待检测流量。
S404:若目标比例不大于预设比例阈值,则确定初始流量不为待检测流量。
若目标比例大于预设比例阈值,则说明初始流量中长度处于第三预设区间内的数据包较多,可能为待检测流量,因此将初始流量确定为待检测流量,反之确定初始流量不为待检测流量。
应用本申请实施例提供的代理流量检测方法,可以从数据包长度的角度对初始流量进行过滤,将明显不是代理流量的初始流量滤除,避免后续对其进行处理造成的计算资源的浪费,同时防止其对代理流量检测造成干扰,保证代理流量检测的准确性。
需要说明的是,上述几种待检测流量获取方式可以单独执行,即仅执行之中一种方式获取待检测流量,或者可以选用其中若干项执行,具体执行顺序可以为串行或并行。
基于上述实施例,在一种可行的实施方式中,提取待检测流量对应的数据流行为特征的步骤可以包括:
步骤21:提取待检测流量对应的数据包长度信息、数据包间隔信息、数据包数量信息。
为了从多个角度对待检测流量进行表征,本实施例中提取待检测流量对应的数据包长度信息、数据包间隔信息和数据包数量信息用于生成数据流行为特征。本实施例并不限定数据包长度信息、数据包间隔信息、数据包数量信息的具体内容,数据包长度信息可以包括各个数据包的长度、数据包总长度、上行数据包总长度、下行数据包总长度、数据包长度信息熵、数据包长度平均值、数据包长度方差等多项信息。数据包间隔信息可以包括各个数据包之间的时间间隔、上行数据包时间间隔、下行数据包时间间隔、数据包平均到底时间间隔等多项信息。数据包数量信息可以包括上行数据包数量、下行数据包数量、数据包总数量等多项信息。
步骤22:利用数据包长度信息、数据包间隔信息和数据包数量信息生成数据流行为特征。
本实施例并不限定生成数据流行为特征的具体方式,例如可以单独利用数据包长度信息、数据包间隔信息或数据包数量信息生成数据流行为特征,或者可以利用数据包长度信息、数据包间隔信息和数据包数量信息中的若干项信息共同生成数据流行为特征。
应用本申请实施例提供的代理流量检测方法,可以从多个方面生成待检测流量的数据流行为特征,以便对待检测流量进行全面的表征,提高代理流量的检测准确率。
基于上述实施例,在一种可行的实施方式中,在进行识别时,可以对数据流行为特征进行降维,以便提高识别速度和准确性。具体的,将数据流行为特征输入识别分类模型,得到分类结果的步骤可以包括:
步骤31:对数据流行为特征进行基于皮尔逊积矩相关系数的主成分分析处理,得到第一特征。
步骤32:将第一特征输入识别分类模型,得到分类结果。
皮尔逊积矩相关系数(Pearson product-moment correlation coefficient,PPMCC)用于度量两个变量X和Y之间的相关程度,其取值范围为-1到1。主成分分析(Principal Component Analysis,PCA)是一种统计方法,其通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。其基本思想是设法将原来众多具有一定相关性的参数指标(比如P个参数),重新组合成一组新的互相无关的综合指标来代替原来的指标,从而达到保留相关对象特征的前提下,减少指标数量的目的。在本实施例中,利用皮尔逊积矩相关系数作为主成分分析中的相关性指标,对数据流行为特征进行降维处理,得到第一特征,并利用识别分类模型对第一特征进行识别分类,得到对应的分类结果。
应用本申请实施例提供的代理流量检测方法,通过对数据流行为特征进行降维得到第一特征,可以减少特征向量的数量,以便提高识别速度和准确性。
请参考图5,图5为本申请实施例提供的一种具体的代理流量检测过程流程图。在获取流量后,对其进行预处理,例如获取五元组,根据五元组从中确定初始流量,在确定初始流量后,对其进行多重过滤,判断初始流量是否满足过滤条件。本实施例中,过滤条件即为确定为待检测流量的条件。若不满足过滤条件,则结束对初始流量的检测。若满足过滤条件,则将初始流量确定为待检测流量,并将数据流行为特征输入XGBoost分类器进行识别分类。需要说明的是,数据流行为特征可以在预处理阶段提取,也可以在确定满足过滤条件后提取。在分类后,根据分类结果判断待检测流量是否属于Shadowsocks流量,并在确定是Shadowsocks流量后生成对应的事件报警,即进行代理流量报警。
下面对本申请实施例提供的代理流量检测装置进行介绍,下文描述的代理流量检测装置与上文描述的代理流量检测方法可相互对应参照。
请参考图6,图6为本申请实施例提供的一种代理流量检测装置的结构示意图,包括:
获取模块110,用于获取待检测流量,并确定所述待检测流量对应的数据流行为特征;所述数据流行为特征为表现所述待检测流量的网络通信情况的特征;
分类模块120,用于利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果;
确定模块130,用于若分类结果为异常,则确定待检测流量为代理流量。
应用本申请实施例提供的代理流量检测装置,在获取到待检测流量后,并不提取其具体内容,而是提取对应的数据流行为特征。数据流行为特征为基于待检测流量的网络通信情况得到的特征,其可以体现会话连接、数据流通讯等网络通信方面的特征,例如数据包长度、连接速率、数据包时间间隔等,其与数据包的具体内容无关。不同的应用类型在会话连接或数据流等网络通信方面的的特征各有不同,利用识别分类模型对数据流行为特征进行分类,可以从待检测流量的行为特征方面对其类型进行检测,若分类结果为异常,则可以确定待检测流量为代理流量,即该流量隐藏了自身身份。相比于相关技术,该装置并不关注流量中各个数据包的具体内容,而是从流量的网络通信情况方面的特征方面对待检测流量进行检测,因此能够检出经过端口伪装或加密传输的代理流量,具有较强的检测能力,解决了相关技术的检测能力较弱的问题。
可选地,获取模块110,包括:
信息提取单元,用于提取待检测流量对应的数据包长度信息、数据包间隔信息、数据包数量信息;
特征生成单元,用于利用数据包长度信息、数据包间隔信息和数据包数量信息生成数据流行为特征。
可选地,获取模块110,包括:
字符熵提取单元,用于获取初始流量,并提取初始流量中数据字符对应的字符熵;
第一判断单元,用于判断字符熵是否处于第一预设区间;
第一确定单元,用于若处于第一预设区间,则确定初始流量为待检测流量。
可选地,获取模块110,包括:
目标数据包获取单元,用于获取初始流量,并对初始流量中的数据包进行控制信息检测,得到目标数据包;
第二判断单元,用于统计目标数据包对应的数量,并判断数量是否处于第二预设区间;
第二确定单元,用于若处于第二预设区间,则确定初始流量为待检测流量。
可选地,目标数据包获取单元,包括:
目标下行数据包判断子单元,用于判断初始流量中是否存在相邻的目标下行数据包;目标下行数据包具有第一标志且数据包长度相同;
上行数据包判断子单元,用于若存在相邻的目标下行数据包,则判断目标下行数据包之间是否存在具有第二标志的上行数据包;
目标数据包确定子单元,用于若存在上行数据包,则确定上行数据包和目标下行数据包为目标数据包。
可选地,获取模块110,包括:
数据包长度获取单元,用于获取初始流量,并提取初始流量中各个数据包对应的数据包长度;
比例计算单元,用于计算数据包长度处于第三预设区间内的目标比例;
第五确定单元,用于若目标比例大于预设比例阈值,则确定初始流量为待检测流量。
可选地,分类模块120,包括:
降维处理单元,用于对数据流行为特征进行基于皮尔逊积矩相关系数的主成分分析处理,得到第一特征;
识别分类单元,用于将第一特征输入识别分类模型,得到分类结果。
需要说明的是,基于上述任意实施例,装置可以是基于可编程逻辑器件实现的,可编程逻辑器件包括FPGA,CPLD,单片机、处理器等。这些可编程逻辑器件可以设置在电子设备中。
下面对本申请实施例提供的电子设备进行介绍,下文描述的电子设备与上文描述的代理流量检测方法可相互对应参照。
请参考图7,图7为本申请实施例提供的一种代理流量检测方法所适用的一种硬件组成框架示意图。其中电子设备100可以包括处理器101和存储器102,还可以进一步包括多媒体组件103、信息输入/信息输出(I/O)接口104以及通信组件105中的一种或多种。
其中,处理器101用于控制电子设备100的整体操作,以完成上述的代理流量检测方法中的全部或部分步骤;存储器102用于存储各种类型的数据以支持在电子设备100的操作,这些数据例如可以包括用于在该电子设备100上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器102可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-OnlyMemory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。在本实施例中,存储器102中至少存储有用于实现以下功能的程序和/或数据:
获取待检测流量,并确定待检测流量对应的数据流行为特征;数据流行为特征为表现待检测流量的网络通信情况的特征;
利用识别分类模型对数据流行为特征进行分类处理,得到分类结果;
若分类结果为异常,则确定待检测流量为代理流量。
多媒体组件103可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器102或通过通信组件105发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口104为处理器101和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件105用于电子设备100与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件105可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
电子设备100可以被一个或多个应用专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的代理流量检测方法。
当然,图7所示的电子设备100的结构并不构成对本申请实施例中电子设备的限定,在实际应用中电子设备100可以包括比图7所示的更多或更少的部件,或者组合某些部件。
可以理解的是,本申请实施例中并不对电子设备的数量进行限定,其可以是多个电子设备共同协作完成代理流量检测方法。在一种可能的实施方式中,请参考图8,图8为本申请实施例提供的另一种代理流量检测方法所适用的硬件组成框架示意图。由图8可知,该硬件组成框架可以包括:第一电子设备11和第二电子设备12,二者之间通过网络13连接。
在本申请实施例中,第一电子设备11与第二电子设备12的硬件结构可以参考图7中电子设备100。即可以理解为本实施例中具有两个电子设备100,两者进行数据交互,实现检出代理流量的效果。进一步,本申请实施例中并不对网络13的形式进行限定,即,网络13可以是无线网络(如WIFI、蓝牙等),也可以是有线网络。
其中,第一电子设备11和第二电子设备12可以是同一种电子设备,如第一电子设备11和第二电子设备12均为服务器;也可以是不同类型的电子设备,例如,第一电子设备11可以是网关或路由器,第二电子设备12可以是服务器。在一种可能的实施方式中,可以利用计算能力强的服务器作为第二电子设备12来提高数据处理效率及可靠性。同时利用成本低,应用范围广的网关或路由器作为第一电子设备11,用于实现第二电子设备12与操作端(即待检测流量的发送端)之间的交互。该交互过程可以为:操作端发送待检测流量,由第一电子设备11对待检测流量进行特征提取,在得到数据流行为特征后,将数据流行为特征发送给第二电子设备12,以便第二电子设备12继续执行后续的步骤,直至得到待检测流量是否为代理流量的结果。
下面对本申请实施例提供的计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的代理流量检测方法可相互对应参照。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的代理流量检测方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (9)

1.一种代理流量检测方法,其特征在于,包括:
获取待检测流量,并确定所述待检测流量对应的数据流行为特征;所述数据流行为特征为表现所述待检测流量的网络通信情况的特征;
利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果;
若所述分类结果为异常,则确定所述待检测流量为代理流量;
所述获取待检测流量,包括:
获取初始流量,并对所述初始流量中的数据包进行控制信息检测,得到目标数据包;
统计所述目标数据包对应的数量,并判断所述数量是否处于第二预设区间;
若处于所述第二预设区间,则确定所述初始流量为所述待检测流量。
2.根据权利要求1所述的代理流量检测方法,其特征在于,所述确定所述待检测流量对应的数据流行为特征,包括:
提取所述待检测流量对应的数据包长度信息、数据包间隔信息、数据包数量信息;
利用所述数据包长度信息、所述数据包间隔信息和所述数据包数量信息生成所述数据流行为特征。
3.根据权利要求1所述的代理流量检测方法,其特征在于,所述获取待检测流量,包括:
获取初始流量,并提取所述初始流量中数据字符对应的字符熵;
判断所述字符熵是否处于第一预设区间;
若处于所述第一预设区间,则确定所述初始流量为所述待检测流量。
4.根据权利要求1所述的代理流量检测方法,其特征在于,所述对所述初始流量中的数据包进行控制信息检测,得到目标数据包,包括:
判断所述初始流量中是否存在相邻的目标下行数据包;所述目标下行数据包具有第一标志且数据包长度相同;
若存在相邻的所述目标下行数据包,则判断所述目标下行数据包之间是否存在具有第二标志的上行数据包;
若存在所述上行数据包,则确定所述上行数据包和所述目标下行数据包为所述目标数据包。
5.根据权利要求1所述的代理流量检测方法,其特征在于,所述获取待检测流量,包括:
获取初始流量,并提取所述初始流量中各个数据包对应的数据包长度;
计算所述数据包长度处于第三预设区间内的目标比例;
若所述目标比例大于预设比例阈值,则确定所述初始流量为所述待检测流量。
6.根据权利要求1至5任一项所述的代理流量检测方法,其特征在于,所述利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果,包括:
对所述数据流行为特征进行基于皮尔逊积矩相关系数的主成分分析处理,得到第一特征;
将所述第一特征输入所述识别分类模型,得到所述分类结果。
7.一种代理流量检测装置,其特征在于,包括:
获取模块,用于获取待检测流量,并确定所述待检测流量对应的数据流行为特征;所述数据流行为特征为基于所述待检测流量的网络通信情况得到的特征;
分类模块,用于利用识别分类模型对所述数据流行为特征进行分类处理,得到分类结果;
确定模块,用于若所述分类结果为异常,则确定所述待检测流量为代理流量;
获取模块,包括:
目标数据包获取单元,用于获取初始流量,并对初始流量中的数据包进行控制信息检测,得到目标数据包;
第二判断单元,用于统计目标数据包对应的数量,并判断数量是否处于第二预设区间;
第二确定单元,用于若处于第二预设区间,则确定初始流量为待检测流量。
8.一种电子设备,其特征在于,包括存储器和处理器,其中:
所述存储器,用于保存计算机程序;
所述处理器,用于执行所述计算机程序,以实现如权利要求1至6任一项所述的代理流量检测方法。
9.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的代理流量检测方法。
CN202011417347.8A 2020-12-07 2020-12-07 一种代理流量检测方法、装置、电子设备及可读存储介质 Active CN112769633B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011417347.8A CN112769633B (zh) 2020-12-07 2020-12-07 一种代理流量检测方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011417347.8A CN112769633B (zh) 2020-12-07 2020-12-07 一种代理流量检测方法、装置、电子设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN112769633A CN112769633A (zh) 2021-05-07
CN112769633B true CN112769633B (zh) 2022-08-09

Family

ID=75693717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011417347.8A Active CN112769633B (zh) 2020-12-07 2020-12-07 一种代理流量检测方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN112769633B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114422174B (zh) * 2021-12-09 2023-07-25 绿盟科技集团股份有限公司 一种网络流量过滤方法、装置、介质和设备
CN114422442B (zh) * 2022-01-19 2023-10-20 中国工商银行股份有限公司 多维动态分组限流方法、装置、设备及存储介质
CN114650259B (zh) * 2022-03-10 2023-05-26 中国电子科技集团公司第三十研究所 一种分层级检测的vpn工具精细化分类方法
CN114978585B (zh) * 2022-04-12 2024-02-27 国家计算机网络与信息安全管理中心 基于流量特征的深度学习对称加密协议识别方法
CN115174160B (zh) * 2022-06-16 2023-10-20 广州大学 基于流级和主机级的恶意加密流量分类方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111181923A (zh) * 2019-12-10 2020-05-19 中移(杭州)信息技术有限公司 流量检测方法、装置、电子设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102122913B1 (ko) * 2014-05-30 2020-06-26 삼성에스디에스 주식회사 분산형 api 프록시 시스템 및 그러한 시스템에서 트래픽을 관리하는 장치 및 방법
KR102045844B1 (ko) * 2018-04-18 2019-11-18 한국전자통신연구원 클라우드 시스템의 플로우 기반 트래픽 분석 방법 및 장치
CN110768933B (zh) * 2018-07-27 2022-08-09 深信服科技股份有限公司 一种网络流量应用识别方法、系统及设备和存储介质
CN109361619A (zh) * 2018-12-27 2019-02-19 北京天融信网络安全技术有限公司 一种流量分类方法及电子设备
CN111464485A (zh) * 2019-01-22 2020-07-28 北京金睛云华科技有限公司 一种加密代理流量检测方法和装置
CN110784383B (zh) * 2019-12-05 2023-04-18 南京邮电大学 Shadowsocks代理网络流量检测方法、存储介质和终端
CN111935170B (zh) * 2020-08-20 2022-06-07 杭州安恒信息技术股份有限公司 一种网络异常流量检测方法、装置及设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111181923A (zh) * 2019-12-10 2020-05-19 中移(杭州)信息技术有限公司 流量检测方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112769633A (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN112769633B (zh) 一种代理流量检测方法、装置、电子设备及可读存储介质
CN111277587A (zh) 基于行为分析的恶意加密流量检测方法及系统
Chen et al. Using rough set and support vector machine for network intrusion detection
CN107968791B (zh) 一种攻击报文的检测方法及装置
US10841228B2 (en) Abnormal flow detection device and abnormal flow detection method thereof
US20150229669A1 (en) Method and device for detecting distributed denial of service attack
Chen et al. Using rough set and support vector machine for network intrusion detection system
KR20200052881A (ko) 멀웨어 호스트 넷플로우 분석 시스템 및 방법
CN110611640A (zh) 一种基于随机森林的dns协议隐蔽通道检测方法
CN110768933A (zh) 一种网络流量应用识别方法、系统及设备和存储介质
JP2006279930A (ja) 不正アクセス検出方法及び装置、並びに不正アクセス遮断方法及び装置
Yan et al. Identifying wechat red packets and fund transfers via analyzing encrypted network traffic
TWI615730B (zh) 以應用層日誌分析為基礎的資安管理系統及其方法
CN111371774A (zh) 一种信息处理方法及装置、设备、存储介质
Shi et al. Source identification of encrypted video traffic in the presence of heterogeneous network traffic
Salih et al. Detection and classification of covert channels in IPv6 using enhanced machine learning
WO2016201876A1 (zh) 一种加密流量的业务识别方法、装置和计算机存储介质
CN116112287A (zh) 基于时空关联的网络攻击组织追踪方法与装置
CN115603995A (zh) 一种信息处理方法、装置、设备及计算机可读存储介质
CN115314322A (zh) 基于流量的漏洞检测确认方法、装置、设备以及存储介质
CN114640496A (zh) 一种流量传输控制方法、装置、电子设备和存储介质
CN112565179B (zh) 一种针对加密代理通道内应用层协议的检测方法
CN114884715A (zh) 一种流量检测方法、检测模型训练方法、装置及相关设备
CN114513369B (zh) 基于深度报文检测的物联网行为分析方法及系统
CN110837619B (zh) 一种网站审核的方法、装置、设备和存储介质

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
GR01 Patent grant
GR01 Patent grant