APP下载

基于P2P流量检测的签名特征匹配研究

2012-07-13杨正华曾爱华

电子设计工程 2012年9期
关键词:数据包端口流量

陈 庆,杨正华,曾爱华

(1.吉首大学 信息科学与工程学院,湖南 吉首 416000;2.湘西州广播电视大学 湖南 吉首 416000)

近年来,网络技术快速发展,特别是对等网的迅速发展已经成为业界关注的焦点之一,基于P2P网络之上的相关应用正逐渐占据互联网应用的重要地位,并被视为未来网络技术发展的主要趋势,相对于传统网络,对等网依靠非中心节点、分布式结构模型,实现对等协作和资源共享,并具有自组织、容错性强、可扩展以及负载均衡等优点,但P2P是通过组播方式进行通信,它允许单个用户未经授权或检验而任意分发内容,其传播范围广,穿透性强,带来网络安全防护漏洞和隐患[1]。如何有效地监控P2P流,进行相关的流识别。流筛选、流控制是流管理中的重要问题。

早期的P2P应用都是固定的端口号,容易检测便于管理,近年来,该应用逐渐发展到动态随机端口号,而且近期涌现的新型P2P应用越来越具有反侦察的意识,并采用了一些伪装或加密的方法,如:伪装Http协议、加密、传输分块等来逃避识别和检测[2],这些技术使得P2P流识别变得更为困难。目前,P2P应用快速发展和变化,新的P2P应用不断出现,其结构更为复杂,应用领域也更为广泛,随着网络带宽的不断拓展,单位时间的流量将更为庞大,而P2P流识别必须解决单位时间内在线监测分析的问题,这将给数据的采集、监测、分析带来更多困难[3]。如何让识别算法适应网络流量的快速发展,使得监测的信息最多,过滤效果最好,也是当前急需解决的问题。

1 P2P流量检测的识别方法

1.1 端口识别检测方法

早期,P2P流识别主要采取的是端口识别和数据包检测方法,Madhukar等对端口识别法的有效性进行了研究[4],并采用实际数据观察。研究表明,端口识别法对网络中的数据流50%~70%无法有效识别[5]。

1.2 统计特征的方法

基于协议和统计特征的方法是一类重要的P2P流识别方法[6],如Constantinou提出了网络直径分析法[7],通过记录网络中每个节点与其他节点建立连接的情况得到链接的逻辑拓扑图,并转换为网络直径,如网络直径超过某个门阈值,可认为该网络为P2P网络。Thomas Karagiannis等提出了协议和地址端口分析方法[8-9],P2P系统通常采用UDP来发送命令等控制信息,TCP协议来传输数据。传统网络的应用软件,很少出现同时使用UDP协议和TCP协议,如有同时使用两种协议可认为是P2P流。

1.3 检测协议特征的方法

数据包协议特征检测方法主要用于入侵检测,根据预定义的协议特征辨别其应用类型[10],当前许多P2P应用识别方案都基于这种方法。通过TCP/IP层之上的应用层协议分析软件进行流量分析和特征分析,监控并找出其协议特征码,以下就是各种不同的P2P网络协议的特性:

表1 P2P网络协议特性对比Tab.1 P2P network protocol characteristics

2 签名特征的抓取及实验数据分析

签名技术需要访问每一个数据包中的用户载荷,每一种P2P应用都具有与协议相关的签名特征,为了对比分析方便,选取目前使用较为广泛的Sniffer软件,通过抓取对应协议数据包,观察关键字、命令、选项等可观察的特征内容,找到其已知的特征串。

实现签名特征技术的关键问题在于,首先通过分析P2P流是TCP数据包还是UDP数据包,或者两者皆有;其次P2P应用层的签名可以应用到单一的数据包,也可应用到重组的数据包中。

Emule/Edonkey协议:采用TCP或 UDP通信,缺省端口4661-4665,第一字节特征串为 0xe3,0xc5。

表2 Emule/Edonkey协议特征Tab.2 Emule/Edonkey protocol characteristics

Kazaa协议:对数据包进行加密,很难了解到协议的具体细节,在Kazaa中,文件通常以伪装的HTTP形式发送。

表3 Kazaa协议特征Tab.3 Kazaa protocol characteristics

Gnutella协议:使用TCP建立一个高度互联的拓扑结构,为子节点提供网络服务,当两个Gnutella节点建立连接后,需要一个握手来交换一下必要的数据信息。

明文检查UDP包起始数据是否为“GNUTELLA”或“GND”

表4 Gnutella协议特征Tab.4 Gnutella protocol characteristics

Gnutella命令特征:负载最后以“ ”结尾,而且起始数据为:“GET/get/”

Vagaa协议分析:Vagaa和Emule/EDonkey一样也是一种较为流行的P2P软件。它的协议分析如下:

发送请求数据包特征:16进制表示为:78 01 7B DC C9 C0 C0 3F 90 B8 6E 97 E6 35 3E A6 92 73 F3 A5 64 1B 14 F2 77

确认数据包特征:16进制表示:DE AD BE EF

PPLive协议:作为一款流行的P2P在线视频播放软件,通过对PPLive流量的抓取分析,发现PPLive的UDP数据包具有的签名特征,如表5所示。

表5 PPLive协议特征Tab.5 PPLive protocol characteristics

BitTorrent协议:BitTorrent是非常流行的文档下载软件,通过对BitTorrent的TCP握手信息进行分析,发现其签名特征,如表6所示。

表6 BitTorrent TCP协议特征Tab.6 BitTorrent TCP protocol characteristics

BitTorrent在下载过程中与Tracker服务器进行通信,它采用HTTP协议,通过分析其HTTP流,发现其签名特征:

表7 BitTorrent HTTP协议特征Tab.7 BitTorrent HTTP protocol characteristics

UDP包特征:UDP长度24字节 (含UDP头),起始8个字节为:00 00 04 17 27 10 19 80

TCP包特征:第一字节为0x13,后续数据为:“BitTorrent protocol”

3 结束语

文中通过对各时期P2P流量检测技术回顾,阐述了流量检测技术的进展,提出一种基于协议签名特征的P2P流识别方法。首先,通过Sniffer软件对数据包进行抓取,并进行特征分析、关键字分析,进行预判;然后,再进行深度扫描,对数据流进行较精确判决,根据流的协议特征和行为特征判决方法,判决规则简单,有利于工程应用,通过实验室小数据测试,实验证明本文提出的识别方式可行。下一步工作,可对签名特征较为分散的数据流进行重组,提取更为准确的签名特征,进行精确判别;另外,随着网络带宽的快速发展,大流量、实时的检测数据流,需要进一步提升抓包、筛选效率和签名特征多模式匹配算法效率。

[1]Tutschku K.A Measurement-based Traffic Profile of the eDonkey Filesahring Service [C]//Passive and Active Measurement Workshop, Cambridge,2004.

[2]Zhou L,Li Z,Liu B.P2P traffie identifieation by TCP flow analysis[C]//Proceedings of Institute Workshop on Networking,Architecture and Storages,Shenyang,2006:47-48.

[3]Holger,B.P.R.Erwin,and Z.Stefan.Evaluation of an Effieient Measurement Concept for P2P MultiProtocol Traffie Analysis.in Software Engineering and Advanced Applications[C]//2006.SEAA’06.32nd EUROMICRO Conference on 2006.Cavtat,Dubrovnik,Croatia:IEEE Comput.Soc.,2006:414-423.

[4]Madhukar A,Williamso C.A Longitudinal Study of P2P Traffic Classification in Modeling[C]//Analysis,and Simulation of Computer and Teleconununication Systems.Monterey Califomia:IEEE,2006:179-188.

[5]王锐,王逸欣,樊爱华,等.一种跨P2P流量检测方法[J].计算机应用,2006,26(12):30-32.

WANG Rui,WANG Yi-xin,FAN Ai-hua,et al.A cross P2P flow detection method[J].Computer Application,2006,26(12):30-32.

[6]张文,沈磊.基于特征进程的P2P流量识别 [J].计算机工程,2008,34(15):120-122.

ZHANG Wen,SHEN Lei.Based on the characteristics of the process P2P traffic identification[J].Computer Engineering,2008,34(15):120-122.

[7]Constantinou F,Mavrommatis P.Identifying known and unknown peer-to-peer traffic[J].Fifth IEEE International Symposium on Network Computing and Applications,2006:93-102.

[8]KaragiannisT,Broido A,FaloutsosM.Transportlayer identification of P2P traffic[C]//In:Proceedings of the 4th ACM SIGCOMM Conference on Internet Measurement(IMC 2004),Taormina,Italy,2004:121-134.

[9]刘文超,陈琳,向华.P2P流量检测技术与分析[J].现代电子技术,2011(22):39-41,45.

LIU Wen-chao,CHEN Lin,XIANG Hua.P2P traffic detection technology and analysis[J].Modern Electronic Technique,2011(22):39-41,45.

[10]沈富可,常潘,任肖丽.基于神经网络的P2P流量识别研究[J].计算机应用,2007,27(12):44-51.

SHEN Fu-ke,CHANG Pan,REN Xiao-li.Based on neural networks the research of P2P traffic identification[J].Computer Application,2007,27(12):44-51.

猜你喜欢

数据包端口流量
冰墩墩背后的流量密码
二维隐蔽时间信道构建的研究*
基于Jpcap的网络数据包的监听与分析
张晓明:流量决定胜负!三大流量高地裂变无限可能!
一种端口故障的解决方案
寻找书业新流量
SmartSniff
端口阻塞与优先级
8端口IO-Link参考设计套件加快开发速度
卫星三端口DC-DC变换器技术综述