首页> 中国专利> 基于匈牙利匹配算法的钓鱼网页检测方法

基于匈牙利匹配算法的钓鱼网页检测方法

摘要

基于匈牙利匹配的钓鱼网页检测方法首先提取渲染后网页的文本特征签名、图像特征签名以及网页整体特征签名,比较全面地刻画了网页访问后的特征;然后通过匈牙利算法计算二分图的最佳匹配来寻找不同网页签名之间匹配的特征对,在此基础上能够更加客观地度量网页之间的相似性,从而提高钓鱼网页的检测效果。在方法中还利用曲线下面积值来确定文本特征、图像特征以及全局图像特征的内部权重;利用对数回归分析法确定了网页相似性计算中的文本相似性、图像相似性和全局图像相似性之间的相对权重。本发明提出的基于匈牙利匹配的钓鱼网页检测方法,在精度、召回率上都有了很大提高。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-24

    未缴年费专利权终止 IPC(主分类):G06F17/30 授权公告日:20130605 终止日期:20160402 申请日:20100402

    专利权的终止

  • 2013-06-05

    授权

    授权

  • 2010-10-27

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20100402

    实质审查的生效

  • 2010-09-08

    公开

    公开

说明书

技术领域

本发明涉及一种钓鱼网站检测的方法,主要从相近性检测角度利用匈牙利匹配算法对钓鱼网页进行分析和识别,属于信息安全与信息获取的交叉领域。

背景技术

“钓鱼网站”是随着网络普及和在线交易增加而变得异常猖獗的网络诈骗行为。“钓鱼网站”是犯罪分子做出的诈骗网站,“钓鱼网站”通常与银行网站或其他知名网站几乎完全相同,从而引诱网站使用者在“钓鱼网站”上提交出敏感信息(如:用户名、口令、帐号ID、ATM PIN码或信用卡详细信息等)。最典型的网络钓鱼攻击过程如下:首先将用户引诱到一个通过精心设计与目标组织的网站非常相似的钓鱼网站上,然后获取用户在该钓鱼网站上输入的个人敏感信息,例如银行帐号、银行密码等。通常这个攻击过程不会让受害者警觉。这些个人信息对钓鱼网站持有者具有非常大的吸引力,通过使用窃取到的个人信息,他们可以假冒受害者进行欺诈性金融交易,获得极大的经济利益,而受害者们却因此而遭受到巨大的经济损失,非但如此,被窃取的个人信息还可能被用于其他非法活动。如何识别钓鱼网站,如何保证网站信息传输的保密完整性,愈发的显示出其重要性和必要性。

当前钓鱼网站识别主要靠计算机自动识别和人工识别两种方式,人工识别采用黑名单机制,用户对某个网站进行举报,通过人工鉴定是否为钓鱼网站,这样显然速度太慢。[Jackson2007]通过实验来分析人工检测钓鱼网页的效果。它首先将参加实验的人员分成三组(训练过的组、未训练过的组和未看过钓鱼网页验证技术的小组)。实验结果显示:用户比较难于处理视觉相似的钓鱼网页,另外,验证技术培训并未帮助用户辨别网页的真假。计算机自动识别目前主要是基于页面视觉相似性检测方式判断是否为钓鱼网站,电脑通过抽取网页的视觉,文字特征与大多数主要的合法网站页面进行相似度对比或进行机器学习,从而判断是否为钓鱼网站。

Liu等提出利用DOM树之间的相似性来检测钓鱼网页[Liu2005,Liu2006],该方法认为钓鱼网页为了欺骗用户,往往展现比较相近的界面,否则不易欺骗用户,所以真实网页与钓鱼网页在布局上应该非常接近。Liu等利用钓鱼网站与真实网站之间的视觉相似性来检测钓鱼网站[Liu2005,Liu2006],该方法首先提取真实网页与待检测网页的图像特征,然后计算相似性,当相似性大于某一设定阀值时,则认为待检测网页为钓鱼网页;Angelo等通过比较网页HTML标记之间的相似性计算网页间相似性[Rosiello2007]。

Zhang在2007年提出了一种新颖的基于内容的检测钓鱼网页的方法——CANTINA[Zhang2007]。该方法通过借助第三方的工具(比如搜索引擎)来检测钓鱼网页,它首先统计网页中的TF-IDF,把TF-IDF排序靠前的几个词条利用搜索引擎检索,如果该网页不出现在搜索结果的前面30个结果中,则认为是钓鱼网页。该方法具有较高的精度和较小的FP。但是该方法的效果值得商榷。我们做了对应的实验,结果发现:很多钓鱼网页可以在搜索引擎中搜索到,并且结果比较靠前。这可能跟钓鱼网页制作者做了搜索引擎优化有关。另外,这种方法不具有实际的可行性,一方面,Google搜索已经不提供用户通过API来访问其搜索服务,意味着这样的检测不能通过程序自动实现;另外,Google对来自同一IP的每天的搜索次数进行了限制,意味着不能应付大量的钓鱼网页检测。由此看来,这种寄生于第三方服务的方法正失去其意义。

此外,Nimeh2007从钓鱼网页传播的角度提出了一种特征提取方法[Nimeh2007]。该方法主要比较了六种机器学习方法在邮件特征分类上的效果:Logistic Regression(LR),Classification and Regression Trees(CART),BayesianAdditive Regression Trees(BART),Support Vector Machines(SVM),Random Forests(RF),and Neural Networks(NNet);数据集采用1171个包含phishing内容的邮件和1718个合法邮件,对于每个邮件提取43个特征。这种方法拓展了钓鱼网页的特征,在一定程度上进一步提高了钓鱼网页检测的精度,但是这种方法仍然在抽取钓鱼网页特征时仍然只是采用了单个网页的信息,因而容易被钓鱼网页制作者欺骗。

现有方法主要将单个网页请求作为比较对象,另外在计算网页相似度过程中没有选择合适的特征对就行比较,导致网页相似度的计算精度低,直接影响钓鱼网页检测的精度和召回率。我们提出基于匈牙利匹配算法的钓鱼网页检测方法。本方法利用浏览器采集一次显示过程中的网页集合,提取该集合的文本特征和图像特征;采集渲染后的网页的整体图像,提取图像特征。在此基础上设计出基于logistic回归的钓鱼网页检测方法。

[Zhang2007]Y.Zhang,J.Hong,and L.Cranor.Cantina:A content-based approach to detectingphishing websites.WWW,2007

[Jackson2007]Collin Jackson,Daniel R.Simon,Desney S.Tan,and Adam Barth.An Evaluation ofExtended Validation and Picture-in-Picture Phishing Attacks.Proceedings of Usable Security(USEC′07),February 2007

[Fu2006]Anthony Y.Fu,Wenyin Liu,Xiaotie Deng.Detecting Phishing Web Pages with VisualSimilarity Assessment based on Earth Mover’s Distance(EMD).IEEE Transactions onDependable and Secure Computing,2006,3(4),pages 301-311

[Nimeh2007]S.Abu-Nimeh,D.Nappa,X.Wang,and S.Nair.A comparison of machine learningtechniques for phishing detection.Proceedings of the eCrime Researchers Summit,2007.

[Liu2005]W.Liu,G.Huang,X.Liu,M.Zhang,and X.Deng.Detection of Phishing Web Pages Basedon Visual Similarity.Proc.14th Int’l World Wide Web Conf.,2005,pp.1060-1061.

[Liu2006]W.Liu,X.Deng,G.Huang,and A.Y.Fu.An Anti-Phishing Strategy Based on VisualSimilarity Assessment.IEEE Internet Computing,2006,vol.10(2),pp.58-65.

[Rosiello2007]A.Rosiello,E.Kirda,C.Kruegel,and F.Ferrandi.A layout-similarity-based approachfor detecting phishing pages.International Conference on Security and Privacy in CommunicationNetworks,2007

发明内容

发明目的:本发明的目的是提供一种基于匈牙利匹配算法的钓鱼网页检测方法。该方法能够全面刻画渲染后网页的文本特征、图像特征和全局图像特征,能够确定合理的文本特征、图像特征和全局图像特征内部的权重和外部权重,具有正确率高、可扩展性强及速度快的特点。

技术方案:本发明首先利用浏览器插件技术,通过javascript代码访问网页DOM树来提取网页文本特征签名;同时通过javascript代码访问浏览器视窗以提取全局图像特征;然后对于两个网页的签名特征中的文本特征签名和图像特征签名采用匈牙利匹配算法来计算相似性;最后把文本特征相似性、图像特征相似性以及全局图像特征相似性综合起来,计算出两个网页的相似性,该相似性将作为识别钓鱼网页的依据。

在钓鱼网页检测过程中通过爬虫预取一定数量的网页,在此基础上提取网站拓扑特征,以此作为钓鱼网页检测的依据,分类器采用增量学习方法,保证分类器的及时更新,具体实现步骤为:

一、采用基于匈牙利算法的文本特征签名及图像签名的相似度计算方法来分别计算网页签名之间的相似性,

1)文本节点相似性计算:实现对网页中的每个文本节点特征的对比功能,每个节点的特征是一个6维向量:

●文字内容  计算L1距离,

●前景色    计算曼哈顿距离,

●背景色    计算曼哈顿距离,

●字体大小  计算L1距离,

●字体名字  相同为0,否则为1,

●该文本节点在网页中的位置  计算欧氏距离;

2)图像节点相似性计算:实现对网页中的每个图片节点特征的对比功能,每个节点的特征是一个5维向量:

●图片的src属性值  计算L1距离,

●图片的面积  计算欧氏距离,

●颜色直方图  计算欧氏距离,

●二维哈尔小波变换  计算欧氏距离,

●该图片节点在网页中的位置计算欧氏距离;

3)全局图像特征相似性计算:实现对网页的全局图片特征的对比功能,特征向量是一个2维向量:

●颜色直方图  计算欧氏距离,

●二维哈尔小波变换  计算欧氏距离;

4)网页签名相似性的计算:

步骤1)利用节点间相似性计算方法计算两两节点之间的相似性;

步骤2)构造二分图G=(X,Y,E),其中X与Y分别表示两个网页签名,E表示X中所有节点与Y中所有节点之间的边;

步骤3)如果X与Y的签名长度相同,则转步骤5;

步骤4)生成二分图G的扩展二分完全图;

步骤5)使用匈牙利匹配算法获得G的最佳匹配M;

步骤6)根据M中的边的权重相加取平均即为X与Y的相似度;

二、采用“曲线下面积”方法来确定文本特征权重及图像特征内部权重

1)计算每组参数“曲线下面积”的过程:

步骤21)构造特征库及样本库:将100个被钓鱼的网页作为比较对象特征库,与之对应的100个钓鱼网页正例与其它100个一般网页反例构成容量为200的样本库;

步骤22)将每个样本与特征库中的每个网页进行相似性计算,取相似度的最大值作为样本与特征库之间的相似度;

步骤23)记录每个样本计算得到的相似度;

步骤24)对于样本集合计算得到的每个相似度,统计计算“曲线下面积”值,即按照区间[0,1]遍历阀值,计算得到对应的“真正例率”和“假正例率”值,得到对应的“真正例率-假反例率曲线”,该曲线下的面积即为“曲线下面积”值;

2)最优参数的确定:

步骤221)对于文本特征、图像特征以及全局图像特征每组参数通过以上方法得到对应的“曲线下面积”值;

步骤222)选择“曲线下面积”最大的那组参数作为最优的内部参数,分别得到最优的文本特征权重、图像特征权重以及全局图像特征权重;

三、采用自然对数回归分析法来确定文本特征权重、图像特征权重及整体图像特征权重

1)构造数据集:

步骤31)利用确定的文本特征内部权重计算样本集中每个样本与特征库之间的文本特征签名相似性;

步骤32)利用确定的图像特征内部权重计算样本集中每个样本与特征库之间的图像特征签名相似性;

步骤33)利用确定的全局图像特征内部权重计算样本集中每个样本与特征库之间的全局图像特征签名相似性;

步骤34)将以上计算得到的相似性值按照对应的样本放在一行,在行的最后根据是否为钓鱼网页来填写对应的值。对于钓鱼网页,填写“真”;对于正常网页,填写“假”;

步骤35)通过以上过程分别构造包含200个样本的训练集,和包含80个样本的测试集;

2)基于自然对数回归的训练及分类过程:

步骤321)将训练数据集输入到自然对数回归分类器中;

步骤322)将训练好的分类器保存下来;

步骤323)利用训练好的分类器对测试集进行预测,并将预测结果记录;

步骤324)根据预测结果与真实结果的对比,统计对应的精度和召回率;

四、利用以上步骤确定好的内部权重、外部权重以及自然对数回归方程来检测钓鱼网页

步骤41)将待保护的网页通过步骤一来提取每个网页的特征签名,这些特征签名组合在一起构成特征库;

步骤42)对于待检测的网页,提取其特征签名;

步骤43)对于特征库中的每个特征签名,利用网页签名相似性的计算,计算其与待检测网页的特征签名之间的相似性;

步骤44)取步骤43)中相似性的最大值作为待检测网页与特征库的相似性;

步骤45)如果待检测网页与特征库的相似性大于设定的阀值0.9,则认为待检测网页为钓鱼网页;否则为非钓鱼网页。

有益效果:由于基于匈牙利算法的钓鱼网页检测方法采用浏览器提取渲染后网页的特征以及利用匈牙利算法计算特征签名之间的相似性,本发明具有以下一些特殊优点和有益成果:

高准确率:分类问题主要的评价指标为精度(precision)和召回率(recall),在钓鱼网页检测识别中,精度表示判断为钓鱼网页的所有网页中,确实是钓鱼网页的比例,召回率表示所有钓鱼网页中被识别为钓鱼网页所占比例。显然精度和召回率越高表示效果越好。经过实验证明,本发明提出的钓鱼网页检测采用Logistic分类器进行机器学习以后精度为97.9%和召回率为95%,比其它几种钓鱼网页特征签名匹配方法效果有明显提升。

较强的可扩展性:可扩展性体现在两个方面,一、基于相近性的钓鱼网页检测方法可以和其它基于分类的方法结合使用;二、特征库可以根据需要不断扩充,除了用户可以自己添加需要保护的网页,另外也可以通过在线特征库的形式由广大用户所共享。

较快的检测速度:在网页与特征库的相似性计算过程中,首先,网页和特征库中保存的是抽取的特征,所以信息量大大减少;其次,特征库利用分层聚类方式建立了高维索引,便于快速定位;再次,根据当前网页的特征从特征库中检索出少量的待比较网页。从而提高了检测速度。

附图说明

图1钓鱼网页检测流程图。

具体实施方式

本发明主要分为三大部分:

1.网页渲染特征模型。

浏览器在访问网页过程中,根据网页内部的链接以及脚本语言来决定是否发出其它URL请求,在该网页所包含的资源返回后,浏览器将把这些资源(文字、图片等)按照各自的属性渲染在浏览器中,最终形成图文并茂的网页。钓鱼网页是为了让人们在通过浏览器访问时相信其就是那些被仿冒的网页,其仿冒主要体现在渲染特征的相似性。因此钓鱼网站的基本检测过程分为如下三步:

步骤1)获取钓鱼网页及其所需要的其它相关资源,记为url;

步骤2)获取钓鱼网页渲染后的特征(也可称为签名),记为S(url);

步骤3)将S(url)与保存的对应钓鱼目标网页(钓鱼网页所要模仿的网页)的签名S(urlT)进行比较,如果两者的相似度大于某一设定的阀值,则认为网页url是以网页urlT为目标的钓鱼网页,发出报警。

浏览器在下载网页及相关图片后,把网页解析成HTML DOM树。网页中的可见文本保存在DOM树的叶节点上。

步骤1)网页url的文本特征,由多个六元组向量组成,记为<t1,t2,...,tn(t,url)>,ti=<ti1,ti2,ti3,ti4,ti5,ti6>,其中ti1为对应文本内容;ti2为文本的前景色;ti3为文本的背景色;ti4为文本的字体大小;ti5为文本的字体名称;ti6表示文本在网页中的位置;n(t,url)表示网页url中文本特征的数量。

抽取的网页中的文本可见特征,网页除了包含文本,图片也是最常见的一种元素,定义网页中每个图片的特征如下:

步骤2)网页url中图片特征,由多个五元组向量组成,记为<m1,m2,...,mn(m,url)>,mi=<mi1,mi2,mi3,mi4,mi5>,其中mi1为图片的src属性;mi2为图片的面积;mi3为图片的颜色直方图;mi4为文本在网页中的位置;mi5为小波特征。

文字特征和图片特征从局部反应了网页的特征,这些文字和图片由标记语言标记,浏览器通过这些标记语言来布局文字和图片,最终呈现给用户渲染后的网页。渲染后的网页可以看成全局图像,这样可以从全局图像的角度来提取渲染后网页的特征。

步骤3)网页url的全局图像(Overall)特征,表示为<<C1,Cent1,Nc1>,<C2,Cent2,Nc2>,...,<CND,CentND,>>,其中C1,C2,...,CND表示不同的颜色;coord(k,i)表示具有颜色Ci的第k个像素的坐标,Centi即表示具有颜色Ci的像素点的中心点坐标;Nci表示具有颜色Ci的像素点个数。

Overall特征根据每种颜色的数量来选择一些颜色作为Overall的签名特征,即不同的图片所选择的颜色可能不同,签名特征的长度也可能不同。

步骤4)根据以上定义,可以进一步计算网页签名。

网页签名S(url)=<<t1,t2,...,tn(t,url)>,<m1,m2,...,mn(m,url)>,<<Cs1,Cents1,Ncs1>,<Cs2,Cents2,Ncs2>,...,<Csn,Centsn,Ncsn>>>,其中Ncs1≥Ncs2...≥Ncsn,网页url的Overall特征选取出现频率最高的前sn种颜色。

在提取网页渲染特征的基础上,可以计算网页签名相似性,网页签名相似性由文本签名特征相似性、图片签名特征相似性以及全局图像签名特征相似性组成。提高这些相似性计算的精度将直接影响钓鱼网页的检测效果。

2.基于匈牙利匹配算法的Web网页相似性度量。

本发明将网页签名之间的相似性计算建立在匹配的特征对基础上,即首先将不同签名的特征进行匹配,得到匹配的特征对,然后通过匹配的特征对之间的相似性计算网页签名的相似性。发明中将网页签名特征的匹配问题建模成求二分图的最佳匹配问题,二分图的最佳匹配问题可以利用匈牙利算法(KM match,简记为KM)计算。下文给出该模型。

步骤1)网页签名匹配问题。给定两个网页签名X=<x1,x2,...,xm>和Y=<y1,y2,...,yn>,Sim(x,y)表示特征x与特征y的相似性(x∈X,y∈Y),则网页签名匹配问题可以定义为:求一个X与Y的子集X′与Y′,使得存在X′到Y′的双射f:满足取得最大值。

步骤2)为了求解网页签名匹配问题,我们借鉴二分图的概念,将网页签名匹配问题建模成一个二分图G=(X,Y,E),X和Y分别对应两个网页的签名;边集E按照如下规则构造:如果Sim(x,y)>0,x∈X,y∈Y,则在二分图G中对应的两个顶点x与y之间连一条边(x,y),并设置该边的权重wxy=Sim(x,y)。通过该二分图模型,网页签名的匹配问题就转化为在求二分图G上的从顶点X到Y的匹配问题。

步骤3)给定一个二分图G,在G的一个子图M中,M的边集中的任意两条边都不依附于同一个顶点,则称M是一个匹配。选择这样的边数最大的子集称为图的最大匹配问题。二分图的最大匹配问题可以通过Kuhn-Munkres(KM)算法来求解,该算法是一个经典求解二分图的最佳匹配的算法。

3.基于Logistic回归的分类器学习部分。

其核心任务就是从样本中推理,学习模块事先使用标注的实例数据训练分类器,以确定文本特征内部的参数和图像特征内部的参数,并优化文本特征相似度、图像特征相似以及全局图像特征的相对权重。在得到训练好的分类器以后,对于由特征抽取模块产生的实例数据可以首先计算与特征库之间的相似性,然后这些相似性直接输入分类器模块,分类器模块依照优化的分类器模型判断当前网页是否为钓鱼网站。

参数训练过程主要可以分为两大部分:

(1)文本特征、图像特征及全局图像特征内部参数(权重)的确定

步骤1)采集m个正规网站(非钓鱼网站)的数据(m>=200),并抽取出特征量组织成实例数据;

步骤2)采集n个钓鱼网站及其所模仿的网站的数据(n>=200),并抽取出特征量组织成实例数据,其中钓鱼网站所模仿的网站构成特征库;

步骤3)将m个正规网站和n个钓鱼网站放在一起构成数据集;

步骤4)只采用文本特征,根据等概率分布,生成各种权重组合o组(o>=200),然后为每组特征计算数据集中每个数据与特征库的相似性。

步骤5)只采用图像特征,根据等概率分布,生成各种权重组合p组(p>=200),然后为每组特征计算数据集中每个数据与特征库的相似性。

步骤6)只采用全局图像特征,根据等概率分布,生成各种权重组合q组(q>=100),然后为每组特征计算数据集中每个数据与特征库的相似性。

步骤7)对于每种特征所计算得到的相似度,计算其AUC值,然后选出最大AUC所对应的参数作为该种特征所对应的最优参数。

(2)文本特征、图像特征及全局图像特征相对权重的确定

步骤1)将数据集中每个实例根据计算得到的最优内部权重分别计算与特征库的相似度,得到文本相似度、图像相似度和全局相似度,然后所有正规网页实例数据中分类属性(Class Attribute)全部填写为“false”,表示非钓鱼网站;而将所有钓鱼网站实例数据中分类属性(Class Attribute)全部填写为“true”,表示钓鱼网站;构成新的训练集

步骤2)将训练集的数据传入机器学习模块;

步骤3)选取一种机器学习算法(Logistic)算法进行训练;

步骤4)保存训练好的分类器(包含优化的参数:文本特征、图像特征及全局图像特征的相对权重)。

(3)钓鱼网页检测

步骤1)对于用户当前访问的网页,如果需要输入用户名和口令,则通过插件提取其文本特征、图像特征和全局图像特征;

步骤2)将抽取出的特征首先从特征库中检索出可能相近的几个网页;

步骤3)计算当前网页与步骤2中抽取出的网页进行相近性计算(利用最优的内部权重和外部权重),取其中的最大值,然后与阀值进行比较,如大于则为钓鱼网页,否则为非钓鱼网页。

步骤4)根据分类结果给出警告信息(钓鱼网页)或通过(正常网页)。

实例:

1.网页渲染特征提取

(1)实现对网页中的每个文本节点的特征的提取,每个节点的特征是一个6维向量,有如下6个分量:

●文字内容,通过JavaScript的childNode.nodeValue.trim()功能获取

●前景色

●背景色

●字体大小

●字体名字

●该文本节点在网页中的位置

(2)实现对网页中的每个图片节点的特征的提取,每个节点的特征有:

●图片的src属性值,调用JavaScript的imgNode.src方法获取

●图片的面积,调用JavaScript的图片属性img.width和img.height,相乘得到面积值

●颜色直方图

●二维哈尔小波变换

●该图片节点在网页中的位置

(3)将整个网页变换为一张图片,将其当作一个图片节点,进而提取该图片的特征:

●颜色直方图

●二维哈尔小波变换

2.基于匈牙利匹配算法的Web网页相似性度量

(1)文本节点相似性计算。实现对网页中的每个文本节点特征的对比功能,每个节点的特征是一个6维向量:

●文字内容  计算L1距离

●前景色    计算曼哈顿距离

●背景色  计算曼哈顿距离

●字体大小  计算L1距离

●字体名字  相同为0,否则为1

●该文本节点在网页中的位置计算欧氏距离

(2)图像节点相似性计算。实现对网页中的每个图片节点特征的对比功能,每个节点的特征是一个5维向量:

●图片的src属性值  计算L1距离

●图片的面积  计算欧氏距离

●颜色直方图  计算欧氏距离

●二维哈尔小波变换  计算欧氏距离

●该图片节点在网页中的位置  计算欧氏距离

(3)全局图像特征相似性计算。实现对网页的全局图片特征的对比功能,特征向量是一个2维向量:

●颜色直方图  计算欧氏距离

●二维哈尔小波变换  计算欧氏距离

(4)网页签名相似性的计算:

步骤1)利用节点间相似性计算方法计算两两节点之间的相似性;

步骤2)构造二分图G=(X,Y,E),其中X与Y分别表示两个网页签名;

步骤3)如果X与Y的签名长度相同,则转步骤5;

步骤4)生成G的扩展二分完全图;

步骤5)使用KM“匈牙利匹配”算法获得G的最佳匹配M;

步骤6)根据M中的边的权重相加取平均即为X与Y的相似度;

步骤7)结束。

3.文本特征、图像特征及全局图像特征内部参数(权重)的确定

(1)生成权重组合:

步骤1)利用java根据广度优先搜索根据等概率分布为6维的文本特征生成230个等间距的权重值;

步骤2)利用java根据广度优先搜索根据等概率分布为5维的图像特征生成200个等间距的权重值;

步骤3)利用java根据广度优先搜索根据等概率分布为2维的全局图像特征生成100个等间距的权重值;

(2)构造特征库的预处理过程:

步骤1)从网站(http://www.phishtank.com/phish_archive.php)采集样本,该网站是一个免费的反钓鱼网站,Web用户提交可疑的钓鱼网页。

步骤2)采集其中的部分网页,通过手工检查,去除合法网页,以及其它一些噪音网页,总共收集100对钓鱼网页和对应的合法网页的URL,把钓鱼网页内容和合法网页内容保存下来;

步骤3)另外根据Yahoo分类目录bank、credit union、online services等采集100个一般网页。步骤4)对于这些网页利用编写的firefox插件来遍历网页中的文本和图片,以及获得网页整体图片,在此基础上提取网页签名(包括文本特征、图片特征和网页整体图片特征),保存在特征表中。

(3)计算每组参数曲线下面积(AUC)的过程:

步骤1)构造特征库及样本库。将100个被钓鱼的网页作为比较对象(特征库),与之对应的100个钓鱼网页(正例)与其它100个一般网页(反例)构成样本库(容量为200)。

步骤2)将每个样本与特征库中的每个网页进行相似性计算,取相似度的最大值作为样本与特征库之间的相似度;

步骤3)记录每个样本计算得到的相似度。

步骤4)对于样本集合计算得到的每个相似度,统计计算AUC值,即按照一定的区间遍历阀值,计算得到对应的tpr和fpr值,得到对应的ROC曲线,该曲线下的面积即为AUC值。

(4)最优参数的确定:

步骤1)对于文本特征、图像特征以及全局图像特征每组参数通过以上方法得到对应的AUC值;

步骤2)选择AUC最大的那组参数作为最优的内部参数,分别得到最优的文本特征权重、图像特征权重以及全局图像特征权重。

这样意味着每个样本要与特征库中每个特征网页进行相似度计算,这样样本库遍历比较一次总共需要做100×200次比较,这无疑将是个很大的开销。为了提高匹配的速度,同时又不降低精度,在实验过程中利用一些特征进行快速过滤,比如网页标题相似性、网页文件大小、网页中图片个数、网页Overall图像的面积等,记为:

Sim_Title(P1,P2):网页P1与P2的标题相似性;

Sim_Size(P1,P2):网页P1与P2的文件大小相似性;

Sim_Images(P1,P2):网页P1与P2图片个数相似性;

Sim_OverallArea(P1,P2):网页P1与P2整体网页图片面积的相似性;

(5)对于样本P,遍历特征库中的每一个特征网页PL,获得候选的特征样本集合SelectedLib如下:

步骤1)SelectedLib=NULL;

步骤2)对于特征库中的每一个可能相近的网页,如果(Sim_Title(P,PL)>Threshold)转步骤6;

步骤3)对于特征库中的每一个可能相近的网页,如果Sim_Size(P,PL)>Threshold)转步骤6;

步骤4)对于特征库中的每一个可能相近的网页,如果(Sim_Images(P,PL)>Threshold)转步骤6;

步骤5)对于特征库中的每一个可能相近的网页,如果(Sim_OverallArea(P,PL)>Threshold)转步骤6;

步骤6)SelectedLib+=PL;

步骤7)输出SelectedLib;

步骤8)终止。

其中,Threshold为设定的阀值,在实验中根据过滤效果我们设定其为0.8。通过快速过滤,对于一个样本基本上可以控制特征样本集合SelectedLib的大小在10个以下,从而大大提高了整体实验的速度。

4.文本特征、图像特征及全局图像特征相对权重的确定

(1)构造数据集:

步骤1)利用确定的文本特征内部权重计算样本集中每个样本与特征库之间的文本特征签名相似性;

步骤2)利用确定的图像特征内部权重计算样本集中每个样本与特征库之间的图像特征签名相似性;

步骤3)利用确定的全局图像特征内部权重计算样本集中每个样本与特征库之间的全局图像特征签名相似性;

步骤4)将以上计算得到的相似性值按照对应的样本放在一行,在行的最后根据是否为钓鱼网页来填写对应的值。对于钓鱼网页,填写“true”;对于正常网页,填写“false”;

步骤5)通过以上过程分别构造包含200个样本的训练集,和包含80个样本的测试集。

(2)基于logistic(自然对数)的训练及分类过程:

步骤1)将训练数据集输入到logistic分类器;

步骤2)将训练好的分类器保存下来;

步骤3)利用训练好的分类器对测试集进行预测,并将预测结果记录;

步骤4)根据预测结果与真实结果的对比,统计对应的精度和召回率。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号