eMule模糊协议

科技工作者之家 2020-11-17

模糊协议(英语:Protocol Obfuscation,又称迷惑协议协议迷惑协议加密迷惑协议)是eMule在0.47b之后的版本正式加入的一项功能,这个功能主要是针对ISP的流量限制做出反击。

简介在网络上传输的封包,大致上可以很简单的分为两个部分:标头与资料。在标头的部分都含有特定的识别资讯,因此只要透过特定的观察器,去撷取在网络上传播的封包,就可以知道“谁”正在用何种“通讯协议”在传输讯息。而eMule所使用的eD2k通讯协议,在每个封包的标头的部分,自然也包含着特定的识别资讯。最近几年,各国的ISP业者因为感受到P2P流量对自身网络所带来的冲击,因此纷纷开始研究去限制P2P的流量。而eMule所使用的eD2k通讯协议,自然是主要的目标之一,因为同时在使用eMule的人可能有数百万到数千万人以上。

为了对ISP的流量限制做出反制,eMule的开发团队,开发出“模糊协议”这项功能。开启这个功能,eMule传输的封包标头看起来就会变成一群乱数而无意义的资料,因为缺乏固定的特征,所以没有办法被简单的识别出来,如此一来ISP的流量限制也就变得毫无效果。1

注意事项“模糊协议”经常在某些地方会被误解:

模糊协议无法增加隐匿性,因为这个功能不会加密封包,它只是利用某种算法让封包标头的资讯变成一串看似无意义的乱数。

因为封包没有加密,对那些告密者而言,他们还是能知道“谁”正在传输“特定的资料”。

目前模糊协议已经在eD2k TCP与UDP、服务器的TCP与UDP、Kad的TCP上实做,至于Kad的UDP则尚未实做。

开启这项功能会使CPU的占用率稍微提高,并且在传输资料时,会需要多传数Bytes的资料,然而这并不是什么大问题。1

L7-filter与IPP2PL7-filter是针对OSI模型的第七层-应用层所设计,是Linux防火墙Netfilter的分类器。它可以对每个封包所使用的通讯协议做出分类,进而让Netfilter对特定的通讯协议进行阻挡或者是带宽控管。目前针对eD2k的比对档只测试到eMule 0.47a的版本,之后的版本因为模糊协议的关系,应该无法对经过模糊化的eD2k封包做出有效的比对。

IPP2P则是Netfilter的模组,专门针对P2P通讯协议来设计。在IPP2P的网站并没有任何关于成功辨识模糊协议的消息,因此可以认定IPP2P无法对经过模糊化的eD2k封包做出有效的比对。1

OSI模型开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称为OSI模型(OSI model),一种概念模型,由国际标准化组织提出,一个试图使各种计算机在世界范围内互连为网络的标准框架。定义于ISO/IEC 7498-1。

在制定计算机网络标准方面,起着重大作用的两大国际组织是:国际电信联盟电信标准化部门,与国际标准组织(ISO),虽然它们工作领域不同,但随着科学技术的发展,通信与信息处理之间的界限开始变得比较模糊,这也成了国际电信联盟电信标准化部门和ISO共同关心的领域。1984年,ISO发布了著名的ISO/IEC 7498标准,它定义了网络互联的7层框架,也就是开放式系统互联参考模型。2

本词条内容贡献者为:

王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。