基于决策树分类算法的http隧道检测方法

文档序号:7691277阅读:805来源:国知局
专利名称:基于决策树分类算法的http隧道检测方法
技术领域
本发明涉及一种HTTP隧道检测方法,特别是基于决策树分类算法的HTTP隧道检 测方法。
背景技术
HTTP隧道的出现方便了用户使用网络,突破了很多网络访问限制。但也给黑客们 提供了实施网络攻击的有力工具。目前流行的木马技术基本上都是使用隧道技术来穿透用 户的安全防护设施,达到窃取用户私密信息的目的。因此,HTTP隧道检测技术是一种重要 的网络信息安全技术。目前的HTTP隧道检测技术主要有基于签名的检测、基于协议的检 测、基于行为的检测等。随着HTTP隧道技术的不断发展,现有的检测技术越来越不能满足 应用需求。
文献 1 "Web Tap -Detecting Covert Web Traffic, Proceedings of the Ilth ACMConference on Computer and Communications Security (CCS), Oct. 2004. " yJ^JfT一 种基于网络数据流分析的HTTP隧道检测方法,该方法采用过滤器来检测木马软件和间谍 软件,这些软件都是通过HTTP隧道向外传输数据。过滤器检测机制主要基于对HTTP协议 头的分析,包括协议头格式、请求到达时间间隔、请求包大小、上行带宽使用率等,然而随着 隧道技术的不断发展,协议伪装技术也会越来越高,单纯使用应用层特征的检测方法难以 实施有效的的检测。
文 献 2 "Tunnel Hunter -Detecting Application-Layer Tunnels with Statistical Fingerprinting,Elsevier Computer Networks (COMNET),Vol. 53, No. 1, pp. 81-97,Jan. 2009. ”公开了一种基于传输层数据包统计特征分析的隧道检测方法,该方 法采用包的大小、包的到达时间间隔、包的队列顺序等三个传输层特征建立了 HTTP协议的 统计指印。通过与指印对比计算出当前数据流与正常HTTP数据流的相异度,若相异度超过 某个临界值,则判断该数据流是HTTP隧道流。这种统计指印算法在HTTP隧道检测方面存在 一些不足,首先,算法的精确度很大程度上依赖于指印的建立,而指印的建立完全依赖于训 练数据集,当训练集的数量不够充足时,无法保障算法的准确性;其次,模型的训练需要大 量的数据,过程比较复杂,需要建立指印图像,对内存的消耗较大,训练效率不高;指印模型 是二维图像,所以只能使用包大小和到达时间间隔两个流特征,有很大的局限性;最后,临 界值的选取对精度影响较大,使用单一数值来进行判断,相当于根据一个属性值进行分类, 稳定性不高。发明内容
为了克服现有的基于传输层数据包统计特征分析的隧道检测方法稳定性差的不 足,本发明提供一种基于决策树分类算法的HTTP隧道检测方法,使用HTTP数据流和隧道数 据流对决策树分类模型进行训练,使用更多的特征来训练模型,模型的训练过程相对简单, 不牵涉图像指印,对内存的消耗较少,依据多个分支节点上的属性进行判断,而不依赖于某一个特定临界值,可以实现包特征和流特征的有效融合,提高检测稳定性。
本发明解决其技术问题所采用的技术方案是一种基于决策树分类算法的HTTP 隧道检测方法,其特点是包括以下步骤
(a)使用流量采集卡在网关出口捕获目的端口为80并且传输协议为TCP的上行网 络流量,周期为一个星期,以PCAP文件格式保持;
(b)对捕获的网络流量进行数据包解析,根据包头信息中的源IP地址、源端口、传 输协议、目的端口、目的IP地址进行网络流重组,源IP地址、源端口、传输协议、目的端口、 目的IP地址中相同的数据包组成一个数据流;
(c)以数据流为单位提取统计特征,包括包大小、包到达时间间隔、流大小、流持续 时间,加上协议类别标签;
(d)根据数据流的目的IP进行分类汇总,并按照降序排列;然后对前30个IP地址 进行域名解析,并对属于知名网站的数据流进行标注,并认为访问这些知名网站的数据流 是纯净的HTTP数据;为获取HTTP隧道数据,在流量采集过程中,在连接互联网的计算机上 运行隧道软件——HTTP-Tunnel且只允许运行隧道软件,根据这些连接互联网的计算机IP 地址从样本数据集中获取HTTP隧道数据;分别对采集的HTTP流量和HTTP隧道流量进行特 征提取,生成两个数据集,分别记为Http_SET和TurmelSET ;
(e)使用两个数据集Http_SET和Turme 1_SET训练HTTP隧道的检测模型;
分别从Http_SET和TurmelSET中选取60%的数据组成训练集合D,训练集中包 含两种不同类别,HTTP数据和HTTP隧道数据;用Cu表示D中属于类别Ci的数据流构成的 子集,IDI和ICuI分别表示集合中的数据流的数目;用下面公式来计算信息熵的增益率m
Info(D) = Pi Iog2 (Pi)( j )i=\
式中,Pi表示集合D中任一数据流属于类别Ci的概率,用ICul/lDl来估计, Info(D)称为集合D的信息熵;
假设集合D中的数据流在属性A上有ν种不同的取值Ia1, a2,…,av},则使用属 性A作为分类节点时,将集合D划分成ν个子集{D1;D2,…,Dv};属性A达到纯净所需要的 信息量用下面公式表示

权利要求
1. 一种基于决策树分类算法的HTTP隧道检测方法,其特征在于包括下述步骤(a)使用流量采集卡在网关出口捕获目的端口为80并且传输协议为TCP的上行网络流 量,周期为一个星期,以PCAP文件格式保持;(b)对捕获的网络流量进行数据包解析,根据包头信息中的源IP地址、源端口、传输协 议、目的端口、目的IP地址进行网络流重组,源IP地址、源端口、传输协议、目的端口、目的 IP地址中相同的数据包组成一个数据流;(c)以数据流为单位提取统计特征,包括包大小、包到达时间间隔、流大小、流持续时 间,加上协议类别标签;(d)根据数据流的目的IP进行分类汇总,并按照降序排列;然后对前30个IP地址进 行域名解析,并对属于知名网站的数据流进行标注,并认为访问这些知名网站的数据流是 纯净的HTTP数据;为获取HTTP隧道数据,在流量采集过程中,在连接互联网的计算机上运 行隧道软件——HTTP-Turmel且只允许运行隧道软件,根据这些连接互联网的计算机IP地 址从样本数据集中获取HTTP隧道数据;分别对采集的HTTP流量和HTTP隧道流量进行特征 提取,生成两个数据集,分别记为Http_SET和TurmelSET ;(e)使用两个数据集Http_SET和TurmelSET训练HTTP隧道的检测模型;分别从Http_SET和TurmelSET中选取60%的数据组成训练集合D,训练集中包含两 种不同类别,HTTP数据和HTTP隧道数据;用Ci, D表示D中属于类别Ci的数据流构成的子 集,IDI和ICuI分别表示集合中的数据流的数目;用下面公式来计算信息熵的增益率
全文摘要
本发明公开了一种基于决策树分类算法的HTTP隧道检测方法,用于解决现有的基于传输层数据包统计特征分析的隧道检测方法稳定性差的技术问题。技术方案是使用HTTP数据流和隧道数据流对决策树分类模型进行训练,对训练集数量的要求比统计指印方法要低;其次相对于统计指印方法只能使用两个流量特征,决策树分类方法可以使用更多的特征来训练模型,得到的分类规则更加准确,稳定性更好;模型的训练过程相对简单,不牵涉图像指印,对内存的消耗较少;最后,决策树分类方法依据多个分支节点上的属性进行判断,而不依赖于某一个特定临界值,具有更好的稳定性。
文档编号H04L12/26GK102035698SQ201110005150
公开日2011年4月27日 申请日期2011年1月6日 优先权日2011年1月6日
发明者丁要军, 蔡皖东 申请人:西北工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1