CN115499184A - 网络代理服务的识别方法及装置、电子设备、存储介质 - Google Patents

网络代理服务的识别方法及装置、电子设备、存储介质 Download PDF

Info

Publication number
CN115499184A
CN115499184A CN202211086073.8A CN202211086073A CN115499184A CN 115499184 A CN115499184 A CN 115499184A CN 202211086073 A CN202211086073 A CN 202211086073A CN 115499184 A CN115499184 A CN 115499184A
Authority
CN
China
Prior art keywords
target website
webpage
stage
user
network 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.)
Pending
Application number
CN202211086073.8A
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 Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software 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 Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202211086073.8A priority Critical patent/CN115499184A/zh
Publication of CN115499184A publication Critical patent/CN115499184A/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/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/164Implementing security features at a particular protocol layer at the network layer
    • 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/168Implementing security features at a particular protocol layer above the transport layer

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)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供一种网络代理服务的识别方法及装置、电子设备、存储介质,方法包括:统计访问目标网站的各个会话的延时参数;其中,延时参数包括第一阶段延时和第二阶段延时;判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;若多个第一阶段延时符合帕累托分布,且多个第二阶段延时不符合帕累托分布,确定多个第二阶段延时的均值与多个第一阶段延时的均值之间的目标差值;判断目标差值是否大于预设时长阈值,若是,确定目标网站为存在网络代理嫌疑;针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。本申请方案,在无法解析加密数据的具体内容的情况下,准确识别出提供网络代理服务的网站。

Description

网络代理服务的识别方法及装置、电子设备、存储介质
技术领域
本申请涉及网络安全技术领域,特别涉及一种网络代理服务的识别方法及装置、电子设备、计算机可读存储介质。
背景技术
信息化的飞速发展使得个人隐私和信息安全问题越来越被重视。Shadowsocks等匿名通信软件,凭借其稳定性及安全性被大量使用,并逐渐成为网民们突破访问限制的主流加密通信软件。要对这类流量进行监管,首要任务是识别匿名流量。
近几年随着GFW(Great Fire Wall,长城防火墙)不断升级,主流匿名通信软件开始将其代理传输的网络流量伪装成普通的Web网页流量来逃避检测。典型的例子是Trojan服务,参见图1,为本申请一实施例提供的Trojan服务的原理示意图,如图1所示,Trojan服务工作在443端口。服务器上的Trojan服务端从443端口接收到HTTPS(Hyper TextTransfer Protocol over Secure Socket Layer,超文本传输安全协议)流量,并检查HTTPS流量是否来自Trojan客户端。如果HTTPS流量来自Trojan客户端,Trojan服务端可以为其提供代理服务;如果HTTPS流量来自普通访问者,则可以将HTTPS流量交由Web服务器(Nginx Sever)处理,为其提供服务器对外公开的Web服务。
这种情况下,Trojan服务的一切与Web服务对外保持一致,没有额外特征,无法识别出Trojan服务。对于与Trojan服务类似的网络代理服务,亟需一种有效的识别方法。
发明内容
本申请实施例的目的在于提供一种网络代理服务的识别方法及装置、电子设备、计算机可读存储介质,用于准确识别出提供网络代理服务的网站。
一方面,本申请提供了一种网络代理服务的识别方法,包括:
统计访问目标网站的各个会话的延时参数;其中,所述延时参数包括第一阶段延时和第二阶段延时;
判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;
若所述多个第一阶段延时符合帕累托分布,且所述多个第二阶段延时不符合帕累托分布,确定所述多个第二阶段延时的均值与所述多个第一阶段延时的均值之间的目标差值;
判断所述目标差值是否大于预设时长阈值,若是,确定所述目标网站为存在网络代理嫌疑;
针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
通过上述措施,根据报文延时的统计学特征可以筛选出存在网络代理嫌疑的目标网站,进而以网页指纹技术精确判断目标网站是否提供网络代理服务,从而在无法解析加密流量具体内容的情况下,准确识别出提供网络代理服务的目标网站。
在一实施例中,在所述统计访问目标网站的各个会话的延时参数之前,所述方法还包括:
接收到访问所述目标网站的流量后,判断所述目标网站是否处于白名单;
若否,继续执行所述统计访问目标网站的各个会话的延时参数的步骤。
通过上述措施,可以滤除已经位于白名单的网站,从而降低电子设备的工作量,提供电子设备的工作效率。
在一实施例中,在所述统计访问目标网站的各个会话的延时参数之后,所述方法还包括:
统计所述目标网站的响应报文中的数据长度;
判断所述数据长度是否小于预设长度阈值;
如果否,结束对所述目标网站的识别流程;
如果是,继续执行所述判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布的步骤。
通过上述措施,可以筛选出返回数据较小的目标网站,使得电子设备在计算资源有限的情况下,对更多数量的网站进行网络代理功能的识别任务。
在一实施例中,所述针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务,包括:
为所述目标网站构建站点指纹库;其中,所述站点指纹库包括所述目标网站的若干网页指纹;
抓取指定时间段内所述目标网站的访问数据;其中,所述访问数据包括对应于每一用户的用户访问数据;
针对任一用户,根据该用户的用户访问数据,构建该用户所访问的多个网页的访问特征;
根据所述多个网页的访问特征与所述若干网页指纹,确定所述多个网页中本地网页的占比;其中,所述本地网页为所述网页指纹指示的网页;
判断所述占比是否达到预设占比阈值,若否,确定所述目标网站提供网络代理服务。
通过上述措施,以网页指纹检测流程对存在网络代理嫌疑的目标网站进行判断,从而精确地确定存在网络代理行为的目标网站。
在一实施例中,所述为所述目标网站构建站点指纹库,包括:
遍历所述目标网站的每一本地网页,并为每一本地网页构建对应的网页指纹;其中网页指纹包括请求指纹向量和响应指纹向量,所述请求指纹向量基于若干请求报文的报文尺寸构建,所述响应指纹向量基于若干响应报文的报文尺寸构建。
通过上述措施,可以为目标站点构建站点指纹库。
在一实施例中,所述根据该用户的用户访问数据,构建该用户所访问的多个网页的访问特征,包括:
根据所述用户访问数据中访问每一网页的请求报文的报文尺寸,构建请求特征向量;
根据所述用户访问数据中访问每一网页的响应报文的报文尺寸,构建响应特征向量;
将每一网页对应的请求特征向量和响应特征向量,作为访问特征,获得多个网页的访问特征。
通过上述措施,电子设备可以通过用户访问数据构建用户所访问的多个网页的访问特征。
在一实施例中,所述根据所述多个网页的访问特征与所述若干网页指纹,确定所述多个网页中本地网页的占比,包括:
针对用户访问的每一网页,确定每一网页的访问特征与多个网页指纹之间的最小差异参数;
判断每一网页对应的最小差异参数是否小于预设差异阈值,若是,确定该网页为本地网页;
根据用户访问的本地网页的数量,以及用户访问的网页总量,确定所述多个网页中本地网页的占比。
通过上述措施,可以计算出用户访问的多个网页中本地网页的占比。
另一方面,本申请提供了一种网络代理服务的识别装置,包括:
统计模块,用于统计访问目标网站的各个会话的延时参数;其中,所述延时参数包括第一阶段延时和第二阶段延时;
第一判断模块,用于判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;
确定模块,用于若所述多个第一阶段延时符合帕累托分布,且所述多个第二阶段延时不符合帕累托分布,确定所述多个第二阶段延时的均值与所述多个第一阶段延时的均值之间的目标差值;
第二判断模块,用于判断所述目标差值是否大于预设时长阈值,若是,确定所述目标网站为存在网络代理嫌疑;
识别模块,用于针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
此外,本申请提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述网络代理服务的识别方法。
进一步的,本申请提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述网络代理服务的识别方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1为本申请一实施例提供的Trojan服务的原理示意图;
图2为本申请一实施例提供的电子设备的结构示意图;
图3为本申请一实施例提供的网络代理服务的识别方法的流程示意图;
图4为本申请一实施例提供的Trojan服务的交互示意图;
图5为本申请一实施例提供的网络代理识别对象的筛选方法的流程示意图;
图6为本申请一实施例提供的图3中步骤350的细节流程示意图;
图7为本申请一实施例提供的访问特征的构建方法的流程示意图;
图8为本申请一实施例提供的确定本地网页的占比的流程示意图;
图9为本申请一实施例提供的网络代理服务的识别装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图2所示,本实施例提供一种电子设备1,包括:至少一个处理器11和存储器12,图2中以一个处理器11为例。处理器11和存储器12通过总线10连接,存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使电子设备1可执行下述的实施例中方法的全部或部分流程。在一实施例中,电子设备1可以是交换机、路由器、安全检测设备、服务器等,在网络架构中位于用户和提供网络代理服务的服务器之间,用于抓取用户与服务器之间交互的数据包,从而执行网络代理服务的识别方法。
存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序可由处理器11执行以完成本申请提供的网络代理服务的识别方法。
参见图3,为本申请一实施例提供的网络代理服务的识别方法的流程示意图,如图3所示,该方法可以包括以下步骤310-步骤350。
步骤310:统计访问目标网站的各个会话的延时参数;其中,延时参数包括第一阶段延时和第二阶段延时。
目标网站为接受网络代理服务识别的网站。执行本方案的电子设备在转发用户与各个网站之间交互的流量时,确定用户所访问的网站,从而将网站作为目标网站,进行网络代理服务的识别。
每一用户访问一个网站,可以构成一个会话(session),在这个会话中进行数据交互。多个用户访问目标网站时,存在多个会话。用户向目标网站发起请求报文(request报文)与接收到目标网站返回的响应报文(response报文)之间存在延时。且由于会话过程中通信方式发生变化,一次会话过程可以分成若干阶段。
以Trojan服务为例进行说明。参见图4,为本申请一实施例提供的Trojan服务的交互示意图,如图4所示,Trojan客户端需要通过TCP(Transmission Control Protocol,传输控制协议)协议与Trojan服务端建立链路,进而在TCP层面的会话上通过SSL(SecureSockets Layer,安全套接字协议)协议与Trojan服务端建立链路。在建立链路后,Trojan客户端可以向Trojan服务端发起向外部Web网站获取数据的请求报文(图4中的HTTP GET,实际为HTTPS层面的请求报文)。Trojan服务端接收到请求报文后,根据请求报文的目的IP(Internet Protocol)确定外部Web网站,进而与外部Web网站建立TCP链路和SSL链路,并在建立链路后向外部Web网站发送请求报文,从而获得外部Web网站返回的响应报文。Trojan服务端可以将响应报文中的数据返回Trojan客户端。
可见,Trojan客户端与Trojan服务端之间的会话包括TCP阶段、SSL阶段和HTTP阶段。对此,将Trojan客户端与Trojan服务端在SSL层第一次交互的延时,作为第一阶段延时;将Trojan客户端与Trojan服务端在HTTP层第一次交互的延时,作为第二阶段延时。
此外,一些网络代理服务可以在TCP协议中根据自定义加密协议对网络代理传递的数据进行加密。这种情况下,可以将用户终端与服务端在TCP握手阶段的延时,作为第一阶段延时,将用户终端与服务端在TCP层内部加密传输阶段的第一次交互的延时,作为第二阶段延时。
针对任一目标网站,电子设备可以根据多个用户访问该目标网站的流量,统计出各个会话的第一阶段延时和第二阶段延时。第一阶段延时可记为tb,则多个会话的第一阶段延时为(tb1、tb2、tb3……tbn)。第二阶段延时可记为td,则多个会话的第二阶段延时为(td1、td2、td3……tdn)。电子设备可以以目标网站的IP地址为索引,存储多个会话的第一阶段延时和第二阶段延时。
步骤320:判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布。
在统计得到多个会话的延时参数后,电子设备可以对多个第一阶段延时(tb1、tb2、tb3……tbn)进行帕累托拟合,从而判断多个第一阶段延时是否符合帕累托分布。
一种情况下,多个第一阶段延时不符合帕累托分布,说明多个用户访问目标网站的链路不稳定,无法继续进行识别,可以放弃对目标网站的网络代理识别流程。
另一种情况下,多个第一阶段延时符合帕累托分布,电子设备可以继续对多个第二阶段延时(td1、td2、td3……tdn)进行帕累托拟合,从而判断多个第二阶段延时是否符合帕累托分布。
一方面,若多个第二阶段延时符合帕累托分布,则目标网站对应的多个第一阶段延时和多个第二阶段延时分别符合帕累托分布,此时,可以认定目标网站不存在网络代理行为。另一方面,若多个第二阶段延时不符合帕累托分布,则可以继续执行步骤330。
步骤330:若多个第一阶段延时符合帕累托分布,且多个第二阶段延时不符合帕累托分布,确定多个第二阶段延时的均值与多个第一阶段延时的均值之间的目标差值。
在多个第一阶段延时符合帕累托分布,并且多个第二阶段延时不符合帕累托分布的情况下,电子设备可以根据多个第一阶段延时计算均值tb_average,并根据多个第二阶段延时计算均值td_average。电子设备可以将多个第二阶段延时的均值td_average减去多个第一阶段延时的均值tb_average,从而得到目标差值。
步骤340:判断目标差值是否大于预设时长阈值,若是,确定目标网站为存在网络代理嫌疑。
其中,时长阈值为预配置的经验值,用于筛选存在网络代理嫌疑的网站。
电子设备判断目标差值是否大于时长阈值(比如:40毫秒)。一种情况下,目标差值不大于时长阈值,可以确定目标网站不存在网络代理嫌疑,结束识别流程。另一种情况下,目标差值大于时长阈值,可以确定目标网站存在网络代理嫌疑,此时,可以继续执行步骤350。
步骤350:针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
对于存在网络代理嫌疑的目标网站,电子设备可以通过网页指纹比对的方式,检查目标网站所提供的数据是否与其自身的本地网页相匹配,从而确定目标网站是否提供网络代理服务。
通过上述措施,根据报文延时的统计学特征可以筛选出存在网络代理嫌疑的目标网站,进而以网页指纹技术精确判断目标网站是否提供网络代理服务,从而在无法解析加密流量具体内容的情况下,准确识别出提供网络代理服务的目标网站。
在一实施例中,电子设备在统计访问目标网站的各个会话的延时参数之前,在接收到访问目标网站的流量后,可以判断目标网站是否处于白名单。其中,白名单用于记录无需进行网络代理服务识别的网站。白名单可以包括预配置的行业共享白名单,也可以包括电子设备在识别网络代理服务过程中已鉴定为不提供网络代理服务的网站。
一种情况下,目标网站处于白名单中,则无需重新识别目标网站的网络代理行为。另一种情况下,目标网站未处于白名单中,电子设备可以继续执行统计访问目标网站的各个会话的延时参数的步骤。
通过上述措施,可以滤除已经位于白名单的网站,从而降低电子设备的工作量,提供电子设备的工作效率。
在一实施例中,参见图5,为本申请一实施例提供的网络代理识别对象的筛选方法的流程示意图,如图5所示,该方法可以包括如下步骤510至步骤540。
步骤510:统计目标网站的响应报文中的数据长度。
电子设备在统计访问目标网站的各个会话的延时参数之后,还可以统计目标网站中响应报文中的数据长度。针对每一会话,可以根据多个响应报文的数据长度,确定会话中一次交互后完整数据的数据长度。因此,电子设备可以统计得到多个会话对应的数据长度。
步骤520:判断数据长度是否小于预设长度阈值。
电子设备可以从目标网站对应的多个数据长度中,选择中位数或平均数,或者,随机从中选择一个数据长度,进而判断是否小于长度阈值。其中,长度阈值可以是经验值,用于筛选易于后续网页指纹检测的网站。
步骤530:如果否,结束对目标网站的识别流程。
如果数据长度不小于长度阈值,则目标网站向用户返回的是大文件(比如:视频、软件安装包等),这种情况下,后续对目标网站进行网页指纹检测会消耗大量计算资源。为保证电子设备能够有足够计算资源,对更多网站进行网络代理服务的识别,电子设备可以结束对该目标网站的识别流程。
步骤540:如果是,继续执行判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布的步骤。
如果数据长度小于长度阈值,电子设备可以继续执行判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布的步骤。
通过上述措施,可以筛选出返回数据较小的目标网站,使得电子设备在计算资源有限的情况下,对更多数量的网站进行网络代理功能的识别任务。
在一实施例中,参见图6,为本申请一实施例提供的图3中步骤350的细节流程示意图,如图6所示,网页指纹检测流程包括如下步骤351至步骤355。
步骤351:为目标网站构建站点指纹库;其中,站点指纹库包括目标网站的若干网页指纹。
电子设备可以为目标网站的每一网页生成网页指纹,从而基于多个网页指纹构建目标网站的站点指纹库。
步骤352:抓取指定时间段内目标网站的访问数据;其中,访问数据包括对应于每一用户的用户访问数据。
其中,指定时间段是预配置的抓取访问数据的时间段。示例性的,可以指定抓取一天、一周的访问数据。
在构建站点指纹库后,电子设备可以抓取指定时间段内若干用户访问该目标网站的访问数据。电子设备可以依据不同用户,将访问数据划分为对应于每一用户的用户访问数据。
步骤353:针对任一用户,根据该用户的用户访问数据,构建该用户所访问的多个网页的访问特征。
电子设备可以选择多个用户的用户访问数据,针对任一用户,以该用户的用户访问数据构建该用户所访问的多个网页的访问特征。
步骤354:根据多个网页的访问特征与若干网页指纹,确定多个网页中本地网页的占比;其中,本地网页为网页指纹指示的网页。
针对任一网页,电子设备可以对该网页的访问特征和站点指纹库中的若干网页指纹进行比对,从而确定该网页是否为本地网页。对用户所访问的多个网页均进行判断后,可以确定多个网页中本地网页的占比。
步骤355:判断占比是否达到预设占比阈值,若否,确定目标网站提供网络代理服务。
其中,占比阈值可以为经验值,作为目标网站是否提供网络代理服务的判断依据。示例性的,占比阈值可以为50%。
电子设备在计算出多个网页中本地网页的占比后,判断该占比是否达到占比阈值。一种情况下,该占比小于占比阈值,可以确定目标网站提供网络代理服务。另一种情况下,该占比大于等于占比阈值,可以确定目标网站未提供网络代理服务。
通过上述措施,以网页指纹检测流程对存在网络代理嫌疑的目标网站进行判断,从而精确地确定存在网络代理行为的目标网站。
在一实施例中,在为目标网站攻击站点指纹库时,通常可以选择网页中元素大小、元素大小的方差、元素大小的分布、对象访问顺序、访问时间间隔、延时分布等信息作为指纹信息。然而,在网络代理服务场景中,浏览器的加速行为会增加获取指纹信息的难度,并且在加密通道中,无法解析出传输的具体内容。且为单一目标网站构建站点指纹库时,该站点指纹库用于对其对应目标网站进行网页指纹检测,因此,可以仅选择最重要的页面元素大小作为指纹信息。由于用户实际访问网站时,可以同时发送多个请求报文,目标网站返回的响应报文可能存在乱序的情况。因此,在本申请方案中,对于未分片的响应报文,可以认定响应报文的报文尺寸即为元素实际大小;对于经过分片的响应报文,只选择最后一个非最大传输单元(non-MTU)的响应报文的报文尺寸,作为元素大小。
电子设备可以遍历目标网站的每一本地网页,并为每一本地网页构建对应的网页指纹。其中,网页指纹包括请求指纹向量和响应指纹向量。请求指纹向量基于若干请求报文的报文尺寸构建,响应指纹向量基于若干响应报文的报文尺寸构建。
电子设备可以发送请求报文以访问目标网站对外提供的本地网页,并获得目标网站返回的响应报文。在访问每一本地网页过程中,可能会发送多个请求报文,根据多个请求报文的报文尺寸,可以构建该本地网页对应的请求指纹向量。请求指纹向量可以记录为k_req=(a1,a2……am),请求指纹向量中多个报文尺寸可以按照从小到大的顺序进行排列。在访问每一本地网页过程中,可以从目标网站获得多个响应报文,根据未分片的响应报文的报文尺寸,以及分片响应报文中最后一个非最大传输单元的响应报文的报文尺寸,构建本地网页对应的响应指纹向量。响应指纹向量可以记录为k_res=(b1,b2……bm),响应指纹向量中多个报文尺寸可以按照从小到大的顺序进行排列。
在为访问每一本地网页后,可以得到每一本地网页对应的请求指纹向量和响应指纹向量,从而构建出目标网站的站点指纹库。
在一实施例中,参见图7,为本申请一实施例提供的访问特征的构建方法的流程示意图,如图7所示,该方法可以包括如下步骤710至步骤730。
步骤710:根据用户访问数据中访问每一网页的请求报文的报文尺寸,构建请求特征向量。
用户访问数据中访问单一网页的请求报文可以有多个。电子设备可以根据多个请求报文的报文尺寸,可以构建请求特征向量。请求特征向量可以记录为v_req=(c1,c2……cw),请求特征向量中多个报文尺寸可以按照从小到大的顺序进行排列。以用户访问数据中多个网页对应的请求报文,分别构建每一网页对应的请求特征向量。
步骤720:根据用户访问数据中访问每一网页的响应报文的报文尺寸,构建响应特征向量。
用户访问数据中访问单一网页后,目标网站返回的响应报文可以有多个。电子设备可以根据未分片的响应报文的报文尺寸,以及分片响应报文中最后一个非最大传输单一的响应报文的报文尺寸,构建该网页对应的响应特征向量。响应特征向量可以记录为v_res=(d1,d2……dz),响应特征向量中多个报文尺寸可以按照从小到大的顺序进行排列。以用户访问数据中多个网页对应的响应报文,分别构建每一网页对应的响应特征向量。
步骤730:将每一网页对应的请求特征向量和响应特征向量,作为访问特征,获得多个网页的访问特征。
电子设备为任一网页构建请求特征向量和响应特征向量后,即可将请求特征向量和响应特征向量作为该网页的访问特征,从而获得多个网页的访问特征。
通过上述措施,电子设备可以通过用户访问数据构建用户所访问的多个网页的访问特征。
在一实施例中,参见图8,为本申请一实施例提供的确定本地网页的占比的流程示意图,如图8所示,该方法可以包括如下步骤810至步骤830。
步骤810:针对用户访问的每一网页,确定每一网页的访问特征与多个网页指纹之间的最小差异参数。
针对用户访问的每一网页,电子设备可以将该网页的访问特征与站点指纹库中多个网页指纹分别进行比对,从而确定最小差异参数。该最小差异参数表示访问特征与最接近的网页指纹之间的差异参数。具体的,差异参数可以根据请求特征向量与请求指纹向量之间的差异,以及响应特征向量与响应指纹向量之间的差异,进行加权求和得到。示例性的,最小差异参数可以通过如下公式(1)来表示:
diff=x*disreq+(1-x)*disres (1)
其中,diff表示最小差异参数;x表示请求特征向量与请求指纹向量之间的最小差异的权重,示例性的,x=0.4;disreq表示请求特征向量与请求指纹向量之间的最小差异;disres表示响应特征向量与响应指纹向量之间的最小差异。
这里,请求特征向量与请求指纹向量之间的最小差异可以通过如下公式(2)来表示:
disreq=MIN∑i=1,2……m;j∈(1,2……w)(ai-cj)2/∑i=1,2……mai 2 (2)
其中,disreq表示请求特征向量与请求指纹向量之间的最小差异;ai为请求指纹向量k_req=(a1,a2……am)中的元素;cj为请求特征向量v_req=(c1,c2……cw)中的元素。
响应特征向量与响应指纹向量之间的最小差异可以通过如下公式(3)来表示:
disres=MIN∑i=1,2……n;j∈(1,2……z)(bi-dj)2/∑i=1,2……nbi 2 (3)
其中,disres表示响应特征向量与响应指纹向量之间的最小差异;bi为响应指纹向量k_res=(b1,b2……bn)中的元素;dj为响应特征向量v_res=(d1,d2……dz)中的元素。
步骤820:判断每一网页对应的最小差异参数是否小于预设差异阈值,若是,确定该网页为本地网页。
其中,差异阈值可以是经验值,用于判断同一网页在构造指纹阶段和访问阶段所允许的最大特征差异。
在为用户访问的任一网页计算出最小差异参数后,电子设备可以判断该最小差异参数是否小于差异阈值。一种情况下,最小差异参数小于差异阈值,可以确定用户访问的该网页为目标网站对外提供的本地网页。另一种情况下,最小差异参数不小于差异阈值,可以确定用户访问的该网页并非目标网站对外提供的本地网页。
对用户访问的每一网页进行判断后,可以确定用户访问的所有网页中属于本地网页的网页。
步骤830:根据用户访问的本地网页的数量,以及用户访问的网页总量,确定多个网页中本地网页的占比。
在确定用户访问的本地网页的数量之后,以该数量处于用户访问的网页总量,从而确定用户访问的多个网页中本地网页的占比。
图9是本发明一实施例的一种网络代理服务的识别装置的框图,如图9所示,该装置可以包括:
统计模块910,用于统计访问目标网站的各个会话的延时参数;其中,所述延时参数包括第一阶段延时和第二阶段延时;
第一判断模块920,用于判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;
确定模块930,用于若所述多个第一阶段延时符合帕累托分布,且所述多个第二阶段延时不符合帕累托分布,确定所述多个第二阶段延时的均值与所述多个第一阶段延时的均值之间的目标差值;
第二判断模块940,用于判断所述目标差值是否大于预设时长阈值,若是,确定所述目标网站为存在网络代理嫌疑;
识别模块950,用于针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
上述装置中各个模块的功能和作用的实现过程具体详见上述网络代理服务的识别方法中对应步骤的实现过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种网络代理服务的识别方法,其特征在于,包括:
统计访问目标网站的各个会话的延时参数;其中,所述延时参数包括第一阶段延时和第二阶段延时;
判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;
若所述多个第一阶段延时符合帕累托分布,且所述多个第二阶段延时不符合帕累托分布,确定所述多个第二阶段延时的均值与所述多个第一阶段延时的均值之间的目标差值;
判断所述目标差值是否大于预设时长阈值,若是,确定所述目标网站为存在网络代理嫌疑;
针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
2.根据权利要求1所述的方法,其特征在于,在所述统计访问目标网站的各个会话的延时参数之前,所述方法还包括:
接收到访问所述目标网站的流量后,判断所述目标网站是否处于白名单;
若否,继续执行所述统计访问目标网站的各个会话的延时参数的步骤。
3.根据权利要求1所述的方法,其特征在于,在所述统计访问目标网站的各个会话的延时参数之后,所述方法还包括:
统计所述目标网站的响应报文中的数据长度;
判断所述数据长度是否小于预设长度阈值;
如果否,结束对所述目标网站的识别流程;
如果是,继续执行所述判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布的步骤。
4.根据权利要求1所述的方法,其特征在于,所述针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务,包括:
为所述目标网站构建站点指纹库;其中,所述站点指纹库包括所述目标网站的若干网页指纹;
抓取指定时间段内所述目标网站的访问数据;其中,所述访问数据包括对应于每一用户的用户访问数据;
针对任一用户,根据该用户的用户访问数据,构建该用户所访问的多个网页的访问特征;
根据所述多个网页的访问特征与所述若干网页指纹,确定所述多个网页中本地网页的占比;其中,所述本地网页为所述网页指纹指示的网页;
判断所述占比是否达到预设占比阈值,若否,确定所述目标网站提供网络代理服务。
5.根据权利要求4所述的方法,其特征在于,所述为所述目标网站构建站点指纹库,包括:
遍历所述目标网站的每一本地网页,并为每一本地网页构建对应的网页指纹;其中网页指纹包括请求指纹向量和响应指纹向量,所述请求指纹向量基于若干请求报文的报文尺寸构建,所述响应指纹向量基于若干响应报文的报文尺寸构建。
6.根据权利要求4所述的方法,其特征在于,所述根据该用户的用户访问数据,构建该用户所访问的多个网页的访问特征,包括:
根据所述用户访问数据中访问每一网页的请求报文的报文尺寸,构建请求特征向量;
根据所述用户访问数据中访问每一网页的响应报文的报文尺寸,构建响应特征向量;
将每一网页对应的请求特征向量和响应特征向量,作为访问特征,获得多个网页的访问特征。
7.根据权利要求4所述的方法,其特征在于,所述根据所述多个网页的访问特征与所述若干网页指纹,确定所述多个网页中本地网页的占比,包括:
针对用户访问的每一网页,确定每一网页的访问特征与多个网页指纹之间的最小差异参数;
判断每一网页对应的最小差异参数是否小于预设差异阈值,若是,确定该网页为本地网页;
根据用户访问的本地网页的数量,以及用户访问的网页总量,确定所述多个网页中本地网页的占比。
8.一种网络代理服务的识别装置,其特征在于,包括:
统计模块,用于统计访问目标网站的各个会话的延时参数;其中,所述延时参数包括第一阶段延时和第二阶段延时;
第一判断模块,用于判断多个第一阶段延时和多个第二阶段延时是否分别符合帕累托分布;
确定模块,用于若所述多个第一阶段延时均符合帕累托分布,且所述多个第二阶段延时不符合帕累托分布,确定所述多个第二阶段延时的均值与所述多个第一阶段延时的均值之间的目标差值;
第二判断模块,用于判断所述目标差值是否大于预设时长阈值,若是,确定所述目标网站为存在网络代理嫌疑;
识别模块,用于针对存在网络代理嫌疑的目标网站,以网页指纹比对的方式确定其是否提供网络代理服务。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-7任意一项所述的网络代理服务的识别方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-7任意一项所述的网络代理服务的识别方法。
CN202211086073.8A 2022-09-06 2022-09-06 网络代理服务的识别方法及装置、电子设备、存储介质 Pending CN115499184A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211086073.8A CN115499184A (zh) 2022-09-06 2022-09-06 网络代理服务的识别方法及装置、电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211086073.8A CN115499184A (zh) 2022-09-06 2022-09-06 网络代理服务的识别方法及装置、电子设备、存储介质

Publications (1)

Publication Number Publication Date
CN115499184A true CN115499184A (zh) 2022-12-20

Family

ID=84468784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211086073.8A Pending CN115499184A (zh) 2022-09-06 2022-09-06 网络代理服务的识别方法及装置、电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN115499184A (zh)

Similar Documents

Publication Publication Date Title
CN109951500B (zh) 网络攻击检测方法及装置
US11122067B2 (en) Methods for detecting and mitigating malicious network behavior and devices thereof
US20200145380A1 (en) Method for identifying application information in network traffic, and apparatus
US9900344B2 (en) Identifying a potential DDOS attack using statistical analysis
US10944784B2 (en) Identifying a potential DDOS attack using statistical analysis
JP6291135B2 (ja) コネクション制御装置、コネクション制御方法およびコネクション制御プログラム
US10218717B1 (en) System and method for detecting a malicious activity in a computing environment
US10218733B1 (en) System and method for detecting a malicious activity in a computing environment
US9992215B2 (en) Network intrusion detection
CN106302346A (zh) Api调用的安全认证方法、装置、系统
CN101383829B (zh) 一种流识别方法及带宽管理设备
CN109309591B (zh) 流量数据统计方法、电子设备及存储介质
CN110740144B (zh) 确定攻击目标的方法、装置、设备及存储介质
CN105635073B (zh) 访问控制方法、装置和网络接入设备
CN112769633A (zh) 一种代理流量检测方法、装置、电子设备及可读存储介质
CN108243062A (zh) 用以在时间序列数据中探测机器启动的事件的系统
CN111147524B (zh) 报文发送端的识别方法、装置和计算机可读存储介质
KR101087291B1 (ko) 인터넷을 사용하는 모든 단말을 구분하는 방법 및 시스템
CN107592299B (zh) 代理上网识别方法、计算机装置及计算机可读存储介质
Beitollahi et al. A cooperative mechanism to defense against distributed denial of service attacks
CN109257384B (zh) 基于访问节奏矩阵的应用层DDoS攻击识别方法
CN115499184A (zh) 网络代理服务的识别方法及装置、电子设备、存储介质
CN115603938A (zh) 攻击防护方法、终端设备及计算机可读存储介质
CN106254375B (zh) 一种无线热点设备的识别方法及装置
JP6497782B2 (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