基于自适应异构多分类模型的钓鱼网站检测方法和系统与流程

文档序号:16199551发布日期:2018-12-08 06:28阅读:230来源:国知局
本发明涉及计算机网络安全领域,具体涉及一种基于自适应异构多分类模型的钓鱼网站检测方法和系统。
背景技术
:随着互联网技术的蓬勃发展,网络安全问题层出不穷。网络钓鱼是一种典型的在线欺诈行为,它以互联网为载体,通过伪装成信誉良好的合法网站欺骗用户以获得用户的敏感信息,被欺骗的用户会产生不同程度的个人信息泄漏,继而导致经济损失。如何快速准确地检测钓鱼网站成为web(全球广域网)信息安全研究热点。目前已公开的钓鱼网站检测技术主要包括以下几种方式:(1)基于黑白名单机制的检测技术:作为一种实用的核心技术,黑白名单具有高效准确的优点。通过对域名的判定,可以快速定位钓鱼网站,是最常用的实现技术之一[1]。(2)基于视觉相似度的检测技术:曹久新等人提出了一个基于嵌套emd(earthmover’sdistance)的网页相似度判定算法,对web图像进行分割,利用分割后的子图特征来构建网页的arg(attributedrelationalgraph)。计算得到不同的agr属性的距离后,通过嵌套emd方法得到钓鱼网站与受保护网站网页的相似度,进而实现对钓鱼网站的高精度检测[2]。李喧等人基于emd算法,利用视觉上的相似度来判别钓鱼网站。该种算法采用网页中像素相似度的比较所得的结果作为判断钓鱼网站的依据[3]。(3)基于贝叶斯算法的检测技术:金庆等人基于规则的贝叶斯算法,制定了一系列的匹配钓鱼网站的规则。随后为每个规则分配其相应的权值,计算其修正系数,得出被测网站是钓鱼网站的概率。进而可通过概率阈值判断其是否为钓鱼网站[4][5]。庄蔚蔚等人对网页标签标题内容,网站中关键字信息、页面描述信息、图片链接以及网站版权信息等8个特征,利用扩展贝叶斯算法化及其改进后的支撑向量机来进行分类集成,构建出一种能够对网络钓鱼攻击进行智能检测的系统[6]。(4)基于文档结构的检测技术:郭敏哲等人分析了web网页文档对象,提取文本对象模型中的常被钓鱼者利用的网络钓鱼敏感信息特征,来判断该网站是否为钓鱼网站。该算法有效地滤除了网站中的phishing(网络仿冒)页面,强有力的制止了网络钓鱼者的恶意钩鱼攻击[7]。(5)基于深度学习的钓鱼网站检测技术:许珑于结合深度学习的技术,提出了多层结构的dbn-knn模型,将其运用到钓鱼网站的特征识别中,识别出钓鱼网站[8]。(6)其它类型的检测技术:黄华军等人提出基于半脆弱水印的网络钓鱼主动防御[9]以及基于异常特征钓鱼url检测算法[10];张健毅等人提出一种文本语义理解的网络钩鱼检查算法[11];其余防御措施包括针对web-mail邮箱的跨站网络钓鱼攻击的研巧、基于云计算的url过滤[12]、svm学习算法[13]等。在以上技术中,基于黑白名单的检测方法时效性较差、名单范围也存在不足;基于视觉相似度的检测技术算法复杂,检测消耗的时间较长,不能适用于海量url(uniformresourelocator:统一资源定位器)的在线实时检测;基于贝叶斯算法的检测技术在鲁棒性和泛化性能上不是很理想;基于文档结构的检测技术存在特征覆盖不全面的问题,漏报较多;基于深度学习的钓鱼网站检测技术在特征识别上有优势,但特征的稳定性较差,容易受到样本污染的干扰。参考文献:[1]huangc.,mas,chenk.,usingone-timepasswordstopreventpasswordphishingattacks[j].journalofnetworkandcomputerapplications.2011,34(4):1292-1301.[2]曹欧新,毛波,罗军舟,等.基于嵌套emd的钓鱼网页检测算法[j].计算机学报,2009,32(5):922-929.[3]李喧,刘董.以视觉相似为基础的phishing检测方法[j].清华大学学报(自然科学版),2009,49(1):146-148.[4]zhangh.,liug.,chowt.w.s..etal.textualandvisualcontent-basedanti-phishing:abaysianapproach[j].ieeetransactionsonneuralnetworks.2011,22(10):1532-1546.[5]金庆,吴国新,李丹,等.用基于规则的贝叶斯算法实现网络钓鱼的过滤[r].湖南:第五届中国信息和通信技术安全学术会议,2007,372-378.[6]庄蔚蔚,叶艳芳,李涛,等.基于分类集成的钓鱼网站智能检测系统[j].系统工程理论与实践,2011,31(10):2008-2020.[7]郭敏哲,袁津生,王雅超,等.网络钓鱼web页面检测算法机[j].计算机工程,2008,34(20):161-163.[8]许珑于.基于深度学习的钓鱼网站检测技术的研究[d].电子科技大学,2017.[9]殷水军,刘嘉永,刘亮.针对web-mail娜箱的跨站网络钓鱼攻击的研究[j].通信技术,2010,43(8):164-166.[10]huangh.j.,wangy.j.,xiel.l..etal.anactiveanti-phishingsolutionbasedonsemi-fragilewatermark[j].informationtechnologyjournal.2013,12(1):198-203.[11]huangh.j.,qianl.,wangy.j..asvm-basedtechniquetodetectphishingurls[j].informationtechnologyjournal.2012,11(7):921-925.[12]zhangh.,liug.,chowt.w.s..etal.textualandvisualcontent-basedanti-phishing:abaysianapproach[j].ieeetransactionsonneuralnetworks.2011,22(10):1532-1546.[13]shengs.,wardmanb.,warnerg..etal.anempiricalanalysisofphishingblacklists[c].in:proc.ofthesixthconferenceonemailandanti-spam.2009:1-10.技术实现要素:针对上述已有方法存在的问题,本发明公开了一种基于自适应异构多分类模型的钓鱼网站检测方法和系统,用于对钓鱼网站进行实时检测,并具有较高准确性和稳定性。本发明公开了一种基于自适应异构多分类模型(ahmc)的钓鱼网站检测方法,该方法包括自适应异构多分类模型的学习和钓鱼网站的检测,具体步骤包括:步骤1,对某一类别的钓鱼网站样本集d,|d|=n,采用留一法交叉验证进行训练集和测试集的分类。设第j个训练集表示为dj,对应的第j个测试集表示为j为正整数。每个样本包含样本记录和样本标签;样本记录中包含网站的url和网页信息,样本标签用于标记是否为钓鱼网站。步骤2,通过线性加成构建自适应异构多分类模型h,如下:其中ωi为权重参数,为调整因子其中,t为基分类算法的个数。hi为第i种基分类算法,ωi为第i种基分类算法的权重参数,为调整因子。x表示样本记录。步骤3,多分类模型h的输入是各基分类算法的输入,输出是样本标签;对训练集dj,从每个样本的样本记录中提取每个基分类算法相应的特征作为输入。所述的基分类算法表征为线性函数,各分类算法的参数为独立同分布。步骤4,基于训练集dj,采用机器学习算法对各基分类算法的参数以及多分类模型h中的ωi,进行训练和参数求解。在训练求解时,对每个基分类算法从样本记录中提取相应的特征作为输入,优先保证多分类模型的输出为样本标签。步骤5,在测试集上对多分类模型h进行测试和优化,直到各基分类算法的参数和多分类模型h中的参数ωi,收敛,对多分类模型h的机器学习算法结束。步骤6,由最终得到的各基分类算法的参数和多分类模型h中的参数ωi,得到该类钓鱼网站的检测模型h’。步骤7,获取待检测网站的记录,包括网站的url和网页信息,输入检测模型h’判断是否为钓鱼网站。本发明也公开了一种基于自适应异构多分类模型的钓鱼网站检测系统,包括域名词素特征分类器、主题索引特征分类器、内容相似性特征分类器、结构样式特征分类器、视觉规则特征分类器、线性加成训练模块、集成分类器、训练数据集管理模块和检测及告警模块。系统运行中各个模块的功能如下:所述的域名词素特征分类器对输入的网站url的域名字符串进行特征提取和训练;所述的主题索引特征分类器对输入网站的网页标签<title>、<meta>和页脚的内容进行特征提取和训练;所述的内容相似性特征分类器对输入网站的网页内容中的信息进行特征提取和语义抽象,对特征进行训练;所述的结构样式特征分类器对输入网站的网页源代码结构进行特征提取和训练;所述的视觉规则特征分类器对输入网站的网页的标志性视觉特征进行提取和学习;所述的线性加成训练模块对所述的域名词素特征分类器、主题索引特征分类器、内容相似性特征分类器、结构样式特征分类器和视觉规则特征分类器进行线性组合,组合形式如下:其中,h(x)表示五种分类器组合的多分类模型,h1~h5分别为五种分类器对应的分类函数,ωi为第i种分类器的权重参数,为调整因子,x表示样本记录;所述的线性加成训练模块利用训练集和测试集对五种分类器中的参数和ωi、进行训练和优化;所述的集成分类器是线性加成训练模块输出的最终模型,构建钓鱼网站的检测模型,对各分类器的权重进行动态维护;所述的训练数据集管理模块中存储训练数据集,对训练样本进行标签管理和分组,进行训练集和测试集的划分和维护,以及管理不同分组中样本采样的均衡性;所述的检测及告警模块依据所构建的钓鱼网站的检测模型,对待检测网站进行检测,当检测到钓鱼网站时告警。本发明与现有技术相比,具有以下明显优势:(1)本发明的方法和系统采用集成学习的技术,将多个弱分类器进行线性组合,获得比单一分类器显著优越的泛化性能,提高了钓鱼网站检测的准确性和稳定性。(2)本发明的方法和系统采用权重自适应学习,通过样本对权重进行学习,而不依赖于在先经验和领域专家的建议,在样本特征和分布发生变化的情况下,在训练的学习的过程中会自动更新权重。(3)本发明系统中的五个弱分类器是异构的,每个单一的分类器都有一定的准确性,并且彼此之间没有强的依赖关系,确保集成的模型有更高的准确性。五个弱分类器的整体开销不比单一复杂学习模型的大。(4)本发明方法能对钓鱼网站进行实时检测,具有较高的准确性、召回率和鲁棒性。(5)本发明系统,能够处理海量url的高性能实时检测,可以实用于在线的工程系统中,有较高的可用性和稳定性。附图说明图1是本发明的基于自适应异构多分类模型的钓鱼网站检测方法的流程示意图;图2是本发明的基于自适应异构多分类模型的钓鱼网站检测系统的模块组成示意图;图3是本发明的钓鱼网站检测系统中线性加成训练模块进行数据训练的示意图;图4是本发明的基于自适应异构多分类模型的钓鱼网站检测系统的部署图。具体实施方式下面结合附图和实施例对本发明的技术方案进行详细说明。所举实例只用于解释本发明,并非用于限定本发明的范围。如图1所示,本发明给出了一种基于自适应异构多分类模型(ahmc)的钓鱼网站检测方法,该方法包括自适应异构多分类模型的学习和钓鱼网站的检测,下面说明各具体实施步骤。步骤1,选取相同类别的钓鱼网站,例如同为银行类型的仿冒的钓鱼网站,作为样本集合d,|d|=n,n表示d中样本个数。采用留一法交叉验证对样本进行训练集和测试集的分类。第j个训练样本集为:dj={(x1,y1),(x2,y2),…,(xm,ym)}(1≤j≤n,1<m<n);对应的第j个测试样本集:其中,每个样本包括样本的记录x和标签y,如样本集中的(x1,y1)表示一个具体的样本实例,其中x1表示样本的记录,y1表示样本标签。此处的样本的记录包括网站的url及对应的网页信息,样本标签用于标记是否为钓鱼网站。d/dj表示d集合中去除dj。在该步骤中,样本的规模n,应尽可能的多,建议不能低于100。步骤2,构建自适应异构多分类模型h,如下:其中,t为基分类算法的个数。hi为第i种基分类算法,ωi为第i种基分类算法的权重参数,为调整因子。基分类算法在后续的表述中,也称为分类算法或学习算法,相应的分类器也对应相应的学习器。基分类算法是异构的算法,确保了算法的多样性,本发明实施例中设置了5个固定的分类算法,其中,h1代表域名词素特征分类算法,是根据域名词素来判断是否为钓鱼网站;h2代表主题索引特征分类算法,是根据网页中主题标签下内容判断是否为钓鱼网站;h3代表内容相似性特征分类算法,是根据网页中内容标签下内容进行相似性比较判断是否为钓鱼网站;h4代表结构样式特征分类算法,是根据源代码的结构来判断是否为钓鱼网站;h5代表视觉规则特征分类算法,是根据网页的图标、配色、图片等来判断是否为钓鱼网站。在实践中可以按照异构的原则进行必要的扩展。步骤3,将训练集dj中的每个样本中的样本记录作为基分类算法的输入,样本标签作为输出,训练多分类模型h。将(xi,yi)中的xi作为各分类算法h1-h5的输入,对于每个基分类算法,从xi中提取需要输入的特征,将yi作为对应的输出,训练对应分类算法的特征和参数,如下所示:h1(xi)→yi,h2(xi)→yi,h3(xi)→yi,h4(xi)→yi,h5(xi)→yi本发明实施例中对于多分类模型h,表示如下:当输入是样本记录xi时,输出对应的样本标签yi,上式右边是分类函数的线性加权组合。通过对该多分类模型进行训练,计算获取权重参数ωi和调整因子本发明方法在进行训练时,是将输入样本记录xi中提取相应的特征作为各分类算法h1-h5的输入,优先保证多分类模型的输出为样本标签yi,可设置各分类算法的输出也为yi,对各分类算法的参数和多分类模型的权重参数、调整因子进行训练。本发明中设置的基分类算法表征为线性函数,各分类算法的参数为独立同分布,这样整体训练的开销不会比单一复杂学习模型的大。不同的基分类算法的输入特征可能是不同的,需要从样本记录中选取适用的特征输入。例如域名词素特征分类算法h1的输入特征包括顶级域名、二级域名等。步骤4,采用机器学习算法对各分类算法的参数和权重参数和调整因子进行训练和参数求解。例如,在求解时,各分类算法的参数可采用极大似然估计法,对集成模型h的参数可以采用em(最大期望)算法迭代求解,其约束条件可以采用最小化损失函数来形式化,求解过程可通过统一的计算框架—极大似然估计法的参数求解来实现,在计算机执行的过程中是统一进行矩阵求解。步骤5,在测试样本集合上对模型h进行测试和优化。轮询所有的测试样本和训练样本,直到参数和调整因子收敛于稳定的阈值,模型的学习算法结束。本步骤进行测试和优化两个目的。当测试样本上出现冲突,或者出现调整因子无法收敛的情况,在这种条件下,要对样本进行修正,对训练样本进行类别修改和单独处理,修正样本标签,更新训练集样本,然后对模型h重新进行一次训练调整分类算法的参数,即重新执行步骤4的训练过程,如此来达到优化参数和调整因子的目的。本发明方法采用留一法来获得训练集和测试集,设共获得了k组训练集和测试集,对每组训练集和测试集执行上面步骤3~步骤5,最终可能获得多组基分类算法的参数和调整因子此时,可以对获得的分类算法参数和调整因子进行组合平均求值作为最终结果。步骤6,依据步骤5得到的各分类算法参数和调整因子ωi,得到对应该类钓鱼网站的自适应异构多分类模型h’。在步骤5中优化得到h为模型实例,将得到的模型h进行参数迁移,初始化钓鱼网站的检测算法h’。模型h’和h是同构的,本发明实施例中的h’是集成了h1-h5的混合模型。步骤7,将待检测的网站,获取其记录,包括网站url以及网页源码等等网页信息,然后输入检测模块h’中,以获取该url是否为钓鱼网站及仿冒对象等信息。输入网页信息不需要对其进行格式化,各分类器用到的特征都将在网页源码结构中自动获取。在该步骤中,获取url对应的网站信息和源码数据,可采用爬虫技术,当有新的特征和变种出现时,可只更新相应的基分类算法及特征,对权重参数和调整因子的影响较小。本发明采用集成学习的思想,与现有经典集成学习的区别主要体现在:经典的集成学习包括两个阶段,第一个阶段要先训练各基分类器,第二个阶段是将第一阶段的输出作为输入对各基分类组合后的参数进行训练。而本发明采用统一的计算框架进行一起训练,不进行两阶段的划分。本发明公开了一种基于自适应异构多分类模型的钓鱼网站检测系统,主要由域名词素特征分类器、主题索引特征分类器、内容相似性特征分类器、结构样式特征分类器、视觉规则特征分类器、线性加成训练模块、集成分类器、训练数据集管理模块和检测及告警模块9个部分组成。如图2所示,下面说明书系统运行中的各个模块的功能。域名词素特征分类器:该分类器的特征主要来自对钓鱼网站url字符串中域名部分的统计特征。域名词素特征分类器对输入的网站url的域名字符串进行特征提取和训练,实现的功能包括但不限于:1)判断顶级域名的可疑程度;2)提取二级域名中包含的词素信息;3)获取域名的层级结构及子域名的长度;4)构建和完善词素特征库。域名词素特征分类器中,1)顶级域名的可疑程度来自于统计上的经验,通常pw、win、top、xyz等顶级域名出现钓鱼网站的概率较大;2)二级域名中的词素信息指构成二级域名字符串中包含某些银行的简称,如95588、95533、cmb、icbc、boc等等;3)在三级或者四级域名中会包含例如www-bankofbeijing-com-cn这样连字符组成的银行网址的短词。主题索引特征分类器主要对输入网站的网页标签<title>、<meta>和页脚的内容进行特征提取和训练。主题索引特征分类器实现的功能包括但不限于1)提取标签中的特征,进行特征的冲突消解和类型分类;2)构建和完善主题索引特征库。主题索引特征分类器的优点是定位快速准确,缺点是泛化能力弱,误报高。在<title>标签中的内容与非仿冒的正常网站区分度不高,或者与网页正文的内容没有关联性。因此该分类器需要配合白名单库进行分类。内容相似性特征分类器:主要针对网页内容中的短文内信息进行特征提取和语义抽象。包括但不限于1)提取<body>标签中的文本,其中<a>,<p>,<div>,<span>,<td>,<table>,<form>等标签中的内容长度提取不能超过15个字符,正文中的内容按照2-8字符提取;2)对文本特征进行向量化和规范化;3)词嵌入,利用word2vec工具将词量映射为低维特征向量;4)构建词特征向量库。内容相似性特征分类器的检测效果稳定,准确性和召回率的指标均比其他分类器好。其中的向量化是对短文本的去重和过滤;规范化是将具体的时间词、变化频繁的数字、出现频率过高的干扰词、没有区分度的广告、第三方的链接词等删除。结构样式特征分类器对输入网站的网页源代码结构进行特征提取和训练。结构样式分类器的主要功能包括:1)针对js脚本的代码,css的样式、form表单、dom结构进行源代码分析;2)分析源码中的同源代码结构,提取公共的代码片段;3)构建同源代码相似矩阵。结构样式特征分类器对同一幕后组织开发的新钓鱼网站具有预判能力,其中的公共代码片段包括但不限于1)相同的函数名;2)相容的css配色;3)相同的js脚本;4)相同的选择列表和<form>表单;5)相同的超链接和跳转页外链等。视觉规则特征分类器主要对输入网站的网页的的标志性视觉特征进行特征提取和学习,所提取的特征包括但不限于1)目标网站的log图标;2)网站的整体配色和框架组成;3)有标志性的图片模块等。视觉规则特征分类器的缺点是进行视觉特征学习和检测的时间都比较长,而且相同的log在像素级别的差异上均可能造成很大的误差,因此对训练样本的质量要求比较苛刻。视觉特征库的规模不小于30000条。线性加成训练模块通过加权参数和调整因子的学习,对异构的基分类器——域名词素特征分类器、主题索引特征分类器、内容相似性特征分类器、结构样式特征分类器、视觉规则特征分类器进行线性组合和训练,获得稳定的加权参数和调整因子。在线性加成训练模块中,线性加成的训练主要依赖于训练样本的质量,加权参数和调整因子根据内置的算法进行自动化的运算。线性加成训练模块利用训练集和测试集对五种分类器中的分类参数和ωi、进行训练和优化。在训练时,训练数据的样本记录并行输入五种基分类器中,五种分类器组合的多分类模型的输出为对应样本的标签,表现形式如图3所示。集成分类器是线性加成训练模块输出的最终模型,实现的功能包括但不限于1)负责钓鱼网站的检测模型构建;2)对仿冒对象和类别标签匹配;3)对分类器权重的动态维护和特征库的迭代集成。此处的特征库是所用到的分类器的特征库,例如域名词素特征分类器的特征库等等。在集成分类器中,基分类器并不是每个都参与最终的检测,如果权重参数为0,则对应的基分类器不启用。此外,在集成的模型中,对分类器的性能也在考虑的范围内,如视觉规则特征分类器,因消耗的时间较长,在粗分类中并不使用。训练数据集管理模块中用于存储训练数据。训练数据集主要包括钓鱼网站的url、源代码、网站信息等数据样本组成,该模块的功能包括1)对训练样本数据进行标签管理,进行分组;2)对训练样本进行测试集和训练集的划分及维护;3)对不同分组中样本采样的均衡性管理。对于最终的效果而言,训练样本数据的质量和分类器的质量同样重要。因此将样本的管理在独立的模块中完成,该模块的重点是对不同类别样本分布的管理,防止出现不均衡样本的情况。检测及告警模块:该模块包括两个功能:1)钓鱼网站的检测功能,其模型由集成分类器的参数和特征库组成;2)对检测到的钓鱼网站进行告警,告警信息和级别可根据用户自定义配置。该模块中,告警信息主要针对用户对不同仿冒对象的关注程度不同,对告警重要程度的分类。如一个页面在第一屏出现博彩信息,但是到了第二屏出现中国银行的仿冒信息。但银行的关注度大于博彩,所以对该页面的分类和告警则优先为银行。本发明系统中的5个基分类器是彼此独立的,没有相关性;线性加成训练模块是系统的核心,所有参数的训练在该模块中完成,线性模型保证了系统的性能和运算的收敛性;集成分类器根据线性加成的输出的参数,确定对基分类器模块中的基分类器的组合情况,不一定5个分类器都参与集成,有可能只需要2-3个即可。如图4所示,给出了本发明系统的一个部署图。五个基分类器组成基学习器服务器组,和线性加成训练模块、集成分类器、训练数据集管理模块、检测及告警模块分布式部署在组网交换机处。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1