CN100571265C - 一种对等文件共享程序的检测方法 - Google Patents

一种对等文件共享程序的检测方法 Download PDF

Info

Publication number
CN100571265C
CN100571265C CNB2005101019222A CN200510101922A CN100571265C CN 100571265 C CN100571265 C CN 100571265C CN B2005101019222 A CNB2005101019222 A CN B2005101019222A CN 200510101922 A CN200510101922 A CN 200510101922A CN 100571265 C CN100571265 C CN 100571265C
Authority
CN
China
Prior art keywords
udp
message
tcp
skype
bag
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
CNB2005101019222A
Other languages
English (en)
Other versions
CN1852298A (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.)
Guangdong Gaohang Intellectual Property Operation Co ltd
Taizhou Haitong Asset Management Co ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2005101019222A priority Critical patent/CN100571265C/zh
Publication of CN1852298A publication Critical patent/CN1852298A/zh
Application granted granted Critical
Publication of CN100571265C publication Critical patent/CN100571265C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种对等文件共享程序的检测方法,其包括以下步骤:检测网络传输数据报文,更新TCP/UDP流表;检测程序传输数据所用的协议,根据双方通信时的使用报文不同,分别采用不同检测流程:如采用UDP报文:如果检测到静荷长度为18的UDP报文,且同一数据流中的UDP报文出现五次,则在列表中记录该UDP包的网内IP地址和对应端口号;如果检测到静荷长度为11的UDP报文,看是否含有第4至7字节与所记录的网内IP相同,若相同,则将列表中相应的网内端口号和IP地址的记录,标识为SKYPE流。本发明方法通过采用对UDP和TCP报文的分析,实现了对对等文件共享程序的准确识别。

Description

一种对等文件共享程序的检测方法
技术领域
本发明涉及一种网络数据传输中对程序的检测方法,尤其涉及的是一种对等文件共享程序的检测分析方法。
背景技术
数字时代开创了空前的联系人员和共享信息的方式,近来,对等(P2P)文件共享已成为全球范围内通过Internet共享不受版权限制的音乐、音频、图像、文档和软件程序的便利方式。P2P软件的产生和发展对互联网的资源利用和资源共享起到了很大的推进作用,而且能提供强大的分布式计算能力和快速高效的大范围搜索功能,最重要的是能为用户提供了快捷方便的信息共享服务。
Skype是一种典型的P2P软件,它主要提供即时通讯和网络电话的功能。相比其他P2P软件,SKYPE有很多其他P2P软件不具备的优点,包括:(1)极强的穿透防火墙能力,可以与所有防火墙、NAT(网络地址转换)和路由器一起使用。(2)快速传送超大文件Skype的文件传输功能同样采用了P2P的技术。(3)全球通用Skype提供了全球搜索目录,可以根据不同的查询条件查询您认识的、或者不认识的朋友,并且,可以马上开始进行畅通无阻的语音聊天。(4)采用“端对端”加密,极具保密性。
鉴于上面的优点可以看出SKYPE拥有更先进的技术,通过分析和检测SKYPE的技术可以了解SKYPE的协议的特性,了解SKYPE的协议设计的思想,这些技术和思想对于将来的P2P软件和协议的开发和应用都有很好的借鉴和参考价值。
但是,最近P2P软件可以使用任意的端口来达到隐藏自己存在的目的,所以这给检测工作带来的很大的困难。目前针对P2P软件的数据传输,主要的检测技术有以下几种:
关键字检测结合报文大小检测,这种方法取决于具体的P2P协议和所检测的报文内容的大小,和报文是否被加密。当P2P协议特征不明显,或者检测的报文中的字节数太少,或者报文已经被加密,那么检测的效果就相当有限;端口和IP结合再结合关键字的方式检测,这种方式结合了两大技术的优点,检测效果不错,但是,也有不足的地方。这个技术首先是基于IP结合端口进行判断的,如果IP结合端口漏过某个P2P应用程序,那么后面的检测也无法检测出来。Skype是一个典型的P2P软件,它的特征不明显协议也未公开,并且对报文进行了加密,所以利用当前的几种检测技术很难将其检测出来。
以下进行稍加详细的说明现有技术情况:
1、关于关键字检测,依据以下两个规则:
(1)报文大小:大多数的P2P协议使用相同的报文大小来传输数据信息。所以就可以用特定的报大小来确定P2P的文件传输。报文大小是与TCP的PUSH标志相联系。它检测TCP的PUSH标志来判断报文大小。同过检测一系列的相邻的两个TCP报的PUSH表示就可以判断P2P数据传输流。
(2)报文格式:通过检测P2P控制报文的报文内容区别不同的应用程序。
对于大多数的P2P软件,通常数据传输的报文大小通常是相同的。所以报文大小的检测并不是主要依据,报文格式就成了主要的判断标准。对于不同的P2P协议的分析其不同的报文特征,并以此来区别不同的P2P应用程序。
但是,P2P文件传输的所使用的报文通常是相同的,那么第一条标准就用处不大。第二条标准须要对各种P2P协议相当的了解,找出其不同之处才能对其进行区别。如果P2P协议未公开,或者报文经过了加密那么第二条标准也不适用。再者第二条标准还依赖于检测的报文大小,通常要区别的协议越多需要检测的内容也就越多。如果要区别很多种协议,那么他的效率也会有很大的下降。
2、关于关键字检测结合IP端口检测,依据两大部分:
第一部分类似于上述的第一种技术,是一种基于关键字的检测技术。不过它不再依赖检测报文的大小,并且为了增加效率只检测报文的头几个字节。
第二部分是IP和端口结合的技术。它是基于两条基本原理:
第一条,经研究发现通常P2P软件同时使用UDP和TCP连接。在常用的协议中只有如下表几种协议同时使用UDP和TCP连接。
Ports   Application
135,137,139,445   NETBIOS
53   DNS
123   NTP
500   ISAKMP
554,7070,1755,6970,5000,5001  Streaming
7000,7514,6667   IRC
6112,6868,6899   gaming
3531   p2pnetworking.exe
所以检测的初步结论是在同时使用UDP和TCP连接的应用程序中,除去上表列出的几种应用程序可以初步认为是P2P软件。
第二条基本的原理是:在同一个应用程序使用的连接中,有多少个不同的IP就要有多少个不同的端口。如图1所示,当hostB,hostC,superpeer连接主机host A时,hostB,hostC,superpeer拥有不同的IP,而它们的端口是各自分随机配的,所以是不相同的。
因此,根据该原理得出这样一种检测方法:
首先,检查源目的(source-destination)IP对,找出那些同时使用TCP和UDP的连接的应用程序。然后除去常用的非P2P软件,剩下的就可以初步看作是P2P软件。
然后,分析各个被认为是应用程序的连接的IP-port(端口)对,根据第二条原则,IP地址个数要与port端口个数相等,在进行进一步筛选。
最后采用关键字检测法分析报文。
该方法的缺点主要包括:首先认为P2P软件都同时使用两个TCP/UDP连接,除去常用的一些同时使用TCP/UDP应用程序,其他的就默认为是P2P软件。如果某P2P软件只使用一种连接那么就可能造成检测疏漏。其次是在关键字检测部分采用了与第一种现有技术相似的方法,同样当报文被加密,P2P协议未公开时的检测效果就不好。另外,为了增加效率,检测的报文的大小也十分小,这就更限制了区分能力。
因此,现有技术存在缺陷,而有待于改进和发展。
发明内容
本发明的目的在于提供一种对等文件共享程序的检测方法,用于解决某些特征不明显、协议未公开的P2P应用程序难以用通常的关键字或者端口和IP结合的方式检测出来的问题,提出一种可以用来检测程序数据传输流量的方式,用以确定是否为对等文件共享程序。
本发明的技术方案包括:
一种对等文件共享程序的检测方法,其包括以下步骤:
A、检测网络传输数据报文,更新TCP/UDP流表;
B、检测程序传输数据所用的协议,根据双方通信时的使用报文不同,分别采用不同检测流程,并做关联分析。
所述的检测方法,其中,如检测到采用UDP方式传输数据,则包括步骤:
B11、如果检测到静荷长度为18的UDP报文,且同一数据流中的UDP报文出现五次,则在列表中记录该UDP包的网内IP地址和对应端口号。
所述的检测方法,其中,如检测到采用UDP方式传输数据,则包括步骤:
B12、如果检测到静荷长度为11的UDP报文,看是否含有第4至7字节与所记录的网内IP相同,若相同,则将列表中相应的网内端口号和IP地址的记录,标识为SKYPE流。
所述的检测方法,其中,双方通信时检测到采用TCP方式传送数据时,包括以下步骤:
B21、如果检测TCP连接前面交互的两个包中,发送的包长为14字节和对方回复的包长均为14字节,则可能是SKYPE流。
所述的检测方法,其中,如果在收到对方回复的14字节的包后,发送方再发送一个27字节的包,则为SKYPE流。
所述的检测方法,其中,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B22、检测HTTP GET报文是否含有host:ui.SKYPE.com,判断其中是否含有特征字:getlatestversion,记录下源IP地址和端口号,该IP用户有可能是进行SKYPE通信的请求。
所述的检测方法,其中,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B23、检测建立TCP连接后,前面两个交互包是否固定,即:客户端向对方发送一个五个字节的包,内容为1603010000,对方回复一个五个字节的包,内容为1703010000,如是,则可能是SKYPE的登录过程。
所述的检测方法,其中,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B24、检测建立连接时,对方是否使用443端口建立连接,若是,则检测这种连接的规律,即:客户端先向SN发一个72字节的包,前十六字节内容比较固定,为8046010301002D000000100000050000,SN回复一个93字节的包,前面十六字节部分也固定,为160301004A020000460301401BE48602,则可能为SKYPE传输过程。
本发明所提供的一种对等文件共享程序的检测方法,通过采用对UDP和TCP报文的分析,实现了对对等文件共享程序的准确识别。
附图说明
图1为现有技术的数据传输检测时的系统结构示意图;
图2为本发明方法的UDP数据传输时的检测流程示意图;
图3为本发明方法的TCP数据传输时的检测流程示意图。
具体实施方式
以下结合附图,将对本发明的各较佳实施例进行较为详细的说明。
本发明所述对等文件共享程序的检测方法中,针对SKYPE的检测流程如下:由程序取出IP报文,并更新TCP/UDP流表,首先区分出其它知名应用程序不予检测,其过程如现有技术所采用的步骤,在此不再赘述。其次,区分出其它容易检测的P2P应用程序不予检测。再次,检测程序传输数据所用的协议。
若双方通信时,使用的是UDP,则依次进行下列检测过程,如图2所示的:
1.如果检测到静荷长度为18的UDP数据包,且同一数据流中的UDP报文出现五次,则该UDP流极可能为SKYPE流,在列表中记录该UDP包的网内IP地址和对应端口号;采用匹配状态计数器来进行对UDP报文的计数,设其初始值为5,每匹配到一次减1,直至所述匹配状态计数器为0;则可以进一步确定此时双方的通信是SKYPE方式。
2.如果检测到静荷长度为11的UDP报文,看是否含有第4~7字节与所记录的网内IP相同,若相同,则将列表中相应的网内端口号和IP地址的记录,标识为SKYPE流。
UDP的关联分析就是将网内IP和端口对其它具有该二元特征的流进行标记为SKYPE流。该条记录可以作为此后判断UDP是否为SKYPE流的依据。
若双方通信时,如果检测到使用TCP方式通信,则检测过程如下,如图3所示的:
方法一:如果检测到TCP连接前面交互的两个包中,发送的包长为14字节和对方回复的包长均为14字节,则很可能是SKYPE流;特别的,在收到对方回复的14字节的包后,发送方再发送一个27字节的包,则为SKYPE的数据流。
方法二:如果检测到HTTP GET报文中含有host:ui.SKYPE.com,并判断其中是否含有特征字:getlatestversion。如有,记录下源IP地址和端口号,该IP用户有可能是进行SKYPE通信的请求。
方法三:如果检测到建立TCP连接后,前面两个交互包是否固定,即:客户端向对方发送一个五个字节的包,内容为1603010000,对方回复一个五个字节的包,内容为1703010000。若出现这种情况,则很可能是在SKYPE登录过程中。
方法四:检测建立TCP连接时,对方是否使用443端口建立连接;若是,则检测这种连接的规律,即:客户端先向SN发一个72字节的包,前十六字节内容比较固定,为8046010301002D000000100000050000,SN回复一个93字节的包,前面十六字节部分也固定,为160301004A020000460301401BE48602。
TCP关联分析是通过对该IP地址发出的其它TCP流中的其它特征进行分析并识别的方式。
上述TCP连接前面交互的两个包是指在TCP的三次握手建立成功后,本发明方法一直在检测其报文,连接成功后最前面的两个交互的TCP包。其中,对TCP的检测方法一,可以作为相对主要的方式进行检测,因为该种特征在TCP包中出现的频率比较高。
通过上面对UDP包和TCP包的分析,可以确定已经被检测出的Skype流的源IP和目标IP和端口,据此对网络中的流量进行关联分析,从而可以更加容易的检测出网络中的Skype流,通过其他手段进行关联分析,特别是事后分析过程能够利用一些不明显的处理复杂的特征进行,可用于流量监视,所述的关联分析为现有技术所公开,在此不再赘述。
本发明方法之所以采用上述方案,是基于SKYPE的以下节点交互特征:正常情况下,SKYPE主要通过UDP与SN节点进行连接交互信息。在限制UDP包传送的网络环境下,SKYPE亦可以完全通过TCP连接来运行程序。在有防火墙屏蔽的情况下,SKYPE与SN节点之间、以及点与点之间,仍可以通过443端口和80来建立连接传递信息。
由于Skype只通过一个端口来收发UDP包,这个端口的端口号在程序安装之后随由系统随机给定,并可由用户修改。但当该端口确定后,在程序启动后到退出之前都不会改变。并且在登录和通信过程中,净荷长度为18字节的UDP报文突发非常多,第3个字节为02;SN回复给SC的包,其UDP报文净荷长度为11,在登录过程中出现次数较多,该报文第四到第七个字节为目的IP地址NAT FIREWALL穿越;在TCP连接中,前面交互的包有一些比较特殊的格式,即有些固定长度(如14字节)和固定的内容等信息;在登录过程中会向ui.SKYPE.com服务器发送一个HTTP 1.1GET请求,里面包含有特征字:getlatestversion,如下表所示。对方会回复一个200OK的包。因此,本发明的上述方法步骤可以实现对SKYPE这类程序的检测。
本发明的上述方法将数据传输的数据包分为UDP和TCP包两部分进行分别处理,根据它们中表现的一些特殊的字节长度的数据包,以及这些特殊数据包中的包含的特征,设计了一套检测的流程。由于SKYPE是协议未公开的P2P应用,单纯的依靠特征判断,会造成判断的准确率较低的状况,因此在本发明方法的检测分析中,结合关联分析理论,对可能出现的几种情况之间的相互影响程度,找出了其中优势率比较大的情况,并作出最终的判断,其识别准确性非常高。
但应当理解的是,上述针对具体实施例的描述较为详细,并不能因此而理解为对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。

Claims (6)

1、一种对等文件共享程序的检测方法,其特征在于,包括:
A、检测网络传输数据报文,更新TCP/UDP流表;
B、检测程序传输数据所用的协议,根据双方通信时使用的不同报文,分别采用不同检测流程,并做关联分析;
如检测到采用UDP方式传输数据,则步骤B包括:
B11、如果检测到净荷长度为18的UDP报文,且同一数据流中的UDP报文出现五次,则在列表中记录该UDP包的网内IP地址和对应端口号;
或者,
B12、如果检测到净荷长度为11的UDP报文,判断该UDP报文的第4至7字节是否与所记录的网内IP地址相同,若相同,则将列表中相应的网内端口号和IP地址的记录,标识为对等软件SKYPE流;
其中,所述关联分析,就是将具有所述网内IP地址和所述对应端口号的流标记为SKYPE流。
2、根据权利要求1所述的检测方法,其特征在于,双方通信时检测到采用TCP方式传送数据时,包括以下步骤:
B21、如果检测到TCP连接前面交互的两个包中,发送的包长为14字节和对方回复的包长均为14字节,则是SKYPE流。
3、根据权利要求1所述的检测方法,其特征在于,双方通信时检测到采用TCP方式传送数据时,包括以下步骤:
如果检测到TCP连接前面交互的两个包中,发送的包长为14字节和对方回复的包长均为14字节,在收到对方回复的14字节的包后,发送方再发送一个27字节的包,则为SKYPE流。
4、根据权利要求1所述的检测方法,其特征在于,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B22、检测HTTP GET报文是否含有host:ui.SKYPE.com,判断所述HTTPGET报文中是否含有特征字:getlatestversion,如果含有,则记录下源IP地址和端口号,该IP用户是进行SKYPE通信的请求。
5、根据权利要求1所述的检测方法,其特征在于,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B23、检测建立TCP连接后,前面两个交互包是否固定,即:客户端向对方发送一个五个字节的包,内容为16 03 01 00 00,对方回复一个五个字节的包,内容为17 03 01 00 00,如是,则是SKYPE的登录过程。
6、根据权利要求1所述的检测方法,其特征在于,双方通信检测到采用TCP方式传送数据时,包括以下步骤:
B24、检测建立连接时,对方是否使用443端口建立连接,若是,则检测是否符合这种连接的规律,即:客户端先向服务节点SN发一个72字节的包,前十六字节内容比较固定,为80 46 01 03 01 00 2D 00 00 00 10 00 00 0500 00,SN回复一个93字节的包,前面十六字节部分也固定,为16 03 01 004A 02 00 00 46 03 01 40 1B E4 86 02,若符合则为SKYPE传输过程。
CNB2005101019222A 2005-12-02 2005-12-02 一种对等文件共享程序的检测方法 Active CN100571265C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101019222A CN100571265C (zh) 2005-12-02 2005-12-02 一种对等文件共享程序的检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101019222A CN100571265C (zh) 2005-12-02 2005-12-02 一种对等文件共享程序的检测方法

Publications (2)

Publication Number Publication Date
CN1852298A CN1852298A (zh) 2006-10-25
CN100571265C true CN100571265C (zh) 2009-12-16

Family

ID=37133766

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101019222A Active CN100571265C (zh) 2005-12-02 2005-12-02 一种对等文件共享程序的检测方法

Country Status (1)

Country Link
CN (1) CN100571265C (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067790B (zh) * 2012-12-31 2016-07-06 乐视网信息技术(北京)股份有限公司 一种应用于对等网络的数据校验系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
p2p流量识别与管理技术. 李江涛等.电信科学,第3期. 2005
p2p流量识别与管理技术. 李江涛等.电信科学,第3期. 2005 *

Also Published As

Publication number Publication date
CN1852298A (zh) 2006-10-25

Similar Documents

Publication Publication Date Title
US9712559B2 (en) Identifying frames
CA2607607C (en) Traffic analysis on high-speed networks
US10693908B2 (en) Apparatus and method for detecting distributed reflection denial of service attack
CN106416171A (zh) 一种特征信息分析方法及装置
JP2006294009A (ja) ピアツーピアメッセージングアプリケーションを構築するためのapi
Benson et al. Leveraging internet background radiation for opportunistic network analysis
WO2015024490A1 (en) Monitoring nat behaviors through uri dereferences in web browsers
CN107181605B (zh) 报文检测方法及系统、内容提取装置、流量匹配装置
US7907543B2 (en) Apparatus and method for classifying network packet data
CN105245407A (zh) 基于套接字的网络嗅探器及其方法
JP6548823B2 (ja) 木グラフプロパティを適用するjsonデータのリアルタイムバリデーション
Yoon et al. Behavior signature for fine-grained traffic identification
US20040148417A1 (en) Method and system for distinguishing higher layer protocols of the internet traffic
US9804899B2 (en) Communications using the common object request broker architecture (CORBA)
CN100571265C (zh) 一种对等文件共享程序的检测方法
US7953973B2 (en) Systems, methods, and computer program products for passively routing secure socket layer (SSL) encoded network traffic
CN101854366A (zh) 一种对等网络流量识别的方法及装置
Kang et al. Streaming media and multimedia conferencing traffic analysis using payload examination
CN101789884B (zh) 网络入侵检测的负载均衡方法
Gad et al. Hierarchical events for efficient distributed network analysis and surveillance
CN105610808A (zh) 一种基于动态域名解析的网络流量识别方法及系统
WO2022104738A1 (zh) 一种木马检测方法、装置和设备
KR20120101839A (ko) 네트워크 검사 시스템 및 그 제공방법
Albadri Development of a network packet sniffing tool for internet protocol generations
CN114760216B (zh) 一种扫描探测事件确定方法、装置及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201202

Address after: Building 2, No. 3, Fuqian Road, Hailing District, Taizhou City, Jiangsu Province

Patentee after: Taizhou Haitong Asset Management Co.,Ltd.

Address before: Unit 2414-2416, main building, no.371, Wushan Road, Tianhe District, Guangzhou City, Guangdong Province

Patentee before: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Effective date of registration: 20201202

Address after: Unit 2414-2416, main building, no.371, Wushan Road, Tianhe District, Guangzhou City, Guangdong Province

Patentee after: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right