CN108737423B - 基于网页关键内容相似性分析的钓鱼网站发现方法及*** - Google Patents
基于网页关键内容相似性分析的钓鱼网站发现方法及*** Download PDFInfo
- Publication number
- CN108737423B CN108737423B CN201810505426.0A CN201810505426A CN108737423B CN 108737423 B CN108737423 B CN 108737423B CN 201810505426 A CN201810505426 A CN 201810505426A CN 108737423 B CN108737423 B CN 108737423B
- Authority
- CN
- China
- Prior art keywords
- webpage
- key content
- phishing
- simhash
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004458 analytical method Methods 0.000 title claims abstract description 18
- 238000004364 calculation method Methods 0.000 claims abstract description 32
- 238000000605 extraction Methods 0.000 claims abstract description 28
- 230000002776 aggregation Effects 0.000 claims abstract description 9
- 238000004220 aggregation Methods 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims description 44
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 14
- 238000001514 detection method Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009193 crawling Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于网页关键内容相似性分析的钓鱼网站发现方法和***,属于计算机网络安全领域。本方法包括网页关键内容特征提取、网页关键内容特征聚类和网页关键内容相似性计算。相应提供的***包括网页主题分类器、关键内容提取器、特征抽取及聚合模块、相似度计算引擎和样本特征管理模块。通过网页主题分类器聚焦可疑的URL,防止不必要的特征过拟合,然后对待分析网页进一步通过关键内容提取器和相似度计算引擎来获得判断结果。本发明应用在网络关口URL检测,每个URL网页的检测时间为微秒级,正确率在97.5%以上,可实现快速、准确、稳定的钓鱼网站检测。
Description
技术领域
本发明属于计算机网络安全领域,具体涉及一种基于网页关键内容相似性分析的钓鱼网站发现方法及其***。
背景技术
随着互联网技术的发展,尤其是智能终端设备的普及,在给人们提供便利信息的同时也为钓鱼网站(是指通过垃圾邮件、即时通信、社交网络等信息载体,发布欺诈性消息,骗取网络用户访问的仿冒网站)的传播提供了更多的渠道。伴随电子商务的普及和推广,与银行诈骗相关的网络钓鱼事件频繁发生,其危害程度呈现逐年增长的趋势。在国内,每天产生数千亿的URL(Uniform Resoure Locator,统一资源定位符)访问行为,这些钓鱼URL链接在传播的过程中被及时发现,并对其进行实时的处理,将在很大程度上降低钓鱼网站的传播和危害。
现有的一些钓鱼网站的发现技术主要包括以下几种方式:
(1)基于URL的检测技术,通过分析钓鱼网站URL的表现形式,如URL过长、IP替代域名、不常采用的字符@、可疑域名等,以此来判断钓鱼网站[1-4]。
(2)基于机器学习的算法计算分析,通常选择一些钓鱼网站的异常特征作为用来训练机器的特征向量,由此形成分类器算法,并以此分类器来判别钓鱼网站[5]。
(3)基于视觉相似度的检测技术,曹久新等人提出了一个基于嵌套EMD(EarthMover’s Distance)的网页相似度判定算法,对Web网页图像进行分割,利用分割后的子图特征来构建网页的ARG(Attributed Relational Graph)。计算得到不同的AGR属性的距离后,通过嵌套EMD方法得到钓鱼网站与受保护网站网页的相似度,进而实现对钓鱼网站的高精度检测[6]。
(4)基于文档结构的检测技术,郭敏哲等人分析了Web网页文档对象,提取文本对象模型中的常被钓鱼者利用的网络钓鱼敏感信息特征。通过利用BP(Back Propagation)神经网络来对被测网站的异常程度进行检测。并通过线性分类器分析检测到的异常程度,来判断该网站是否为钓鱼网站[7]。
(5)其它类型的检测技术,黄华军等人提出基于半脆弱水印的网络钓鱼主动防御[8];Huang H.J等提出了基于异常特征钓鱼URL检测算法[9];张健毅等人提出一种对文本语义理解的网络钓鱼检查算法[10]等等。
以上的技术中,基于URL的检测技术可以快速定位目标,但缺点是误报率较大;基于机器学习的算法计算开销大,性能提升成为主要的瓶颈;基于视觉相似性的技术算法复杂,占用空间大,需要大量的样本做分析计算,对于海量的URL而言,不具有普适性;基于文档结构的检测技术存在特征泛化能力弱,需要频繁替换特征的问题。
参考文献如:
[1]Huang C.,Ma S,Chen K.,Using One-Time Passwords to Prevent PasswordPhishing Attacks[J].Journal of Network and Computer Applications.2011,34(4):1292-1301.
[2]Garera S.,Provos N.,Chew M..A Framework for detection andMeasurement of Phishing Attacks[C].In:Proc.of WORM’07,2007:1-8.
[3]Prakash P.,Kumar M..Kompella R.R.,et al.PhishNet:PredictiveBlacklisting to Detect Phishing Attacks[C].In:Proc.of IEEE INFOCOM,IN,2010:1-5.
[4]Ma J.,Saul L K.,Savage S..et al.Learning to Detect Malicious URLs[J].ACM Transactions on Intelligent Systems and Technology.2011,2(3):1-30.
[5]Zhang H.,Liu G.,Chow T.W.S..et al.Textual and Visual Content-BasedAnti-Phishing:A Baysian Approach[J].IEEE Transactions on NeuralNetworks.2011,22(10):1532-1546.
[6]曹欧新,毛波,罗军舟,等.基于嵌套EMD的钓鱼网页检测算法[J].计算机学报,2009,32(5):922-929.
[7]郭敏哲,袁津生,王雅超,等.网络钓鱼Web页面检测算法机[J].计算机工程,2008,34(20):161-163.
[8]殷水军,刘嘉永,刘亮.针对Web-mail邮箱的跨站网络钓鱼攻击的研究[J].通信技术,2010,43(8):164-166.
[9]Huang H.J.,Wang Y.J.,Xie L.L..et al.An Active Anti-PhishingSolution Based on Semi-fragile Watermark[J].Information TechnologyJournal.2013,12(1):198-203.
[10]Huang H.J.,Qian L.,Wang Y.J..A SVM-Based Technique to DetectPhishing URLs[J].Information Technology Journal.2012,11(7):921-925.
发明内容
针对上述已有方法存在的误报率大、计算开销大、普适性差等问题,本发明公开了一种基于网页关键内容相似性分析的钓鱼网站发现方法和***,应用在网络关口URL检测,实现快速、准确、稳定的钓鱼网站检测。
本发明公开了一种基于网页关键内容相似性分析的钓鱼网站发现方法,该方法包括网页关键内容特征学习和网页关键内容相似性计算;其中,网页关键内容特征学习(简称WPKC-FL)包括网页关键内容特征提取(简称WPKC-FE)和网页关键内容特征聚类(简称WPKC-FC)。
所述的网页关键内容特征提取的具体步骤包括:
步骤(1.1)根据仿冒的目标对象,对带标签label的钓鱼网站URL进行分类;对每类都执行下面步骤1.2~1.7。label用于标记网页所仿冒的目标对象类型。
步骤(1.2)下载各URL对应的web页面源码,并将其转换为统一的字符码。
步骤(1.3)根据URL的页面代码构建网页的Dom(文档对象模型)树,提取标签下的文本,标签包括title、meta、body等,在提取时去除非打印字符和标点符号,只保留数字、字母和中文字符。
步骤(1.4)对提取的文本内容,按照2-8字符的长度进行关键词提取,丢弃过长的语义段和无实际意义的助词,为每个页面形成一个词向量;每个页面的词向量中的词唯一,没有重复。
步骤(1.5)对词向量进行规范化,删除词向量中的具体时间词、指标的具体度量值、干扰词、广告和第三方的链接词。
步骤(1.6)对词向量进行simhash运算,每个词向量对应生成一个39位的数字串。
步骤(1.7)对每一个URL网页的内容,映射成一个<simhash,label>二元组对。其中,simhash为由步骤1.6计算得到的网页对应的词向量的simhash值,label为网页的标签。
所述的网页关键内容特征聚类将每个分组的钓鱼网站的simhash值依据海明距离进行聚类,对每一类钓鱼网站计算获取一组特征属性值。
所述的网页关键内容相似性根据每类钓鱼网站的特征属性值,对待比较的URL进行相似性计算,来判断待比较的URL是否为钓鱼网站。
所述的网页关键内容特征聚类,对每一类钓鱼网站执行下面步骤,包括:
步骤2.1,将该类网页的simhash值进行分类,具体是:设两个不同网页的simhash值分别为hi,hj,i,j为正整数且i≠j,计算hi,hj之间的海明距离Hd(hi,hj),设置初始距离阈值β,若Hd(hi,hj)<β,则将hi和hj分为一组;设将该类网页的simhash值分为K组,形成集合C,集合中第k组表示为Ck。
步骤2.2,对该类网页进行正样本扩展,使得其中的正负样本的比例达到设定值,然后计算出正负样本之间的最小海明距离,设为γ,则修正阈值β=γ。
然后对每个分组Ck,设其中存在r个网页的simhash值,计算该分组内部的距离矩阵A:
计算距离矩阵A每行的元素之和,取最小值对应的对角线元素作为该分组的聚类中心dk:
将聚类中心dk作为分组Ck的特征属性值;
步骤2.4,将分组集合C表示为特征属性值集合C′=<di,d2,…,dk,…,dm>。
所述的网页关键内容相似性计算(WPKC-SC)的具体步骤包括:
步骤3.1,加载每类钓鱼网站的特征属性值,设某类的特征属性值为<d1,d2,…,dm>;m为正整数;
步骤3.2,下载待比较的URL对应的web源码,并将其转换为预设的字符码。
步骤3.3,构建待比较的网页的Dom树,并按照步骤1.3的方法,提取标签title、meta、body下的文本,提取特征文本特征去除非打印字符和标点符号,只保留数字、字母和中文字符。
步骤3.4,按照步骤1.4和步骤1.5的方法对待比较的网页提取的内容进行关键词提取和词向量规范化,并计算词向量的simhash值,设为h。
步骤3.5,计算h与dk之间的海明距离,k=1,2,…,m;如果计算的海明距离小于该类钓鱼网站的距离阈值β,则将待比较的网页归为该类钓鱼网站下的对应分组中,否则认为待比较的网页与样本不相似。
基于上述方法,本发明对应提供的一种基于网页关键内容相似性分析的钓鱼网站发现***包括网页主题分类器、关键内容提取器、特征抽取及聚合模块、相似度计算引擎和样本特征管理模块。
所述的网页主题分类器用于对URL和web页面的内容进行预分类,包括:根据URL中的域名字符串,对URL对应的网站进行类别和主题分类,类别根据顶级域名进行划分,主题根据预分类字典对二级域名进行匹配;根据URL对应的web页面内容,对页面内容的主题分类进行修正;将所要关注的分类和主题的URL发送给关键内容提取器模块;
所述的关键内容提取器用于:对URL对应的web页面进行统一编码;对URL的网页构建文档对象模型树,提取标签<title>、<meta>、<body>下的文本,提取时只保留数字、字母和中文字符;对提取的文本按照2~8字符的长度进行关键词提取,为每个页面形成一个词向量;对词向量进行规范化,删除词向量中的具体时间词、指标的具体度量值、干扰词、广告和第三方的链接词。
所述的相似度计算引擎计算待比较网页的simhash值h,加载对应类钓鱼网站的特征属性值,计算h与特征属性值的海明距离,依据该类钓鱼网站的距离阈值β来判断待比较的网页是否为钓鱼网站;所述的待比较网页由网页主题分类器发送给关键内容提取器,经关键内容提取器得到规范化后的词向量输入相似度计算引擎。
所述的特征抽取及聚合模块,对样本特征管理模块中每类钓鱼网站的各样本的规范化词向量计算simhash值,然后采用海明距离进行聚类,对每类钓鱼网站计算获取一组特征属性值。
所述的样本特征管理模块用于存储钓鱼网站的训练样本,包括网页经关键内容提取器处理后得到的词向量。
本发明与现有技术相比,具有以下明显优势:
(1)本发明提供的钓鱼网站发现方法和***,其中提取的关键内容的特征具有相对的稳定性:能对同类型的钓鱼网站进行识别和发现,钓鱼网站的构建者通常会在相同的模版上构造很多不同的目标对象,他们都具有相似的关键内容。
(2)本发明提供的钓鱼网站发现方法和***,所提取的关键内容的特征具有发现新钓鱼网站的能力:关键内容的特征进行高维的语义抽象后,可以抽象的概括一部分相似度在一定阈值内的钓鱼网站。当新出现的钓鱼网站,特征在一定的相似度范围内,能依然能被已提取的原始特征覆盖。
(3)本发明提供的钓鱼网站发现方法和***,适用于海量URL的高效钓鱼网站发现:能够适用每天单机百万级的URL检测,提高钓鱼网站的发现能力。
(4)本发明实现的基于网页关键内容相似性分析的钓鱼网站发现方法,对网络中传输的钓鱼网站URL进行发现,每个URL网页的检测时间为微秒级,算法的正确率在97.5%以上,误报率在5%以下,漏报率在3%以下,召回率99%。
(5)本发明实现的基于网页关键内容相似性分析的钓鱼网站发现***,能够应用在网络关口的URL检测,具有较高的可用性和稳定性。
附图说明
图1是本发明的钓鱼网站发现方法中网页关键内容特征提取的流程示意图;
图2是本发明的钓鱼网站发现方法中网页关键内容特征聚类的流程示意图;
图3是本发明的钓鱼网站发现方法中网页关键内容相似性计算的流程示意图;
图4是本发明的基于网页关键内容相似性分析的钓鱼网站发现***的模块组成示意图;
图5是本发明的基于网页关键内容相似性分析的钓鱼网站发现***的部署图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图和实施例对本发明的技术方案作进一步的详细描述。所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明提出了一种基于网页关键内容相似性分析的钓鱼网站发现方法,如图1~图3所示,该方法包括网页关键内容特征学习(WPKC-FL)和网页关键内容相似性计算(WPKC-SC)。网页关键内容特征学习(WPKC-FL)包括网页关键内容特征提取(WPKC-FE)和网页关键内容特征聚类(WPKC-FC)。
本发明方法中网页关键内容特征提取(WPKC-FE)的具体步骤,如图1所示,包括:
步骤1.1)对钓鱼网站的URL进行分组和优先级设置,设置仿冒目标对象类型的标签。某些URL对应的钓鱼网站仿冒多个不同的对象,需要根据领域专家的意见给出最高优先级的标记。在分组后,选择其中的一个分组进行步骤1.2。
从网络中爬取数据,对爬取的钓鱼网站根据关键词进行分组,设置网页的标签label,标签用于标记该网页所仿冒的目标对象类型。不同的分组中仿冒的对象类型不同,同一分组内仿冒同类型的目标对象,例如划分为新闻类、银行类、视频类等。
对每类,正确被判断为钓鱼网站的属于正样本,被误判为钓鱼网站的网页为负样本。
步骤1.2)下载URL对应的web页面源码,并将其转换为统一的字符码。
在该步骤中,统一的字符码通常设置为UTF-8,***需要支持中文,对于转码失败的情况,做丢弃处理。本发明实施例中将每个URL对应的web页码源码都转换为UTF-8格式字符串。用户还可以采用其他的字符码转换格式,例如gb2312、GBK、gb18030等等。
步骤1.3)根据页面代码构建网页的Dom(文档对象模型)树,提取标签title、meta、body下的文本,提取特征文本时去除非打印字符和标点符号,只保留数字、字母和中文字符。
在提取文本中,非打印字符和标点符号用空格代替,特殊字符除去常用的URL字符串、邮箱地址外,其他的均用空格替换。
如图1所示,本发明实施例中提取标签<title>、<meta>、<a>、<p>、<div>、<table>、<form>、<tr>、<td>、<span>等下面的文本。HTML中各标签的具体含义如下:
<title>标签定义文档的标题,在所有HTML文档中是必需的。
<meta>标签提供了HTML文档的元数据。元数据不会显示在客户端,但是会被浏览器解析。
<body>标签定义文档的主体。元素包含文档的所有内容(比如文本、超链接、图像、表格和列表等等)。
<a>标签定义超链接,用于从一个页面链接到另一个页面。
<p>标签定义段落。元素会自动在其前后创建一些空白。浏览器会自动添加这些空间,您也可以在样式表中规定。
<div>标签定义HTML文档中的一个分隔区块或者一个区域部分。
<table>标签定义HTML表格,一个HTML表格包括<table>元素,一个或多个<tr>、<th>以及<td>元素。
<form>标签用于创建供用户输入的HTML表单。
<tr>元素定义表格行。
<td>元素定义表格单元。
<span>用于对文档中的行内元素进行组合。
步骤1.4)对提取的文本进行向量化,将每个网页表示为一个词向量。对提取的内容,按照2~8字符的长度进行提取,丢弃过长的语义段和无实际意义的助词,将提取的关键词集合进行向量化:
W=<w1,w2,w3…wn>,其中wi≠wj(1<i<j<n)。
每个词向量W中的词唯一,没有重复,每个web页面对应一个词向量W,n表示词向量W中包含的关键词个数,wi为第i个关键词。
将<title>和<meta>中的文本内容,全部提取;将<body>中的文本,按照长度2~8字符提取;<a>标签中的字符数不超过6个字符;<p>标签中的不超过15个字符;每个<div><span><td>标签,提取的字符在2~15个之间;<form>标签中的全部提取;<table>标签中的按照2~10个字符提取。
步骤1.5)对词向量进行规范化,将具体的时间词、变化频繁的数字、出现频率过高的干扰词、没有区分度的广告、第三方的链接词等删除。
对于当前仿冒目标对象类型,网页中会存在指标的具体度量值,这些度量值是变换频繁的数字,需要删除。出现频率过高的干扰词,可根据设置的阈值T来判断是否需要删除,当某词出现次数超过阈值T时则认为出现频率过高,是干扰词,需要删除。
在该步骤中,具体的时间词如:2018-03-19 20:12:22,2018年3月19日星期一;变换频繁的数字如:12次,4723元;出现频率过高的干扰词如:微博、微信等;没有区分度的广告如:京东、淘宝的购物推荐;第三方链接词如:搜狐、网易新闻等。
步骤1.6)对词向量进行simhash(文本去重)运算,每个词向量对应生成一个39位的数字串。
本发明实施例所使用的simhash运算,是***提出的文档相似性哈希算法。该算法与普通的MD5或者hash算法相比,最大优势是:如果原始文档相似,则simhash值也相似,而传统的hash算法在转换后的值是随机的,没有保留相似性。
如词向量<正在进入,请稍等,正在为您选择最快的访问线路>生成的simhash值为265471819730764818141944271831779988459。
步骤1.7)对每一个URL网页的内容,映射成一个<simhash,label>二元组对,提取算法结束。二元组对中,simhash是网页对应的词向量进行simhash运算值,label代表网页所属分组的标签,即仿冒的目标对象类型。
步骤1.8)选择另外一个分组,转步骤1.2执行,直到所有的分组全部执行完,网页均映射为一个二元组对。
本发明提供的关键内容提取步骤,在关键内容的选择上可以具备特征的稳定性和兼顾视觉特征上的显著性,这与传统意义上的分词或者内容摘要是有本质区别的。相对于现有技术而言,上述实现过程计算简单,没有语义分析的复杂性;而且关键内容贴合网页的架构,适用于网页宣传内容的变化。
网页关键内容特征聚类(WPKC-FC)的具体步骤如图2所示,步骤包括:
步骤2.1)将同一类网页的simhash值进行分组。将特征提取(WPKC-FE)中生成的<simhash,label>二元组对,计算相同label的simhash值的海明距离。
设相同label的两个网页的simhash值分别为hi,hj,计算hi,hj之间的海明距离Hd(hi,hj),其中Hd()为海明距离的计算函数,设置初始参数β=20,若Hd(hi,hj)<β,i≠j,则hi和hj归为同一组Ck。这样在参数β确定的情况下,将相同label下的simhash值分为K个不同的分组集合C:
C=<C1,C2,…,Ck,…,CK>
其中,第k组Ck用该组内的编号i最小的hi表示聚类中心。
在该步骤中,参数β值的设置,主要依据是领域专家的建议和实验中的经验值,数值的变化为:20≤β≤40。参数设置过小,对捕获新特征不敏感,参数值过大,容易引起误报率的提高。
步骤2.2)将样本标签和simhash值进行正样本扩展,使得相同label中正负样本的比例达到50%:50%,修正参数β。计算正样本扩展后,正负样本之间的最小海明距离为γ,则β=γ。
在该步骤中,正负样本的比例50%:50%也是按照经验值的设置,在修正参数β中,样本的比例也设置成80%:20%,60%:40%等不同的情况。
此处所述的负样本是指被误判为钓鱼网站的网页,可人为来设置负样本。对于每类钓鱼网站,除了正样本还需要设置一些负样本。所有的样本都要经过网页关键内容特征提取。
步骤2.3)重新调整集合C,包括:对步骤2.1中C中的两个不同分组,计算两个分组的聚类中心hk1与hk2之间的海明距离,若则合并所述的两个分组;循环执行调整过程,直到达到最优,没有可以合并的分组。设调整后集合C内的分组数从K缩减到m。
对每个分组Ck,设其中存在r个网页的simhash值,计算该分组内部的距离矩阵A:
计算距离矩阵A每行的元素之和,取最小值对应的对角线元素作为该分组的聚类中心dk:
将中心值dii,即聚类中心dk作为分组Ck的特征属性值。
步骤2.4)在计算得到每个分组的特征属性值后,将分组集合C表示为特征属性值集合,即C′=<di,d2,…,dk,…,dm>。
步骤2.5)选择不同的label,继续转步骤2.1执行,直到所有的label都计算完毕。
本发明实现的网页关键内容特征聚类方法,针对钓鱼网站发现的场景,设计了参数β自适应学习方法和距离的定义方式。本发明通过计算距离矩阵A每行的元素之和,取最小值对应的对角线元素作为聚类中心,是专门针对该应用场景设计。通过聚类,使得本发明所提供的特征具有一定的泛化能力,能对新出现的特征有容纳能力,同时,特征具有一定的鲁棒性,可以降低维护和特征更新的压力。
网页关键内容相似性计算(WPKC-SC)的具体步骤包括:
步骤3.1)依据算法WPKC-FL,加载样本的特征属性值:<di,d2,d3,…,dm>
步骤3.2)下载待比较的URL对应的web源码,其转换为预设的统一的字符码。
步骤3.3)构建网页的Dom树,提取title、meta、body文本,提取特征文本特征去除非打印字符和标点符号,只保留数字、字母和中文字符。
在步骤3.2)和步骤3.3)中,转化的字符编码要和网页关键内容提取(WPKC-FE)中的转码一致,默认为UTF-8;提取关键词的策略和规则也和WPKC-FE中的保持一致。
步骤3.4)对提取的内容进行向量化和规范化,并计算其simhash对应的值h。该步骤和步骤1.4和1.5实现的策略和规则一致。
步骤3.5)计算h与特征属性值<di,d2,d3,…,dm>之间的海明距离,如果小于β,这将h归为对应的类别,否则与样本不相似。输出比较结果。对于每一类钓鱼网站,β是根据上面步骤2.2确定的值。
本发明通过海明距离来度量待检测对象与配置中的特征之间的相似程度,并量化成具体的数值,方便后续对误报的参数调整。另外,还具有计算复杂度小,能够提高数据处理性能的优点。
相似性计算,依然采用海明距离,将h与每个特征值进行比较,此处的计算开销是线性的。如果h与di之间的距离为18,小于β,则认为h与第i个对象相似,仿冒的是第i个对象代表的钓鱼网站。由于相似性之间存在可变的因素,因此对新钓鱼网站的发现具有预测能力。
本发明公开了一种基于网页关键内容相似性分析的钓鱼网站发现***,如图4所示,主要包括网页主题分类器、关键内容提取器、相似度计算引擎、特征抽取及聚合模块和样本特征管理模块,下面说明各个模块的功能。
网页主题分类器,主要对URL和web页面的内容进行预分类。该分类器的主要功能包括:1)根据URL中的域名字符串(二级域名),对URL对应的网站进行类别和主题分类,类别可根据顶级域名进行划分,主题根据预分类字典对二级域名进行匹配,将主题分为旅游、美食、税务、银行、数码等60类;2)根据URL对应web页面的title和页脚等信息,对页面内容的主题分类进行修正;3)将用户所要重点关注的分类和主题的URL信息发送给关键内容提取器。
本发明的网页主题分类器有两个重要的功能,1)对大规模的海量URL进行快速的分类,聚焦到可疑度高的URL字符串中,节省大量的时间,提高***的性能;2)可以提高命中率,降低误报率,将非钓鱼类型的干扰网站在分类器中进行过滤,可以有效降低特征提取的复杂度。
关键内容提取器,实现的主要功能包括:1)对URL对应的web页面进行统一编码;2)根据页面代码构建网页的Dom树,提取标签title、meta、body下的文本,提取时只提取数字、字母和中文字符;3)向量化:将所提取的内容按照2~8字符的长度进行提取,丢弃过长的语义段和无实际意义的助词;4)词向量规范化:将具体的时间词、变化频繁的数字、出现频率过高的干扰词、没有区分度的广告、第三方的链接词等删除;5)对规范化后的词向量进行simhash映射,计算simhash值。
在该组件中,1)提取title、meta、body中的文本,其中body中的<a>,<p>,<div>,<span>,<td>,<table>,<form>等标签中的内容长度提取不能超过15个字符;2)对词向量的规范化、主要是固定特征词,将没有区分度和与主题无关的泛化词去除。
相似度计算引擎加载样本特征属性值,将待比较网页的simhash值h与样本特征进行相似度计算,判断待比较网页是否为钓鱼网站,输出判断结果。待比较网页由网页主题分类器发送给关键内容提取器,经关键内容提取器得到对应的simhash值输入相似度计算引擎。
在相似度计算引擎中,所加载的样本特征属性值来自特征抽取及聚合模块,对h与样本特征属性值采用海明距离来计算,然后依据该类钓鱼网站的距离阈值β判断对待比较的网页是否为钓鱼网站。
特征抽取及聚合模块,对样本特征管理模块中每类钓鱼网站的各样本的规范化词向量计算simhash值,然后采用海明距离进行聚类,对每类钓鱼网站计算获取一组特征属性值。
在特征抽取及聚合模块中,聚类中心的修正和优化是重点,它关系到发现目标的正确性,实现方法参见网页关键内容特征聚类中所述。在优化的步骤中,对于不同类别分组中的simhash值,有可能出现待比较网页与二者之间的海明距离都在距离预置之内,即待比较网页可以归为这两个不同的类别下,这种情况时在相似度计算引擎中就需要制定哪个类别的优先级更高,以进行优先级排序。
样本特征管理模块,用于对钓鱼网站的训练样本做管理,对钓鱼网站的源码进行非结构化的存储,包括但不限于1)结构化dom结构的元素;2)网站的截图快照,截图包括内部网站内容和外部地址栏;3)钓鱼网站的URL、域名、IP地址、域名whois信息;4)网页对应的规范化词向量等等。每个训练样本为一个URL,每类钓鱼网站的训练样本中包括正样本和负样本。
样本特征管理模块是非常重要的基础信息维护模块,要周期性的对钓鱼网站的样本进行存活性检验和周期性更新。确保特征的有效性和可用性。
本发明***中,通过网页主题分类器聚焦可疑的URL,防止不必要的特征过拟合,然后对待分析网页进一步通过关键内容提取器和相似度计算引擎来获得判断结果。如图5所示,为根据实际情况推荐的本发明***的物理拓扑部署图,将本发明***的模块分布式部署在组网交换机处,以实现稳定高效地对钓鱼网站的检测。
Claims (9)
1.一种基于网页关键内容相似性分析的钓鱼网站发现方法,其特征在于,包括网页关键内容特征学习和网页关键内容相似性计算;其中,网页关键内容特征学习包括网页关键内容特征提取和网页关键内容特征聚类;
所述的网页关键内容特征提取将每个钓鱼网站网页映射为一个二元组,包括:
步骤1.1,根据仿冒的目标对象,对带标签label的钓鱼网站URL进行分类;对每类都执行下面步骤1.2~1.7;label用于标记网页所仿冒的目标对象类型;
步骤1.2,下载各URL对应的web页面源码,并将其转换为预设的字符码;
步骤1.3,根据URL的页面代码构建网页的文档对象模型树,提取标签下的文本,在提取时去除非打印字符和标点符号,只保留数字、字母和中文字符;
步骤1.4,对提取的文本,按照2~8字符的长度进行关键词提取,为每个页面形成一个词向量;每个页面的词向量中的词唯一,没有重复;
步骤1.5,将词向量规范化,删除词向量中的具体时间词、指标的具体度量值、干扰词、广告和第三方的链接词;
步骤1.6,对词向量进行simhash运算,每个词向量对应生成一个39位的数字串;
步骤1.7,对每一个URL网页的内容,映射成一个<simhash,label>二元组对;simhash为由步骤1.6计算得到的网页对应的词向量的simhash值,label为网页的标签;
所述的网页关键内容特征聚类将每类钓鱼网站的simhash值依据海明距离进行聚类,对每一类钓鱼网站计算获取一组特征属性值;
所述的网页关键内容相似性根据每类钓鱼网站的特征属性值,对待比较的URL进行相似性计算,来判断待比较的URL是否为钓鱼网站。
2.根据权利要求1所述的方法,其特征在于,所述的步骤1.3中,提取标签<title>、<meta>、<body>下的文本,其中,<body>下提取标签<a>、<p>、<div>、<table>、<form>、<tr>、<td>、<span>下的文本内容。
3.根据权利要求1所述的方法,其特征在于,所述的步骤1.3中,在提取标签下的文本时,将非打印字符和标点符号用空格代替,特殊字符除去常用的URL字符串、邮箱地址外,均用空格替换。
4.根据权利要求1所述的方法,其特征在于,所述的网页关键内容特征聚类,对一类钓鱼网站执行下面步骤,包括:
步骤2.1,将该类网页的simhash值进行分类,具体是:设两个不同网页的simhash值分别为hi,hj,i,j为正整数且i≠j,计算hi,hj之间的海明距离Hd(hi,hj),设置距离阈值β的初始值,若Hd(hi,hj)<β,则将hi和hj分为一组;设将该类网页的simhash值分为K组,形成集合C,集合的每一组用该组内编号i最小的hi表示聚类中心;
步骤2.2,对该类网页进行正样本扩展,使得其中的正负样本的比例达到设定值,然后计算出正负样本之间的最小海明距离,设为γ,则修正阈值β=γ;
然后对每个分组Ck,设其中存在r个网页的simhash值,计算该分组内部的距离矩阵A:
计算距离矩阵A每行的元素之和,取最小值对应的对角线元素作为该分组的聚类中心dk:
将聚类中心dk作为分组Ck的特征属性值;
步骤2.4,将分组集合C表示为特征属性值集合C′=<d1,d2,…,dk,…,dm>。
5.根据权利要求4所述的方法,其特征在于,所述的步骤2.1中,初始设置的距离阈值β取值范围是:20≤β≤40。
6.根据权利要求4所述的方法,其特征在于,所述的步骤2.2中,设置正负样本的比例为50%:50%。
7.根据权利要求1或4所述的方法,其特征在于,所述的网页关键内容相似性,计算的实现步骤包括:
步骤3.1,加载每类钓鱼网站的特征属性值,设某类的特征属性值为<d1,d2,…,dm〉;m为正整数;
步骤3.2,下载待比较的URL的web源码,并将其转换为预设的字符码;
步骤3.3,构建待比较的网页的文档对象模型树,并按照步骤1.3的方法,提取标签下的文本;
步骤3.4,按照步骤1.4和步骤1.5对待比较的网页提取的文本进行关键词提取和词向量规范化,计算得到的词向量的simhash值,设为h;
步骤3.5,计算h与dk之间的海明距离,k=1,2,…,m;如果所计算的距离小于该类钓鱼网站的距离阈值β,则将待比较的网页归为该类钓鱼网站下的对应分组中。
8.一种基于网页关键内容相似性分析的钓鱼网站发现***,其特征在于,该***包括网页主题分类器、关键内容提取器、特征抽取及聚合模块、相似度计算引擎和样本特征管理模块;
所述的网页主题分类器用于对URL和web页面的内容进行预分类,包括:根据URL中的域名字符串,对URL对应的网站进行类别和主题分类,类别根据顶级域名进行划分,主题根据预分类字典对二级域名进行匹配;根据URL对应的web页面内容,对页面内容的主题分类进行修正;将所要关注的分类和主题的URL发送给关键内容提取器模块;
所述的关键内容提取器用于:对URL对应的web页面进行统一编码;对URL的网页构建文档对象模型树,提取标签<title>、<meta>、<body>下的文本,提取时只保留数字、字母和中文字符;对提取的文本按照2~8字符的长度进行关键词提取,为每个页面形成一个词向量;对词向量进行规范化,删除词向量中的具体时间词、指标的具体度量值、干扰词、广告和第三方的链接词;
所述的相似度计算引擎计算待比较网页的simhash值h,加载对应类钓鱼网站的特征属性值,计算h与特征属性值的海明距离,依据该类钓鱼网站的距离阈值β来判断待比较的网页是否为钓鱼网站;所述的待比较网页由网页主题分类器发送给关键内容提取器,经关键内容提取器得到规范化后的词向量输入相似度计算引擎;
所述的特征抽取及聚合模块,对样本特征管理模块中每类钓鱼网站的各样本的规范化词向量计算simhash值,然后采用海明距离进行聚类,对每类钓鱼网站计算获取一组特征属性值;
所述的样本特征管理模块用于存储钓鱼网站的训练样本,包括网页经关键内容提取器处理后得到的词向量。
9.根据权利要求8所述的***,其特征在于,所述的关键内容提取器中,在提取标签<body>下的文本时,对<body>中的标签<a>,<p>,<div>,<span>,<td>,<table>和<form>单个标签下的文本内容长度提取不超过15个字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810505426.0A CN108737423B (zh) | 2018-05-24 | 2018-05-24 | 基于网页关键内容相似性分析的钓鱼网站发现方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810505426.0A CN108737423B (zh) | 2018-05-24 | 2018-05-24 | 基于网页关键内容相似性分析的钓鱼网站发现方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737423A CN108737423A (zh) | 2018-11-02 |
CN108737423B true CN108737423B (zh) | 2020-07-14 |
Family
ID=63936230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810505426.0A Expired - Fee Related CN108737423B (zh) | 2018-05-24 | 2018-05-24 | 基于网页关键内容相似性分析的钓鱼网站发现方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108737423B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109858015B (zh) * | 2018-12-12 | 2022-11-18 | 湖北工业大学 | 一种基于ctw和km算法的语义相似度计算方法及装置 |
CN109815337B (zh) * | 2019-02-19 | 2021-12-24 | 珠海天燕科技有限公司 | 确定文章类别的方法及装置 |
CN110309667B (zh) * | 2019-04-16 | 2022-08-30 | 网宿科技股份有限公司 | 一种网站暗链检测方法和装置 |
CN110572359A (zh) * | 2019-08-01 | 2019-12-13 | 杭州安恒信息技术股份有限公司 | 基于机器学习的钓鱼网页检测方法 |
CN110879967B (zh) * | 2019-10-16 | 2023-02-17 | 厦门美柚股份有限公司 | 视频内容重复判断方法及装置 |
CN111143744B (zh) * | 2019-12-26 | 2023-10-13 | 杭州安恒信息技术股份有限公司 | 一种web资产检测的方法、装置、设备及可读存储介质 |
SG10202001963TA (en) | 2020-03-04 | 2021-10-28 | Group Ib Global Private Ltd | System and method for brand protection based on the search results |
US11475090B2 (en) * | 2020-07-15 | 2022-10-18 | Group-Ib Global Private Limited | Method and system for identifying clusters of affiliated web resources |
CN113378090B (zh) * | 2021-04-23 | 2022-09-06 | 国家计算机网络与信息安全管理中心 | 一种互联网网站相似度分析方法、装置以及可读存储介质 |
CN113992625B (zh) * | 2021-10-15 | 2024-05-28 | 杭州安恒信息技术股份有限公司 | 域名源站探测方法、***、计算机及可读存储介质 |
CN116366338B (zh) * | 2023-03-30 | 2024-02-06 | 北京微步在线科技有限公司 | 一种风险网站识别方法、装置、计算机设备及存储介质 |
CN117176482B (zh) * | 2023-11-03 | 2024-01-09 | 国任财产保险股份有限公司 | 一种大数据网络安全防护方法及*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104199972B (zh) * | 2013-09-22 | 2018-08-03 | 中科嘉速(北京)信息技术有限公司 | 一种基于深度学习的命名实体关系抽取与构建方法 |
BR112017026293B1 (pt) * | 2015-06-07 | 2023-10-24 | Wix.Com Ltd | Sistema para um sistema de construção de sites implementado em um servidor e método para um sistema de construção de sites implementado em um servidor |
CN105335697A (zh) * | 2015-09-18 | 2016-02-17 | 黄山学院 | 一种基于卫星图像测算古民居相似度方法和装置 |
CN105912633A (zh) * | 2016-04-11 | 2016-08-31 | 上海大学 | 面向稀疏样本的聚焦式Web信息抽取***及方法 |
CN106202561B (zh) * | 2016-07-29 | 2019-10-01 | 北京联创众升科技有限公司 | 基于文本大数据的数字化应急管理案例库构建方法及装置 |
-
2018
- 2018-05-24 CN CN201810505426.0A patent/CN108737423B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN108737423A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108737423B (zh) | 基于网页关键内容相似性分析的钓鱼网站发现方法及*** | |
CN108965245B (zh) | 基于自适应异构多分类模型的钓鱼网站检测方法和*** | |
Rao et al. | Jail-Phish: An improved search engine based phishing detection system | |
US10778702B1 (en) | Predictive modeling of domain names using web-linking characteristics | |
CN109005145B (zh) | 一种基于自动特征抽取的恶意url检测***及其方法 | |
CN108777674B (zh) | 一种基于多特征融合的钓鱼网站检测方法 | |
TWI437452B (zh) | 使用查詢相關性資料的垃圾網頁分類 | |
US20070294252A1 (en) | Identifying a web page as belonging to a blog | |
WO2016058267A1 (zh) | 一种基于网站主页特征分析的中文网站分类方法和*** | |
US10311120B2 (en) | Method and apparatus for identifying webpage type | |
JP2010501096A (ja) | ラッパー生成およびテンプレート検出の協同最適化 | |
Haruta et al. | Visual similarity-based phishing detection scheme using image and CSS with target website finder | |
CN103324886B (zh) | 一种网络攻击检测中指纹库的提取方法和*** | |
WO2018077035A1 (zh) | 恶意资源地址检测方法和装置、存储介质 | |
CN102117339A (zh) | 针对不安全网页文本的过滤监管方法 | |
WO2021141656A1 (en) | System and method to dynamically generate a set of api endpoints | |
Zhu et al. | CCBLA: a lightweight phishing detection model based on CNN, BiLSTM, and attention mechanism | |
CN107145591A (zh) | 一种基于标题的网页有效元数据内容提取方法 | |
Kasim | Automatic detection of phishing pages with event-based request processing, deep-hybrid feature extraction and light gradient boosted machine model | |
CN117194773A (zh) | 一种基于多模态特征的网站识别方法和装置 | |
KR101556714B1 (ko) | 검색결과 제공 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
Zhu et al. | PDHF: Effective phishing detection model combining optimal artificial and automatic deep features | |
Lei et al. | Design and implementation of an automatic scanning tool of SQL injection vulnerability based on Web crawler | |
WO2018072363A1 (zh) | 一种数据源扩展方法及装置 | |
US20200380048A1 (en) | Architecture and functional model of a generic data excavation engine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200714 |
|
CF01 | Termination of patent right due to non-payment of annual fee |