论文部分内容阅读
摘要:现如今许多不法分子利用钓鱼网站盗取用户的个人信息,窃取用户的财产,对用户造成巨大损失。因此该文通过使用决策树学习算法,提取其中的关键词,分析并建立钓鱼网站特征模型,对未知网站进行判别。CART是一种决策树算法,但CART决策树的多数表决法会屏蔽小类数据类型的影响,因此该文根据这点对CART决策树进行改进,引入代价函数,不断地利用迭代和最小均方误差调整特征的权重增加惩罚。实验结果表明,改进后的决策树在对未知网站进行分析,成功地降低了负样本的错误率,提升了识别率。
关键词:决策树;URL识别;最小均方误差;代价函数
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)33-0079-02
Abstract: Now many criminals use phishing sites to steal the user’s personal information, steal the user’s property, causing huge losses to the user. Therefore, this paper uses the decision tree learning algorithm to extract the keywords, analyze and establish the phishing website feature model, and judge the unknown website. CART is a decision tree algorithm, but the majority voting method of CART decision tree will shield the influence of small class data type. Therefore, this paper improves the CART decision tree according to this point, introduces the cost function, and makes use of iteration and minimum mean square error Adjust the weight of the feature to increase the penalty. The experimental results show that the improved decision tree has successfully reduced the error rate of negative samples and improved the recognition rate in the analysis of unknown websites.
Key words: decision tree; URL identification; least-mean-square; cost function
1 背景
钓鱼网站通常是指伪装成合法网站,窃取用户提交的账号、密码等私密信息的网站。目前已出现10余种反钓鱼工具,本文选用决策树方法对钓鱼URL特征进行识别,国内外学者也提出了很多决策树的相关改进算法:
ID3算法是1986年由Quinlan提出的,是基于信息增益的选择[1] 。J.Ma[2]等人分析可疑URL 的词汇和主机属性采用词袋模型表示特征, 获得了成千上万的特征,运用特征匹配加上ID3算法檢测钓鱼网站。但ID3算法也存在缺陷,因为包含较多属性值的特征所含的信息增益一般会越高,所以ID3优先会选择有较多属性值的特征,从而构建的决策树往往不是最优的,只可以用于处理离散数据,不能用于处理连续数据。
C4.5算法是Quinlan本人对ID3算法的改进[3],引入了信息增益比(GainRatio)作为选择的准则。来自John Hopkins大学的Sujata与Google的研究员用URL特征做钓鱼模式识别进行了尝试[4],运用改进后的c4.5算法,取得了很好的成果。但在决策树生成过程中,频繁的对训练的数据集排序和扫描,增加了算法的时间复杂度。
2 CART决策树
CART(Classification And Regression Tree)算法由L.Breiman,J.Friedman,R.Olshen和C.Stone于1984年提出[5],即分类回归算法,简称CART算法,分类问题中含有K个类别,样本点属于第k类的概率为pk对于给定的样本集D
[Gini(D)=k=1γk′≠kpkpk′=1-k=1γp2k] (1)
CART决策树具体算法为:在所有可能的特征A以及所有可能的切分点a中,选择基尼指数最小的特征及对应的切分点作为最优特征与最优切分点,依照最优切分点和最优特征点,从现结点生成两个子节点,将训练数据集特征分配到两个子结点;算法终止条件为结点样本个数小于给定阈值,或者样本集基尼指数小于阈值,亦或没有更多特征。
3 实验方法
1) 算法改进
Cart决策树作为分类与回归树,应用作为钓鱼网站的识别,输出非数值标签。然而,在实际应用中,将一个钓鱼网站误报为正规网站的危害远远大于将正常网站检测为钓鱼网站[6]。应此,我们引入一个代价函数,牺牲正样本的极少识别率,用于降低负样本的错误率。
基于Cart决策树的基本方法,对样本进行随机分类,并对样本进行基本学习,计算当前漏报率(将钓鱼网站误判为正常网站的比例)和误报率(将正常网页误判的钓鱼网站的比例)的比例设为误差输出值d(n),进行归一化,训练开始漏报率和误报率没有权值调整,初始为1:1的比例,定义估计误差 [e(n)=d(n)-d(n)] (2)
e(n)是期望相應,[d(n)]为对d(n)的估计,因为理想的预计误差为0,所以可看作接近0的极小值,这时引入误差函数J(w)作为代价函数。
[J(w)=E|e(n)2|=Ee(n)e*(n)] (3)
根据维纳-霍夫方程[7]和正交原理[8]:
[Rw0=p] (4)
总结上述步骤,改进的CART算法步骤如下:
1) 初始化,使得n=0,权向量[w(0)=0],估计误差[e(0)=d(0)-d(0)=d(0)],输入向量[u(0)=u(0)0...0T]。
2) 对数据集D抽取固定样本数,进行CART决策树生成学习器1,2,...,n,记录每个学习器的误差输出值d(n)和特征权值。
3) 对于n=0,1,...更新权向量[w(n 1)=w(n) μu(n)e*(n)],更新期望信号的估计[d(n 1)=wH(n 1)u(n 1)],设定步长μ为0.02,求得估计误差[e(n 1)=d(n 1)-d(n 1)]。
4) 重复步骤2,3。
4 数据分析
1) 数据收集
本实验采用的数据来自UCI Machine Learning Repository的Pishing Website数据子集[9],数据来源于Google引擎记录,PishingTank记录。其中正常网页1491个,钓鱼网站1054个。训练集和预测集按照1:2的比例进行分配。主要白名单来源于Aleax中抽取的网页数据。黑名单由于变动具有时效性,所以实时跟踪主要黑名单来自2016年6月到2017年6月Phishing tank网站提供的钓鱼网页URL名单库。
5 实验评估及其结果分析
根据各个分类器对钓鱼网站检测的准确率(precision)和召回率(recall)来评估其预测结果的好坏[10]。TP为被分类器正确预测为钓鱼网站的个数;TN为被分类器正确预测为正常网站的个数;FP为:被分类器错误预测为钓鱼网站的个数;FN为被分类器错误预测为正常网站的个数;
分类精度:(正确分类所占总数的比例)
[P=TP TNP N] (5)
误报率:(将正常网页误判的钓鱼网站的比例)
[FPR=TPTP FP] (6)
漏报率:(将钓鱼网站误判为正常网站的比例)
[FNR=FNFN TN] (7)
6 试验结果分析
根据实验结果可以看出,决策树在算法模型上显著性的对未知的URL起到了预测的作用,具有较好的分类效果,达到了一定的分类精度。在使用基于最小均方误差的代价函数后,不仅成功地将漏报率降低,同时迭代拟合了集成学习的思想,提升了算法的识别率,根据图2所示,实验在400次左右误差开始收敛。实验的不足在于,根据表1可以看出,改进后的决策树虽然降低了漏报率,但是是在牺牲了误报率的性能,在迭代次数增大至200次左右后误报率开始回升,同时增加迭代次数提升了算法复杂度,需在今后进行进一步改进。
参考文献:
[1] Sujata Garera, Niels Provos, Monica Chew, et al. A framework for detection and measurement of phishing attacks[J]. Proceeding’WORM’07 Proceedings of the 2017 ACM workshop on Recurring malcode,2017.
[2] Li L,Helenius M.Usability evaluation of anti-pishing toolbars[J]. Comput,Virol., 2014,3(2):163-184.
[3] Zhang Y,Hong J,Cranor L. CANTINA: A content-based approach to detecting phishing websites[C]. In Proc. 16th Int.Con. World Wide Web Banff, Canada,2016.
[4] Anthony Y Fu, Liu Wenyin, Deng Xiaotie. Detecting Phishing Web Pages with Visual Similarity Assessment Based on Earth Mover’s Distance(EMD)IN[J]. IEEE Transactions on Dependable and Secure Computing. 2016, 3(4):301-311.
[5] Zhang, Hai-jun, Liu Gang, Chow Tommy WS.Textual and visual content-based anti-phishing: a bayesian approach[J]. IEEE transac-tions on neural networks /a publicat-ion of the IEEE Neural Networks Council, 2011, 22 (10):1532-1546.
(下转第84页)
(上接第80页)
[6] Artem Vorobiev and Jun Han. Security Attack Ontology for Web Services[J]. 2015 IEEE,2015.
[7] Reyes Rios-Cabrera, Tinne Tuytelaars, Luc Van Gool. Efficient multi-camera vehicle detection, tracking, and identification in a tunnel surveillan-ce application[J]. Computer Vision and Image Understanding, 2012, 116(6):742-753. [8] Abdelhamid N, Ayesh A, Thabtah F. Phishing detection based associative classification data mining[J]. Expert Systems With Applications, 2014, 41(13):24-28.
[9] Lin CF, Lin S F. Efficient face detection method with eye region judgment[J]. EURASIP Journal on Image and Video Processing, 2013, 2013(1):1-14.
[10] Reyes Rios-Cabrera, Tinne Tuytelaars, Luc Van Gool. Efficient multi-camera vehicle detection, tracking, and identification in a tunnel surveillan-ce application[J]. Computer Vision and Image Understanding, 2012, 116(6):742-753.
[11] Barraclough P A, Hossain M A, Tahir M A. Int-elligent phishing detection and protec-tion scheme for online transactions[J]. Expert Systems With Applications, 2013, 40 (11):4697-4706.
[12] Yuan-Hsin Tung, Chen-Chiu Lin, Hwai-Ling Shan. Test as a Service: A framework for Web security TaaS service in cloud environment[J]. IEEE, 2014.
[13] Zhang Hai-jun, Liu Gang, Chow Tommy W S.Textual and visual content-based anti-phishing: a bayesian approach[J]. IEEE transac-tions on neural networks /a publicat-ion of the IEEE Neural Networks Council, 2011, 22(10):1532-1546.
[14] UCI 數据集[EB/OL].http://archive.ics.uci.edu/ml/datasets/Phishing Websites.
[15] Lim J S, Kim WH. Detecting and tracking of multiple pedestrians using motion, color information and the AdaBoost algorithm[J]. Multimedia Tools and Applications, 2013, 65(1):161-179.
[16] Himabindu Lakkaraju. A Machine Learning Framework to Identify Student at Risk of Adverse Academic Outcomes[Z]. SIGKDD2016.
[17] WenluZhang, Rongjian Li, Tao Zeng, QianSun, Deep Model Based Transfer and Multi-Task Learning for Biological Image Analysis[Z]. SIGKDD2016.
关键词:决策树;URL识别;最小均方误差;代价函数
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2017)33-0079-02
Abstract: Now many criminals use phishing sites to steal the user’s personal information, steal the user’s property, causing huge losses to the user. Therefore, this paper uses the decision tree learning algorithm to extract the keywords, analyze and establish the phishing website feature model, and judge the unknown website. CART is a decision tree algorithm, but the majority voting method of CART decision tree will shield the influence of small class data type. Therefore, this paper improves the CART decision tree according to this point, introduces the cost function, and makes use of iteration and minimum mean square error Adjust the weight of the feature to increase the penalty. The experimental results show that the improved decision tree has successfully reduced the error rate of negative samples and improved the recognition rate in the analysis of unknown websites.
Key words: decision tree; URL identification; least-mean-square; cost function
1 背景
钓鱼网站通常是指伪装成合法网站,窃取用户提交的账号、密码等私密信息的网站。目前已出现10余种反钓鱼工具,本文选用决策树方法对钓鱼URL特征进行识别,国内外学者也提出了很多决策树的相关改进算法:
ID3算法是1986年由Quinlan提出的,是基于信息增益的选择[1] 。J.Ma[2]等人分析可疑URL 的词汇和主机属性采用词袋模型表示特征, 获得了成千上万的特征,运用特征匹配加上ID3算法檢测钓鱼网站。但ID3算法也存在缺陷,因为包含较多属性值的特征所含的信息增益一般会越高,所以ID3优先会选择有较多属性值的特征,从而构建的决策树往往不是最优的,只可以用于处理离散数据,不能用于处理连续数据。
C4.5算法是Quinlan本人对ID3算法的改进[3],引入了信息增益比(GainRatio)作为选择的准则。来自John Hopkins大学的Sujata与Google的研究员用URL特征做钓鱼模式识别进行了尝试[4],运用改进后的c4.5算法,取得了很好的成果。但在决策树生成过程中,频繁的对训练的数据集排序和扫描,增加了算法的时间复杂度。
2 CART决策树
CART(Classification And Regression Tree)算法由L.Breiman,J.Friedman,R.Olshen和C.Stone于1984年提出[5],即分类回归算法,简称CART算法,分类问题中含有K个类别,样本点属于第k类的概率为pk对于给定的样本集D
[Gini(D)=k=1γk′≠kpkpk′=1-k=1γp2k] (1)
CART决策树具体算法为:在所有可能的特征A以及所有可能的切分点a中,选择基尼指数最小的特征及对应的切分点作为最优特征与最优切分点,依照最优切分点和最优特征点,从现结点生成两个子节点,将训练数据集特征分配到两个子结点;算法终止条件为结点样本个数小于给定阈值,或者样本集基尼指数小于阈值,亦或没有更多特征。
3 实验方法
1) 算法改进
Cart决策树作为分类与回归树,应用作为钓鱼网站的识别,输出非数值标签。然而,在实际应用中,将一个钓鱼网站误报为正规网站的危害远远大于将正常网站检测为钓鱼网站[6]。应此,我们引入一个代价函数,牺牲正样本的极少识别率,用于降低负样本的错误率。
基于Cart决策树的基本方法,对样本进行随机分类,并对样本进行基本学习,计算当前漏报率(将钓鱼网站误判为正常网站的比例)和误报率(将正常网页误判的钓鱼网站的比例)的比例设为误差输出值d(n),进行归一化,训练开始漏报率和误报率没有权值调整,初始为1:1的比例,定义估计误差 [e(n)=d(n)-d(n)] (2)
e(n)是期望相應,[d(n)]为对d(n)的估计,因为理想的预计误差为0,所以可看作接近0的极小值,这时引入误差函数J(w)作为代价函数。
[J(w)=E|e(n)2|=Ee(n)e*(n)] (3)
根据维纳-霍夫方程[7]和正交原理[8]:
[Rw0=p] (4)
总结上述步骤,改进的CART算法步骤如下:
1) 初始化,使得n=0,权向量[w(0)=0],估计误差[e(0)=d(0)-d(0)=d(0)],输入向量[u(0)=u(0)0...0T]。
2) 对数据集D抽取固定样本数,进行CART决策树生成学习器1,2,...,n,记录每个学习器的误差输出值d(n)和特征权值。
3) 对于n=0,1,...更新权向量[w(n 1)=w(n) μu(n)e*(n)],更新期望信号的估计[d(n 1)=wH(n 1)u(n 1)],设定步长μ为0.02,求得估计误差[e(n 1)=d(n 1)-d(n 1)]。
4) 重复步骤2,3。
4 数据分析
1) 数据收集
本实验采用的数据来自UCI Machine Learning Repository的Pishing Website数据子集[9],数据来源于Google引擎记录,PishingTank记录。其中正常网页1491个,钓鱼网站1054个。训练集和预测集按照1:2的比例进行分配。主要白名单来源于Aleax中抽取的网页数据。黑名单由于变动具有时效性,所以实时跟踪主要黑名单来自2016年6月到2017年6月Phishing tank网站提供的钓鱼网页URL名单库。
5 实验评估及其结果分析
根据各个分类器对钓鱼网站检测的准确率(precision)和召回率(recall)来评估其预测结果的好坏[10]。TP为被分类器正确预测为钓鱼网站的个数;TN为被分类器正确预测为正常网站的个数;FP为:被分类器错误预测为钓鱼网站的个数;FN为被分类器错误预测为正常网站的个数;
分类精度:(正确分类所占总数的比例)
[P=TP TNP N] (5)
误报率:(将正常网页误判的钓鱼网站的比例)
[FPR=TPTP FP] (6)
漏报率:(将钓鱼网站误判为正常网站的比例)
[FNR=FNFN TN] (7)
6 试验结果分析
根据实验结果可以看出,决策树在算法模型上显著性的对未知的URL起到了预测的作用,具有较好的分类效果,达到了一定的分类精度。在使用基于最小均方误差的代价函数后,不仅成功地将漏报率降低,同时迭代拟合了集成学习的思想,提升了算法的识别率,根据图2所示,实验在400次左右误差开始收敛。实验的不足在于,根据表1可以看出,改进后的决策树虽然降低了漏报率,但是是在牺牲了误报率的性能,在迭代次数增大至200次左右后误报率开始回升,同时增加迭代次数提升了算法复杂度,需在今后进行进一步改进。
参考文献:
[1] Sujata Garera, Niels Provos, Monica Chew, et al. A framework for detection and measurement of phishing attacks[J]. Proceeding’WORM’07 Proceedings of the 2017 ACM workshop on Recurring malcode,2017.
[2] Li L,Helenius M.Usability evaluation of anti-pishing toolbars[J]. Comput,Virol., 2014,3(2):163-184.
[3] Zhang Y,Hong J,Cranor L. CANTINA: A content-based approach to detecting phishing websites[C]. In Proc. 16th Int.Con. World Wide Web Banff, Canada,2016.
[4] Anthony Y Fu, Liu Wenyin, Deng Xiaotie. Detecting Phishing Web Pages with Visual Similarity Assessment Based on Earth Mover’s Distance(EMD)IN[J]. IEEE Transactions on Dependable and Secure Computing. 2016, 3(4):301-311.
[5] Zhang, Hai-jun, Liu Gang, Chow Tommy WS.Textual and visual content-based anti-phishing: a bayesian approach[J]. IEEE transac-tions on neural networks /a publicat-ion of the IEEE Neural Networks Council, 2011, 22 (10):1532-1546.
(下转第84页)
(上接第80页)
[6] Artem Vorobiev and Jun Han. Security Attack Ontology for Web Services[J]. 2015 IEEE,2015.
[7] Reyes Rios-Cabrera, Tinne Tuytelaars, Luc Van Gool. Efficient multi-camera vehicle detection, tracking, and identification in a tunnel surveillan-ce application[J]. Computer Vision and Image Understanding, 2012, 116(6):742-753. [8] Abdelhamid N, Ayesh A, Thabtah F. Phishing detection based associative classification data mining[J]. Expert Systems With Applications, 2014, 41(13):24-28.
[9] Lin CF, Lin S F. Efficient face detection method with eye region judgment[J]. EURASIP Journal on Image and Video Processing, 2013, 2013(1):1-14.
[10] Reyes Rios-Cabrera, Tinne Tuytelaars, Luc Van Gool. Efficient multi-camera vehicle detection, tracking, and identification in a tunnel surveillan-ce application[J]. Computer Vision and Image Understanding, 2012, 116(6):742-753.
[11] Barraclough P A, Hossain M A, Tahir M A. Int-elligent phishing detection and protec-tion scheme for online transactions[J]. Expert Systems With Applications, 2013, 40 (11):4697-4706.
[12] Yuan-Hsin Tung, Chen-Chiu Lin, Hwai-Ling Shan. Test as a Service: A framework for Web security TaaS service in cloud environment[J]. IEEE, 2014.
[13] Zhang Hai-jun, Liu Gang, Chow Tommy W S.Textual and visual content-based anti-phishing: a bayesian approach[J]. IEEE transac-tions on neural networks /a publicat-ion of the IEEE Neural Networks Council, 2011, 22(10):1532-1546.
[14] UCI 數据集[EB/OL].http://archive.ics.uci.edu/ml/datasets/Phishing Websites.
[15] Lim J S, Kim WH. Detecting and tracking of multiple pedestrians using motion, color information and the AdaBoost algorithm[J]. Multimedia Tools and Applications, 2013, 65(1):161-179.
[16] Himabindu Lakkaraju. A Machine Learning Framework to Identify Student at Risk of Adverse Academic Outcomes[Z]. SIGKDD2016.
[17] WenluZhang, Rongjian Li, Tao Zeng, QianSun, Deep Model Based Transfer and Multi-Task Learning for Biological Image Analysis[Z]. SIGKDD2016.