论文部分内容阅读
随着各种新技术(5G,云计算,大数据)的不断发展,网络场景和业务越来越复杂,扩大了可利用的攻击面,导致各种网络威胁层出不穷。常见的木马,僵尸网络,APT,DDoS等威胁都需要建立C&C通信,因此可以从网络通信阶段去分析和检测以上网络威胁,从而实时的阻断网络威胁的通信过程,达到网络系统安全防护的目的。为了避免被安全设备识别,网络威胁通常采用应用层网络隧道的形式去构建隐蔽通道,实现C&C通信。威胁通过伪装成正常应用层协议,从而绕过安全控制策略,实现通信的目的。因此,可以通过识别应用层隧道来检测各种网络威胁。应用层协议的通信流量大,承载业务复杂,给隧道的检测造成了极大的困难。现有工作中基于特征签名的检测方法的误报率较高,效率也比较低,而且无法分析加密隧道。基于协议异常的检测方法可以在隧道实现原理上去分析和检测隧道。但是随着协议伪装技术的发展,基于协议异常的检测方法识别率越来越低。基于行为统计的检测方法是当前的研究热点,其通过分析网络通信数据的行为来检测隧道。但是该方法存在行为分析困难,建模复杂,实时性差等缺点。随着网络业务的不断丰富,协议越来越复杂,单独一种检测方法很难实现隧道检测的高精确率和低误报率。为了解决现有工作的不足,本文提出了一个结合规则和机器学习的通用应用层隧道检测方案,整个检测方案主要包括两个部分:DGA域名过滤规则和机器学习模型。本文首先基于trigram模型设计了一个DGA域名过滤规则,当通信数据所采用的域名明显不满足过滤规则时,直接进行阻断;当满足过滤规则时再采用机器学习模型对通信数据进行分析。设计DGA过滤规则的目的是识别特征明显的应用层隧道,减少机器学习模型需要处理的数据量,提高了检测的效率和实时性。为了构建一个通用的机器学习模型,本文首先提出了一个针对于应用层隧道检测的通用特征提取框架,该框架综合了之前的研究工作,结合基于特征签名的检测方法,基于协议异常的检测方法和基于行为统计的检测方法,从网络层,传输层和应用层等多个角度综合分析和提取所需要的统计特征和安全特征。并基于该框架,分别对当前最为常见的三种应用层隧道:DNS隧道,HTTP隧道,HTTPS隧道进行分析。实验结果表明本文提出的检测方案可以解决现有工作的不足,是一个通用和高效的应用层隧道检测方案。同时本文对隧道检测中的数据采集问题进行了相关研究,提出了一个基于回归和降维的自适应多维数据采集方法,提高了数据采集的有效性。最后提出了一个基于窗口的启发式规则来降低工程中威胁检测难以处理的高误报率问题。