论文部分内容阅读
僵尸网络作为网络安全中威胁最大的攻击平台之一,正被黑客发动一系列诸如DDoS攻击、垃圾邮件、比特币挖矿、勒索、网络钓鱼等多种恶意活动。不仅给用户造成巨大的经济损失,也使网络安全面临着严峻的考验。因此,研究如何快速有效检测出僵尸网络显得尤为重要。尽管研究人员已经提出了大量的基于网络流量分析的方法或基于图模型的僵尸网络检测方法。但由于僵尸程序不断升级变异以及僵尸网络结构、协议不断复杂,使用单一的模型会导致误报,漏报,甚至失效。一方面,攻击者会通过模拟攻击、隐蔽通道等多种先进技术来逃避基于网络流量方法的检测。另一方面,现有的基于图的方法需要获取整个网络中全部主机间的所有通信数据,真实环境中的网络拓扑庞大、错综复杂导致检测难度大,通用性差。本文的主要研究工作为:深入研究了包括Mirai,Zeus,BlackEnergy,Athena,Ares五种新型的僵尸网络样本。搭建部署其所依赖的环境后,通过Docker容器技术模拟了 305台受感染的僵尸主机以及相应5台控制与命令服务器,采用WireShark捕获其产生的流量数据,并与从某ISP网关上捕获的背景流量混合构成本文实验数据集。本文实验中使用了 203,066台主机,总共捕获的数据包数为456,229,550。研究分析了僵尸网络的工作原理、控制协议及消息传递机制等,重点关注僵尸网络通信时的所特有的流量统计特征,基于k-means聚类、数据包大小分布向量的变化频率,提出将这两者各自加权线性结合来提升模型检测效果。实验结果表明,相似性模型的检测率达到98.36%,高于稳定性模型,证明了我们提取的高维僵尸网络统计特征有效。进一步分析发现,相似性分析可以检测稳定性分析检测不完全的Zues,而稳定性分析可以检测到相似性模型检测不出的Athena。在保证较低误报率的前提下,两者结合使检测到Zeus僵尸主机数比单纯使用稳定性模型所检测到的僵尸主机数多22台。深入研究了大规模网络图中正常节点的所有邻域点遵循的规则模式,结合网络中异常点与正常点的邻域分布显著不同这一事实,设计图特征检测模型。通过分析自我中心网络中点数、边数、权重等结构特征组成的特征对,采用最小二乘法结合局部异常因子算法构建基于僵尸网络通信图的节点异常检测模型。实验结果的准确率达到91.66%。设计并实现了基于网络流量统计特征与图特征混合分析的僵尸网络检测框架——BotMark。该框架基于相似性得分、节点异常得分、稳定性得分,采用投票机制标记僵尸流量。实验结果表明,BotMark的检测率达到98.36%,误报率为0.06%,报率显著降低。从准确率来看,BotMark达到了 99.94%的准确率,优于任何单一检测模型。此外,BotMark独立于命令与控制服务器所使用的协议(IRC、HTTP)和架构(中心化、点对点),同时不依赖任何二进制文件、流量指纹等先验知识,适用于任何复杂的僵尸网络场景。