李洁;陈博;赵昱红
【摘 要】针对网络流量增长迅速,传统的检测方法很难解决恶意地址检测的问题,在介绍传统的恶意地址检测方法以及这些方法遇到的问题的基础上,提出了一种新的恶意地址检测思路,依靠恶意地址本身的语义特性和词汇特性建立地址分类模型,并给出模型的实现方法.通过实验测试4 389 763个地址,检测出地址3 292 322个,恶意地址834个,漏报率25%,检测时间3.21 min.由于不需要加载外部资源,处理速度相对传统检测方法有质的提高,能够适应大规模网络流量下的恶意地址检测. 【期刊名称】《吉林电力》 【年(卷),期】2016(044)004 【总页数】4页(P1-4)
【关键词】网页地址(URL);网络流量;恶意地址检测;检测模型 【作 者】李洁;陈博;赵昱红
【作者单位】国网吉林省电力有限公司电力科学研究院,长春 130021;国网天津电力信通公司,天津 300010;国网吉林省电力有限公司,长春 130021 【正文语种】中 文 【中图分类】TP393.18
互联网的迅速发展带来了新的沟通方式和商机,然而每天有上百万的流氓网站进行着各种各样的恶意活动,给用户造成了极大危害。面对这种大规模的网络流量,传统的恶意地址检测方法已经不能满足实时性的要求,因此,亟待研究针对大规模数
据集的恶意地址的检测方法。在各种检测方案中,通过对恶意网页地址(URL)检测发现恶意活动是一项重要的技术,因为常见的网络活动都需要URL作为媒介。 1.1 黑名单机制及缺陷
在检测恶意URL的研究中,黑名单机制是一个普遍使用的解决方案[1]。由权威机构通过网络爬虫程序或者邮件等网路业务抓取流量数据,搜集并提供可疑URL地址列表,验证机构通过后端分析程序或者专家手工检测确定恶意地址。经过整理、发布恶意地址数据库,帮助用户鉴别恶意地址或者对恶意地址进行过滤,以此保护用户不受攻击。黑名单机制是目前防护恶意地址的主要手段,其模式简单,易于实现,各个机构协同合作,通过不断完善恶意地址数据库提供检测准确率。随着攻击技术的不断发展和网络环境的不断改变,传统的黑名单技术在实际场景中遇到很多问题,黑名单数据库膨胀会导致检测效率减低,不能有效检测未知的恶意地址,难以应对大规模数据。 1.2 基于内容分析机制及缺陷
基于内容分析的检测方法的思路是访问URL下载网页内容,然后根据运行情况分析其中是否存在恶意行为。通过搭建一个检测系统,分析URL地址指向页面的具体动作,能够准确地分析出URL是否为恶意地址。基于内容分析的检测方法特点是准确率高,能够有效应对地址变化等黑名单机制无法检测的情况,对新出现的恶意地址有很好的检测效果。这种方法需要下载网页内容或者访问某些网络信息,所以检测速度非常慢;同时,这种检测方法将服务器暴露在恶意攻击面前,服务器本身容易受到攻击。针对这些问题,研究人员提出一些改进方案:将基于内容的分析服务和黑名单机制配合使用,或者采用缓冲机制优化效率,避免重复分析同样的地址。由于这种检测机制本身对资源和时间的消耗特性,对大数据实时检测的情况不实用。
在海量的网络数据中,常见的恶意地址包括:钓鱼网址、木马网址、SQL注入攻击
地址、跨站攻击地址。实际网络地址检测是一个极度不均衡、大规模的二元分类问题,其特点是:恶意地址数量大,然而与互联网海量的网络数据相比,恶意URL所占比例很小;大量的恶意网址为了躲避黑名单,生命周期越来越短,需要提供实时检测服务,对检测速度要求很高。这就意味着采用传统的黑名单方法会随着恶意网址变化速度的提升而逐渐失去效率。为了解决以上问题,本文提出了一种基于URL本身特征提取的检测技术。根据恶意地址本身的词法特性和语法特性,找出恶意地址与正常地址的区别,结合当前各种网络流量分类[2],并通过鲍威尔(PA)算法和克拉克-赖特(CW)算法训练模型,搭建地址过滤器。 2.1 基于URL本身的动态检测
基于URL本身的动态检测与传统方法中内容分析的检测机制有本质的不同。传统方法是主动访问可疑地址,通过检测加载可疑地址后的异常行为来判定,这种方法虽然能够准确判定是否存在恶意行为,但是下载时间和运行监测时间较长,而且容易受到恶意行为的攻击。
基于URL本身的动态检测是指通过查询域名本身的附着属性,对域名性质进行评估,评估依据包括网页排名(Page Rank)和域名。 2.1.1 Page Rank
Page Rank代表URL地址的索引和质量。Page Rank的值是一个介乎于[0,1]的数值,体现此网页在一群网页集合中的重要性,数值越高,网页越重要。检测方法是通过互联网上的Page Rank服务,查询待检测URL的值,作为检测模型的一个参数。检测内容包括URL的Page Rank,域名的Page Rank,以及是否存在Page Rank。
由于钓鱼网页生命周期很短,所以其Page Rank很低,或者根本不存在爬网数据库,因此可以通过检测URL地址的Page Rank,作为分类的一个因素。 2.1.2 域名
域名是URL字符串中的重要组成部分。互联网上有许多运营商提供域名查询的功能,例如whois。通过类似服务查询到域名的详细信息,可以作为鉴别的一项重要依据。
2.2 基于URL本身的静态检测
基于URL本身的动态检测方法比基于内容分析的动态监测速度快,但是由于仍然是基于网络检索的数据进行评价,在速度上仍有限制,因此,希望找到一种不需要访问外部数据,仅仅依靠URL本身进行分析的方法,这种方法可行的原理是恶意地址的特殊性。由于恶意地址本身与正常地址有很大区别,所以可以通过深入分析,提取特征值,建立过滤模型。采用权重评估的方法对待检测URL进行特征提取和权重评分,当得分超过一定阈值,即可判定为恶意地址。
基于URL本身的静态检测分为基于词法特征的检测和基于语义特征的检测。词法检测提取URL中的单词,通过与恶意单词库比对,得到权重分数。此种方法效率很高,但是由于恶意地址的生命周期比较短,所以词汇检测的有效时间比较短。语义检测侧重于分析恶意域名的普遍特征,根据恶意域名的特征值来判定,效率较低,但是有效时间更长。 2.2.1 词汇检测
词汇检测方法采用BOW模型来描述URL。BOW模型最早出现在神经语言程序学(NLP)等领域。该模型忽略文本的语法和语序,用一组无序的单词来表达一段文字或一个文档。近年来,BOW模型被广泛应用于计算机视觉中。应用于文本的BOW类比,图像的特征被当作单词。BOW模型可认为是一种统计直方图。文本检索和处理应用中,可以通过该模型很方便地计算词频。
词汇特征是针对URL地址中的词汇元素进行分析和比较,首先需要对URL进行分解。URL组成部分包括:域名、路径、子目录、文件名、文件后缀、参数(见表1)。这些组成部分有特殊的分隔符分开,例如:“\\”、“/”、“.”、“,”。具体分
隔符见表2。
词汇特征选择3个参数进行检测:域名、路径、参数。域名可以用于和恶意地址黑名单比对,也可以和常见正规网址区别检测;路径可以用于检测特殊恶意程序;参数可以用于检测跨站、SQL注入等恶意域名。
词汇特征检测的基本思路是将恶意地址中提取的词汇存放在数据字典中,构成恶意地址特征库。检测时,通过提取地址中的词汇和特征库中的数据比对,求得评估分数。
2.2.2 语义检测
语义特征是通过分析恶意URL的静态特征来实现过滤功能。这些静态特征不像词汇特征那样,可以轻易被改变,是恶意地址的本质特征。通过研究大量的钓鱼地址和恶意软件的地址,整理出语义特征(见表3)。
通过基于URL特征的恶意地址鉴别方法的研究,可以利用机器学习算法[3]实现过滤模型的具体步骤。 3.1 实现方法
采用CW算法搭建学习模型。模型中每个学习参数都有一个信任度,信任度小的参数更应该学习,所以会得到更频繁的修改机会。这种方式更符合过滤机制,对于那些可能检测错误的地址,交给安全性更高的后端验证程序处理,从而能够不断完善过滤模型。
训练过程为:训练数据→特征提取→CW算法→特征库。系统获取已知属性的URL实例,提取词汇特征和语义特征。根据训练数据的属性(恶意地址/正常地址)训练特征库。为了处理极端不平衡的数据,使用过度采样技术来确保恶意URL的特征可以被过滤器学习。在训练过程中,每一个正常的实例都会跟随一个随机挑选的恶意实例,这样可以让两个训练集获得平衡的数据。
经过一定量的训练数据调整后,开展如图1所示的预测工作,使用更新过的检测
模型来计算每一个待检测URL地址的恶意特征得分。当恶意特征得分超过阈值时,即认为此URL是恶意地址,否则判定为正常地址。
判定为恶意地址的URL会被发送到后端检测系统。后端检测系统会采用黑名单技术、行为检测技术、手工检测等传统检测方法进行检测。经过后端检测系统验证后,如果确实为恶意地址,则说明模型判定成功;如果不是恶意地址,则说明模型还有缺陷,将判定错误的地址放入训练过程,对模型进行修正。通过大量数据的训练,检测模型的准确率会逐渐提高,直至稳定状态。 3.2 检测数据
实验数据集来自于一个邮件服务运营商在日常业务中提取的URL地址,以及后端分析结果。分析结果一方面来自于对用户提交的可疑地址进行的检测,另外也包括蜜罐系统捕捉到的恶意地址。数据集类型见表4。 3.3 实验结果
实验中使用表4中的数据集1和数据集2作为训练数据,对数据集3进行预测。在训练过程中,通过设置阈值,调整预测过程中的检出个数占总数的75%。检出数据指经过系统检测,认定为正常地址的数据。最终针对数据集3的预测结果见表5。
通过表5可知,模型前端过滤系统能够每分钟处理一百万个URL地址,同时能够保证过滤75%的数据,剩余的25%的数据可以采用后端检验系统进行深入分析。通过采用基于URL特征分析的技术,能够过滤掉大部分的数据集,同时保证不遗漏过多恶意地址。结合后端综合分析系统,能够在保证检测质量的前提下,显著提高检测速度。
在数据背景下,许多传统的检测方法都失去作用,急需研究针对性的解决办法。URL检测在信息安全领域是一项重要的安全技术。
本文针对大规模地址过滤的实时性要求,从URL本身的特性出发,设计了一套恶
意地址检测模型。实验证明,能够有效应对大规模数据集环境下的地址检测问题,相对传统检测方法,在检测速度上有显著提升。
【相关文献】
[1]刘健,赵刚,郑去鹏.恶意URL多层过滤检测模型设计与实现[J].信息网络安全,2016(1):75-80.
[2]熊刚,孟姣,曹自刚,等.网络流量分类研究进展与展望[J].计算机集成技术,20121(1):33-42.
[3]黄华军,钱亮,王耀钧.基于异常特征的钓鱼网站URL检测技术[J].信息网络安全,2012(1):23-25.
因篇幅问题不能全部显示,请点此查看更多更全内容