第一页
P2P技术在中国从2005年兴起,主要应用于网络视频领域,由于P2P技术门槛低,运营成本低,很快就得到互联网企业的青睐,成为各大网站和不少企业拓展宽带应用的主要手段。
然而,在P2P如火如荼的应用热浪中,其安全问题应该越来越引起我们的重视。尤其是这种安全风险与P2P运营的用户规模相比,运营规模越大危害越大。当前P2P技术在国内可以用泛滥来形容。使用该技术的公司,企业不断增加,用户高达上亿。一旦其安全漏洞被利用,其局面将处于完全失控状态,后果十分可怕。而且这种漏洞是P2P与生俱来的,很难从根本上杜绝。因此,在P2P技术的使用上,必须要做长远的考虑。
伪造数据
在P2P网络中, 都需要一个描述文件信息的Metadata数据,该数据包含了要下载文件的分块大小和每块数据的完整性检验值,以及Tracker服务器的地址。 而Tracker在文件的P2P网络传输过程中,跟踪P2P节点拥有的文件块信息,用于其他节点及时获取拥有需要的内容块的其他节点的地址。
在破解了P2P协议的情况下,黑客能够在P2P网络中传递Metadata数据时,将其修改为另外一个伪造的文件信息,并同时修改Tracker服务器的地址,同时用伪造的Tracker服务器代替原来的Tracker。那么,P2P网络中的节点会向伪造的Tracker服务器查询P2P网络中其他节点, Tracker服务器会把拥有伪造数据的节点信息发送给该节点。这些节点就会下载到伪造的数据中。这些数据在最后进行完整性检验的时候,也不能被发现出来,因为Metadata中文件的检验信息就是该伪造数据的信息。
P2P网络中由于缺乏统一的管理,在发现伪造的数据后,不能控制P2P节点不下载伪造的数据或者阻止P2P网络中伪造数据的传输,从而导致伪造的数据在P2P网络中肆意传播,而且会处于完全失控状态。
在P2P网络中, 由于任何节点都是可以加入的,同时也为网络中的其他节点提供转发服务。从网络攻击的角度来看,一个“恶意”节点故意将正常的数据替换成伪造的数据,在转发的整个P2P网络中,完全可以欺骗其他P2P的节点而不被发现。
在P2P网络中,大的数据块往往被分割成多个小的数据块在网络中传递。为了维护数据的正确性,需要有一个或者多个中心的服务器保存每块数据的Hash值,用于节点在接收到数据时,检验数据是否正确。Hash算法中常用的算法包括MD5、SHA-1、SHA-256、SHA-512等,其中以MD5应用最为广泛。Hash算法本身是一种单向散列算法,它将一长串的数据散列成有限长度(几十到几百个字节)的数据。从理论上讲,一定要存在两个不同的数据,而它们的Hash值是一样的。在实践中,安全专家已经证明MD5不是安全的。也就是说,在有“原内容和MD5值”的情况下,可以找到一种方法,产生一个与原来内容长度和MD5值都相同的新内容。在P2P网络中,如果“恶意”节点用这样的方法产生伪造的数据,替代原有的数据传播到网络中去,是不会被网络的其他节点发现的。
如果有人利用上述方式在P2P网络中伪造数据,可以想象后果是什么样的。
网友评论