论文部分内容阅读
V更改特征码、加花指令、加壳免杀等木马免杀技术的出现,对高度依赖杀毒软件的计算机系统构成了很大威胁。然而,一些木马在通信过程中会表现出固有的特征,并不会因为通信两端程序的静态特征改变而改变,因此,对基于通信流量的木马检测的研究具有重要意义。针对以上木马检测技术的不足,本文设计了一套基于网络会话特征统计的木马检测系统。本文的主要内容如下:(1)对木马的通信特征进行研究,并深入分析网络流量采集技术及恶意流量识别技术,最终确认基于Netfilter框架建立实时网络数据采集平台,并提出基于特征统计的协议识别技术来识别恶意流量。(2)采用线下进行模型训练线上进行识别的机制,并基于模块化设计思想制定了木马检测系统的架构,将系统的整体功能分为三个模块来实现,分别为:数据采集模块、离线训练模块和木马识别模块,每个模块又分为不同的子模块,并对各个模块进行了合理的功能设计。(3)流量采集模块的设计。基于linux内核中的Netfilter框架进行设计,在内核态进行实时流量获取,并在用户态进行数据包会话重组。(4)离线训练模块的设计。设计了14种基于统计的网络会话特征用于模型库训练,并提出了基于相对偏差的特征选取算法为加密流量和非加密流量分别选取了不同的网络特征组合。基于这些特征对离线数据包进行解析、特征提取并写入到模型库中。(5)木马识别模块的设计。提出使用K_L距离作为检测算法来检测待检会话与模型库的相似度,并基于现实场景对该算法进行了改进。待检流量与模型库进行相似度计算,小于阈值则告警,否则视为正常流量。综上,采用本文设计的检测系统对加密型和非加密型木马进行识别检测,为提高系统检测的实时性,只检测每条会话的前10个到20个数据包。实验结果表明,系统在满足实时性的同时准确率达到87%以上,满足当前木马检测的需求。