论文摘要
P2P技术作为僵尸网络采用的一种新技术,它赋予了僵尸网络更高的隐蔽性和更强的健壮性。近年来,P2P僵尸网络的数目日益增多,给网络环境安全造成了严重的威胁,因此,研究探索更好的P2P僵尸网络检测方法成为网络安全领域工作者的当务之急。P2P僵尸网络通信区别于正常的网络通信。位于同一僵尸网络内部的不同主机在某一时刻接收攻击者发送的控制或攻击命令,执行相同的垃圾邮件发送、恶意代码下载更新、DDoS攻击等行为,使得同一时刻内网络中不同主机具有相同的通信行为。另外,同一僵尸网络内部的不同僵尸肉机之间为了确认彼此身份,会周期性的发起请求——应答报文,使相同的主机在不同的时间段内具有相似的通信行为。聚类分析作为数据挖掘领域一项基本技术,可根据相似性度量对大量样本进行无监督的学习分类。P2P僵尸网络通信的数据量规模宏大、再次处理代价很高,符合流数据的特点,且其异常通信行为具有相似性,因此可考虑基于聚类分析对P2P僵尸网络进行分析与检测。本文首先介绍P2P僵尸网络产生背景,在传统的基于IRC和HTTP协议的僵尸网络遭遇“单点失效”问题时,攻击者将P2P技术加入到僵尸网络中去,形成了新型的P2P僵尸网络。给出了P2P僵尸网络定义,总结了目前国内外对P2P僵尸网络在跟踪、检测和反制方面的研究,分析它们的优点和不足,并对本文的研究内容和结构安排进行了介绍。然后,分别从恶意代码、拓扑结构、产生方式三个角度对P2P僵尸网络进行分类,分析P2P僵尸网络工作机制,包括其路由选择机制、通信机制等,通过分析已知P2P僵尸网络逃避检测策略,避免在新系统中出现类似失效情况,并以几种典型的P2P僵尸网络为例,分析了它们的工作机制和逃避各种检测系统的手段。在此基础上,给出了一种改进的P2P僵尸网络检测算法——基于主成分分析的二次聚类算法,首先通过对P2P僵尸网络进行行为特征和通信特征建模,提取其通信特征流向量,然后根据算法首先对特征属性进行主成分分析,得到最终保留的主成分,依据主成分进行首次聚类,参考首次聚类结果,对不确定样本进行二次聚类,二次聚类采用更多的特征属性,使得聚类结果更加精确。接下来,设计一种P2P僵尸网络检测系统的模型,将模型系统分为在数据预处理模块,在线监测模块,离线检测模块,数据管理中心和响应控制中心。数据预处理模块负责将捕获的网络报文进行解析,按设计的数据结构存储,并交付在线监测模块;在线监测模块根据已知的规则集实现对事件在线分析检测;离线检测模块负责对检测样本进行聚类分析;数据管理中心用于存储和管理特征流样本数据和攻击事件规则集;响应控制中心负责对检测结果进展综合分析,并给出相应的控制措施。此外,文章还探讨了该模型的实施部署方案。最后建立了能够模拟真实主机和网络设备的P2P僵尸网络实验环境,呈现了P2P僵尸代码的感染和传播过程,通过不同检测算法在相同数据集上的实验分析,证明本文提出算法在检测P2P僵尸网络上的优越性。