CN110572359A - 基于机器学习的钓鱼网页检测方法 - Google Patents

基于机器学习的钓鱼网页检测方法 Download PDF

Info

Publication number
CN110572359A
CN110572359A CN201910705624.6A CN201910705624A CN110572359A CN 110572359 A CN110572359 A CN 110572359A CN 201910705624 A CN201910705624 A CN 201910705624A CN 110572359 A CN110572359 A CN 110572359A
Authority
CN
China
Prior art keywords
webpage
url
phishing
link
vocabulary
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.)
Pending
Application number
CN201910705624.6A
Other languages
English (en)
Inventor
范如
范渊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DBAPPSecurity Co Ltd
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN201910705624.6A priority Critical patent/CN110572359A/zh
Publication of CN110572359A publication Critical patent/CN110572359A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于机器学习的钓鱼网页检测方法:包括以下步骤:S1、判断待测网页是否为合法网页,如不是,执行步骤S2;S2、提取步骤S1所得网页的URL;S3、基于逻辑回归算法的钓鱼网页检测方法,判断步骤2得到网页是合法网页还是钓鱼网页。本发明提供了一种基于机器学习的钓鱼网页检测算法,采用了构建网页特征集合,网页过滤技术以及逻辑回归分类算法来实现对钓鱼网页的检测。该检测方法可以有效减少合法网页的检测数量,并实现了对逃逸技术的钓鱼网页的良好检测。

Description

基于机器学习的钓鱼网页检测方法
技术领域
本发明涉及一种钓鱼网页检测方法,具体涉及一种基于机器学习的钓鱼网页检测方法。
背景技术
现有的暗链检测方法有:1、一种跳转类钓鱼网页的检测方法和装置;2、一种基于网页关联性的钓鱼检测方法。
一种跳转类钓鱼网页的检测方法和装置,其检测方法在于只考虑了网页的URL的特征和跳转后的URL的特征,将待测URL集合对应的聚类实体集合与预设的聚类信息库是否存在相同的聚类实体来检测钓鱼网页。该检测方法维度单一,对新型钓鱼攻击网页不具有较好的识别。
一种基于网页关联性的钓鱼检测方法整合了页面之间关联性以及页面的整体性布局特征,主要解决了基于网页关联性和视觉相似性角度进行快速钓鱼网页检测的问题。该方法主要从嵌在网页里的链接关联性、搜索关联性和文本关联性以及网页的整体关联性,把网页看作一个不可分割的整体,对其进行压,该检测方式提取的特征较少,没有考虑搜索引擎准确性。
因此,需要对现有技术进行改进。
发明内容
本发明要解决的技术问题是提供一种高效的基于机器学习的钓鱼网页检测方法。
为解决上述技术问题,本发明提供一种基于机器学习的钓鱼网页检测方法:包括以下步骤:
S1、判断待测网页是否为合法网页,如不是,执行步骤S2;
S2、提取步骤S1所得网页的URL;
以非字母、非数字但不包括“_”和“-”的字符号切分URL,得到经切分后的URL的词汇集合;
若在URL路径词汇中存在钓鱼攻击目标词,同时该钓鱼攻击目标词与该URL的各级域名标签均不相同,则判定该网页为钓鱼网页;
若同一字符串中存在两个及两个以上不同的钓鱼攻击目标词,则判定该网页为钓鱼网页;
若经切分后的URL的词汇集合中并不存在钓鱼攻击目标词,但忽略字符串内部的数字字符后,若可发现钓鱼攻击目标词,则判定该网页为钓鱼网页;
若经切分后的URL的词汇集合并不存在钓鱼攻击目标词,然后忽略字符串内部的数字字符后也未发现钓鱼攻击目标词,则重新切分,新的URL词汇集合中发现钓鱼攻击目标词或钓鱼攻击目标词字符串子串,则判定该网页为钓鱼网页;
如果未判定为钓鱼网页,执行步骤S3;
S3、基于逻辑回归算法的钓鱼网页检测方法,判断步骤2得到网页是合法网页还是钓鱼网页。
作为对本发明基于机器学习的钓鱼网页检测方法的改进:
步骤2中,在经切分后的URL的词汇集合不存在钓鱼攻击目标词,然后忽略字符串内部的数字字符后也未发现钓鱼攻击目标词时的重新切分方法为:
URL以“/”和“\”作为分割符号切分,而后再以在任意非字母、非数字符号切分,同时忽略各部分内的顶级域名词汇;之后,将每部分中索引位置相邻的字符合并,组成新的URL词汇集合;若新的URL词汇集合中发现钓鱼攻击目标词或钓鱼攻击目标词字符串子串,则判定该网页为钓鱼网页。
作为对本发明基于机器学习的钓鱼网页检测方法的进一步改进:
步骤3为:提取步骤2得到网页的特征,基于逻辑回归算法的通过特征判断步骤2得到网页是合法网页还是钓鱼网页。
作为对本发明基于机器学习的钓鱼网页检测方法的进一步改进:
特征包括DNS质疑度属性、HTML标签属性、URL的字符特征、URL中的路径与钓鱼词汇的相似度和Whois特征。
作为对本发明基于机器学习的钓鱼网页检测方法的进一步改进:
DNS质疑度属性包括DNS质疑度、网页的IP个数、IP、IP子网、自治***号、IP所在国家是否在黑名单中、RETRY值、TTL值、REFRESH值和EXPIRE值特征;
HTML标签属性包括该页面是否会进行重定向、重定向跳转后的网页是否跟待测网页是同一个域名、待测网页<a>标签href属性链接中使用https协议的链接占总的<a>标签中链接的比例、待测网页中<link>标签href属性链接使用https协议的比例、<a>标签中带“#”的标签数量占总的<a>标签的比例、<link>标签中“#”的标签数量占总的<link>标签数量的比例、网页中与原URL域名不同的链接占总的<a>标签链接数的比例、网页中与原URL域名不同的链接占总的<link>标签链接数的比例、网页中<a>标签平均dot数量、网页中<link>标签的平均dot数量;<a>标签中存在“@”的链接平均数量和<link>标签中存在“@”的链接平均数量;
URL的字符特征包括域名、路径、文件和参数的长度、最长词汇长度、“-”或“_”符号个数以及点数的特征信息;
Whois特征包括网页注册、更新、过期时间、是否为私人注册、IP是否会锁定、注册机构、注册人、IP所在子网、IP所在国家或地区、IP自治***号是否存在于已知的黑名单列表中。
作为对本发明基于机器学习的钓鱼网页检测方法的进一步改进:
待检测的URL与钓鱼类词汇的相近度Fsim的计算公式为:
其中,JMj表示钓鱼类词汇与URL词汇集合中的第j个词的Jaccard相似度,n表示钓鱼类词汇集合中元素的个数,k表示待检测网页的URL以模式1切分后产生的URL词汇集合所具有的元素数量;Aj表示URL词汇集合中的第j个词,Bj表示钓鱼类词汇集合中的第j个词。
本发明基于机器学习的钓鱼网页检测方法的技术优势为:
本发明提供了一种基于机器学习的钓鱼网页检测算法,采用了构建网页特征集合,网页过滤技术以及逻辑回归分类算法来实现对钓鱼网页的检测。该检测方法可以有效减少合法网页的检测数量,并实现了对逃逸技术的钓鱼网页的良好检测。
钓鱼网站的检测需要根据适合的业务场景,通过对最新业务数据的更细致分析,提取最各种维度和新的策略来检测,算法如Naive Bayes,SVM,深度学习神经网络的一些算法都是可以进行检测钓鱼网页的。本发明从根本出发,提取多维度的钓鱼网页特征,对新型钓鱼网站攻击的检测具有很好的泛化性,对于监测引擎安全至关重要。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细说明。
图1为词汇集合重构流程示意图;
图2为基于机器学习的钓鱼网页的检测算法的流程示意图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此。
实施例1、基于机器学习的钓鱼网页检测方法,如图1-2所示,包括以下步骤:
S1)、基于搜索引擎的合法网页过滤方法:
首先提取网页Title标签作为搜索的关键字,网页中的Title标签是在Html的Head标签内被用来定义网页文档的标题,因为搜索引擎索引到的内容标题往往是网页Title的内容,因此Title标签里面往往拥有该网页中最为核心的关键词。搜索引擎的内部策略可以帮助我们快速查找到与关键字最相关的合法网页,但并不能对钓鱼网页实现最有效的过滤,因此,我们仅使用搜索引擎检测相关网页是否为合法网页,而是否为钓鱼网页则不做判定,在搜索引擎的帮助下,我们可以减少合法网页的检测时间,进一步提升检测方法实时的检测能力。
具体检测方法是先利用TF-IDF算法获取待测网页的Title文本的关键词,然后将这些关键词作为Google搜索引擎的搜索词,如果待测网页的域名在Google搜索引擎返回结果的前Top N个结果构成的集合中,则可判定该网页是合法网页,否则不能判定其为合法网页,对于不能判定其为合法网页的待测网页再根据其他特征或方法来识别该网页是否为钓鱼网页,该方式可以对待测网页做初步过滤,过滤掉一些对合法网页的检测,这种检测方法不需要训练数据,不需要先验知识,只是通过搜索引擎的过滤能力来过滤掉合法网页的检测。
S2)、基于启发式规则的钓鱼网页检测方法;
对于不合法网页,针对URL混淆技术中,如违反标准的URL命名规范以及隐藏钓鱼攻击目标词等技术手段,可使用匹配字符串的方式检测相关钓鱼网页。
URL的组成部分为:协议://用户名:密码@子域名.域名.顶级域名:端口/文件路径/字符串.文件后缀?参数=值#标志。
本发明首先给出几种切分URL的模式,对合法网页的URL进行切分,而经切分后的URL会产生相应的词汇集合;
模式1以任意非字母、非数字但不包括“_”和“-”的字符号切分URL。
模式2以“/”和“\”作为分割符号的URL切分模式。
模式3以任意非字母、非数字且包括“_”和“-”字符号切分URL。
因为合法网页的URL不存在多个网页标识名的情况,为了更好地检测此类混淆手段,本发明根据世界知名机构(如PayPal、亚马逊、联合包裹服务公司(UPS)和美国银行等各种易被黑客用来伪装的标识名)的网页标识名建立了包含105个钓鱼攻击目标词的词汇集。通过分析钓鱼网页的数据集特征,发现钓鱼网页的URL存在如下的几类异常特征:
(1)多个标识名;
(2)隐藏钓鱼攻击目标词;
(3)违反命名标准;
(4)IP做域名。
一、针对上述多个标识名和隐藏钓鱼攻击目标词的情况本发明提供了如下4种策略进行检测:
(1)URL经模式1切分后,得到经切分后的URL的词汇集合,若在URL路径词汇中存在钓鱼攻击目标词,同时该钓鱼攻击目标词与该URL的各级域名标签均不相同,则判定该网页为钓鱼网页。
(2)URL以模式1切分后,得到经切分后的URL的词汇集合,若同一字符串中存在两个及两个以上不同的钓鱼攻击目标词,则判定该网页为钓鱼网页。
(3)URL以模式1切分后,得到经切分后的URL的词汇集合,经切分后的URL的词汇集合中并不存在钓鱼攻击目标词,但忽略字符串内部的数字字符后,若可发现钓鱼攻击目标词,则判定该网页为钓鱼网页,此策略可有效地检测通过数字字符、符号字符等连接字符串来伪造网页标识名的情况。
(4)URL以模式1切分之后,并未发现钓鱼攻击目标词,然后忽略字符串内部的数字字符后也未发现钓鱼攻击目标词,则重新切分。首先,URL以模式2切分为多个部分,而后在每部分内以模式3切分。同时忽略各部分内的顶级域名词汇,之后,将每部分中索引位置相邻的字符合并(索引位置指的是每部分的切割后相邻的位置),并组成新的URL词汇集合。若新的URL词汇集合中发现钓鱼攻击目标词或钓鱼攻击目标词字符串子串,则判定该网页为钓鱼网页。
对于第(4)种策略词汇集合重构的具体方法如图1所示,顶级域名是不参与URL词汇集合重构,而且针对字符串长度小于4的网页标识名,并不适用第(4)种方法来检测。
二、针对URL的域名组成和位置特征可以提取如下三种策略来检测钓鱼网址;
(1)若存在IP地址作为URL域名的情况(判断URL域名与其IP地址是否一致),则判定该网页为钓鱼网页。
(2)为达到混淆用户相信钓鱼网页的目的,钓鱼攻击者会在URL的非协议字段添加协议字符串,若URL的域名部分、路径部分、文件名部分以及参数部分等非URL协议字段部分中出现协议字段字符串,则判定该网页为钓鱼网页。
(3)若URL的路径部分、文件名部分以及参数部分中存在顶级域名字符串,则判定该网址为钓鱼网址,因为顶级域名不能滥用。
S3)、基于逻辑回归算法的钓鱼网页检测方法
一、DNS质疑度
经验丰富的DNS服务商会注重DNS服务器的安全以保障自己的商业信誉,这类服务商会实时检测服务网站的安全情况,并对恶意网页积极地采取拦截措施。相较于优质的DNS服务商,网络攻击者会优先选取在廉价或免费的DNS服务器上部署钓鱼网页。本发明根据此种情况提出了一种DNS服务器信誉评价方法来评估DNS服务的信誉,为DNS质疑度,DNS信誉值与DNS质疑度成反比。在实际应用中,钓鱼攻击者长无规律地注册新域名,具有一定的突发性。
DNS服务器质疑度计算公式为:
FDi=Pi/Qi (4-1)
其中,FDi为质疑度,Pi表示在PhishTank数据集合中某一DNS服务器的使用频率,Qi为其域名服务器在Yahoo中使用的频率,DNS初始频率即为两个集合所决定。url里包含域名,而域名与ip地址之间是一一对应的,它们之间的转换工作称为域名解析,而域名解析需要由域名解析服务器来完成,而域名解析服务器的使用频率Pi直接相关的就是url所对应的域名解析器dns服务器。
对于Qi值为0,或待检测URL因某些原因而无法正常解析时,其DNS的质疑度计算公式如下:
FDi=Pmax/Qmin (4-2)
其中,Pmax表示在PhishTank数据集合中最大的DNS频率值,Qmin表示在DMOZ数据集合中最小的DNS频率值。本发明中将未记录DNS质疑度的DNS服务器的质疑度设置为0,待判定结束后根据实际情况将其列入所属类别,并重新计算该DNS服务器的质疑度。
除DNS质疑度外,本发明还提取了网页的IP个数、IP、IP子网、自治***号、IP所在国家是否在黑名单中、RETRY值、TTL值、REFRESH值和EXPIRE值特征共10个,分别用VD、F0-1、Fttl、Fretry、Fexpire、Frefresh、Fip_num、FD表示,这10个特征维度构成的特征向量为VD。待检URL的DNS特征向量定义为:
VD=<F0-1,Fttl,Fretry,Fexpire,Frefresh,Fip_num,FD> (4-3)
二、HTML标签属性
(1)Meta。Meta标签提供了Html文档的最基本信息,包含文档字符集,使用语言、作者等信息。当该Meta标签中出现http-equiv=”refresh”的定义时,表示该页面链接进行了重定向。在钓鱼攻击中,攻击者通过重定向技术将用户引致其他网页进行攻击。因此,通过可以计算html中<meta http=”refresh”>类型的标签数量,同时判断跳转链接和原始URL是否在相同的域名下,该特征计算公式如下:
其中Smeta表示网页<metahttp=”refresh”>标签集合,Smeta_domain表示网页内重定向链接域名的词汇集合,Sdomain表示原URL域名部分的词汇集合。FHmate1表示的是该页面是否会进行重定向,当html中<meta http=”refresh”>类型的标签数量为0的时候,网页不会进行重定向,FHmate1取值为0,当网页中<meta http=”refresh”>类型的标签数量大于0时,待测网站会进行重定向,FHmate1为1。FHmate2是判断重定向跳转后的网页是否跟待测网页是同一个域名。当跳转后的网页与待测网页是同一个域名,则FHmate2为0,否则为1。Smeta_domain在源码的meta标签中如果要有重定向是会指出重定向的链接的,解析待测网页html源码的时候是可以提取出来的。
(2)A&Link。A与link是网页HTML中另两个重要的标签类型,<link>标签定义文档与外部资源的关系,<a>标签定义跳转链接,合法的网页链接通常会指向自己的域名,而钓鱼链接为达到混淆目的往往***其他域名下的资源。本发明提取两类标签下的href属性值作为主要检测特征。由于HTTPS是以安全为目标的HTTP通道,一定意义上HTTPS协议的比例可作为检测特征之一,提取该特征公式如下:
其中Count(a_tag),Count(link_tag)分别表示网页中<a>标签与<link>标签个数,Count(a_tag_https),Count(link_tag_https)分别表示<a>标签与<link>标签href属性链接使用的HTTPS协议数量。Fa_https代表待测网页<a>标签href属性链接中使用https协议的链接占总的<a>标签中链接的比例,Flink_https代表在待测网页中<link>标签href属性链接使用https协议的比例。
(3)“#”代表空,当两类标签中出现href=”#”属性字段时,则表示点击相应链接时不会发生跳转,而是返回当前页面,钓鱼网页中通过加入此类标签可以达到混淆的目的,把此特征作为检测特征之一,提取公式如下:
其中Count(a_tag_hashtag),Count(link_tag_hashtag)分别表示网页中<ahref=”#”>标签和<linkhref=”#”>标签的数量。Fa_hashtag表示<a>标签中带“#”的标签数量占总的<a>标签的比例,Flink_hashtag代表<link>标签中“#”的标签数量占总的<link>标签数量的比例。
(4)与href=”#”不同的是href=javascript:void(0)则表示的是个死链接,点击相关链接时不会发生任何跳转,在web相关标准中并不建议使用这种用法,因此本发明中将两类标签中出现此类情况的比例作为检测特征之一,特征提取公式如下:
其中Count(a_tag_javascript),Count(link_tag_javascript)分别表示网页中<a href=”javascript:void(0)”>标签和<link href=”javascript:void(0)”>标签的数量。Fa_javascript代表a标签中href=javascript:void(0)这种死链接占总的a标签的比例,Flink_javascript代表link标签中href=javascript:void(0)这种死链接占总的link标签的比例。
(5)合法网页内部往往指向自身域名下的网页资源,而攻击者则试图增加大量的外部链接提升钓鱼网页的搜索排名和信誉度,提取两类标签中出现此类特征的比例作为检测的维度,公式如下:
其中Count(a_tag_diff_domain),Count(link_tag_diff_domain)分别表示网页中<a>标签和<link>标签中与原URL域名不同的链接数量。Fa_diff_domain表示网页中与原URL域名不同的链接占总的<a>标签链接数的比例,Flink_diff_domain表示的是网页中与原URL域名不同的链接占总的<link>标签链接数的比例。
(6)钓鱼URL域名通常会使用增加域名标签的混淆技术伪装成合法网址,提取相关标签链接的平均dot数量作为检测维度之一,公式如下:
其中Sum(a_domain_dot),Sum(l_domain_dot)分别表示网页中<a>标签和<link>标签链接域名部分的点数总和。Fa_domain_dot表示网页中<a>标签平均dot数量,Fl_domain_dot表示网页中<link>标签的平均dot数量。
(7)钓鱼URL一般会带有一些不常用符号,如“@”,提取相关标签中存在“@”的链接数量作为检测维度之一,公式如下:
其中Sum(a_tag_at),Sum(l_at)分别表示网页中<a>标签和<link>标签链接存在“@”的链接数量总和。Fa_at表示<a>标签中存在“@”的链接平均数量,Flink_at表示<link>标签中存在“@”的链接平均数量。
(8)钓鱼网页中存在伪链接通常会存在隐藏钓鱼目标词(隐藏钓鱼目标词为105个钓鱼攻击目标词的词汇集)的情况,提取相关标签链接中存在隐藏钓鱼目标词的链接作为检测维度之一,公式如下:
其中Sum(a_phish_tar),Sum(l_phish_tar)分别表示网页中<a>标签和<link>标签链接存在隐藏钓鱼目标词的链接数量总和。
最终本发明提取了(1)-(7)的所有特征,并将待检测的URL的HTML特征向量定义为:
VH=<FHmate1,FHmate2,...,Fa_domain_dot,Flink_domain_dot> (4-20)
VH是上面1-8个维度的值构成的特征向量。
三、判定URL中的路径与钓鱼词汇的相似度
钓鱼攻击者常以设备硬件电气信号、***时间、***信息和其他类别信息作为随机序列的种子,并按规律随机产生URL字符串。该类字符串攻击成本相对较低但有良好的攻击效果。利用Jaccard相似度计算随机生成的URL字符序列之间的相似度,本发明中采取的是计算三元词组间的相似度,当待检测的URL字符串与钓鱼攻击目标词的词汇集一致的三元组集合大小达到50%的条件下才计算两者之间的Jaccard相似度(三元组是随机产生URL字符串按3个字符切分为一个词组,这样的三元组构成的集合被定义为三元组集合),否则两者之间的相似度值为0,若待检测的URL的某个域名标签已被列入钓鱼类词汇库中,则相似度为1,相似度计算公式如下:
JM=|A∩B|/|A∪B| (4-21)
其中,||运算符号表示的是字符串的三元词组集合中具有的元素个数;JM是A集合与B集合间的Jaccard相似度,A指的是随机生成的URL字符串构成的三元词组的集合,B指的是钓鱼词汇库中的目标词构成的三元词组的集合。
待检测的URL与钓鱼类词汇的相近度Fsim的计算公式为:
其中,JMj表示钓鱼类词汇与URL词汇集合中的第j个词的Jaccard相似度,n表示钓鱼类词汇集合中元素的个数,k表示待检测网页的URL以模式1切分后产生的URL词汇集合所具有的元素数量。Aj表示URL词汇集合中的第j个词,Bj表示钓鱼类词汇集合中的第j个词。
将待测网页的URL与钓鱼类词汇的平均Jaccard相似度作为一个特征维度,该特征向量定义为:
VS=<Fsim> (4-24)
四、提取URL的字符特征
(1)提取URL中的字符信息熵作为判断URL随机性。URL字符在统计上概率相近,通常表示该条URL是随机批量产生的。针对这类URL提取URL字符串中字母字符、数字字符的信息熵作为网页检测的维度之一,计算公式如下:
其中,为字母字符和数字字符xi在URL字符串中的概率;为字母字符和数字字符xi在URL字符串中的概率,H表示该字符的信息熵。
(2)提取URL的混淆字符信息作为检测特征。以模式3切分URL字符串,获取该URL的词汇列表,计算字符串内部大写字母出现的词汇数量和统计数字字母混合词汇的数量;
(3)字符特征。将URL划分为域名、路径、文件和参数四个部分,并分别提取各部分的长度、最长词汇长度、“-”或“_”符号个数以及点数的特征信息。此外还提取了包括URL长度、路径深度、域名中是否显示网络端口号等信息作为检测的特征维度。URL的字符特征向量可定义为:
VC=<F1,F2,F3,...,Fn> (4-26)
F1、F2、F3、Fn分别代表URL划分为域名、路径、文件和参数四个部分,并分别提取各部分的长度、最长词汇长度、“-”或“_”符号个数以及点数的特征信息和URL长度、路径深度、域名中是否显示网络端口号等信息,Vc表示这些信息构成的特征向量。
五、提取Whois特征
基于攻击者会使用相同信息注册网页的情形,本发明还提取网页注册、更新、过期时间、是否为私人注册、IP是否会锁定、注册机构、注册人、IP所在子网、IP所在国家或地区、IP自治***号是否存在于已知的黑名单列表中的特征(F1,F2,F3,...,F10),共10个。待检测的Whois特征向量定义为:
VW=<F1,F2,F3,...,F10> (4-27)
VW代表F1,F2,F3,...,F10构成的特征集合;
六、逻辑回归分类算法
对于搜索引擎和规则匹配检测无法判定性质的网页,提取其DNS、HTML、字符和WHOIS特征来判断待测网页的性质。将待测URL的特征维度定义如下:
Vurl={VD,VH,VC,VW,VS} (4-28)
VD,VH,VC,VW,VS分别代表DNS、HTML、字符、WHOIS特征和字符间的相似度,Vurl代表VD,VH,VC,VW,VS特征的集合。
针对搜索引擎和规则匹配无法判定性质的网页及其URL提取Vurl,并要利用逻辑回归算法进行检测。逻辑回归算法形式化定义公式如下:
是逻辑回归算法的输入,w、c、C分别是算法计算过程中的参数一、参数二、参数三。
逻辑回归算法的所得结果是将所有的特征值按逻辑回归算法计算后的概率结果,概率结果是一个二分类结果,要么是钓鱼网页要么就不是钓鱼网页。
七、基于机器学习的钓鱼网页的检测算法:
基本的逻辑回归分类器的决策函数为:
逻辑回归分类器进行判断的概率模型为:
P(y|Vurl;θ)=hθ(Vurl)y(1-hθ(Vurl))1-y (2-2)
其中,最大似然函数式(2-3)得出θ,然后将θ带入式(2-1)得到逻辑回归分类器。
hθ(Vurl)为决策函数结果,P(y|Vurl;θ)为概率模型结果,y为判断类别的结果。
特征向量x、回归系数θ
术语1:钓鱼网站。
钓鱼网站是一种网络欺诈行为,指不法分子利用各种手段,仿冒真实网站的URL地址以及页面内容,或利用真实网站服务器程序上的漏洞在站点的某些网页中***危险的HTML代码,以此来骗取用户银行或***账号、密码等私人资料。
术语2:逻辑回归算法
逻辑回归是统计领域机器学习所借用的一种技术,它是二进制分类问题的首选方法,在其基本形式中,使用逻辑回归函数来模拟二进制因变量,是离散选择法模型之一,是社会学、生物统计学、临床、数量心理学、计量经济学、市场营销等统计实证分析的常用方法。
术语3:URL
URL(Uniform/Universal Resource Locator)即统一资源占位符。URL是互联网上标准的资源的地址,具有唯一性。URL的组成部分为:协议://用户名:密码@子域名.域名.顶级域名://端口/文件路径/字符串.文件后缀?参数=值#标志。
术语4:TF-IDF
TF-IDF(英语:term frequency–inverse document frequency)是一种用于资讯检索与文本挖掘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随著它在文件中出现的次数成正比增加,但同时会随著它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。除了TF-IDF以外,互联网上的搜寻引擎还会使用基于连结分析的评级方法,以确定文件在搜寻结果中出现的顺序。
最后,还需要注意的是,以上列举的仅是本发明的若干个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (6)

1.基于机器学习的钓鱼网页检测方法,其特征在于:包括以下步骤:
S1、判断待测网页是否为合法网页,如不是,执行步骤S2;
S2、提取步骤S1所得网页的URL;
以非字母、非数字但不包括“_”和“-”的字符号切分URL,得到经切分后的URL的词汇集合;
若在URL路径词汇中存在钓鱼攻击目标词,同时该钓鱼攻击目标词与该URL的各级域名标签均不相同,则判定该网页为钓鱼网页;
若同一字符串中存在两个及两个以上不同的钓鱼攻击目标词,则判定该网页为钓鱼网页;
若经切分后的URL的词汇集合中并不存在钓鱼攻击目标词,但忽略字符串内部的数字字符后,若可发现钓鱼攻击目标词,则判定该网页为钓鱼网页;
若经切分后的URL的词汇集合并不存在钓鱼攻击目标词,然后忽略字符串内部的数字字符后也未发现钓鱼攻击目标词,则重新切分,新的URL词汇集合中发现钓鱼攻击目标词或钓鱼攻击目标词字符串子串,则判定该网页为钓鱼网页;
如果未判定为钓鱼网页,执行步骤S3;
S3、基于逻辑回归算法的钓鱼网页检测方法,判断步骤2得到网页是合法网页还是钓鱼网页。
2.根据权利要求1所述的基于机器学习的钓鱼网页检测方法,其特征在于:
步骤2中,在经切分后的URL的词汇集合不存在钓鱼攻击目标词,然后忽略字符串内部的数字字符后也未发现钓鱼攻击目标词时的重新切分方法为:
URL以“/”和“\”作为分割符号切分,而后再以在任意非字母、非数字符号切分,同时忽略各部分内的顶级域名词汇;之后,将每部分中索引位置相邻的字符合并,组成新的URL词汇集合;若新的URL词汇集合中发现钓鱼攻击目标词或钓鱼攻击目标词字符串子串,则判定该网页为钓鱼网页。
3.根据权利要求2所述的基于机器学习的钓鱼网页检测方法,其特征在于:
步骤3为:提取步骤2得到网页的特征,基于逻辑回归算法的通过特征判断步骤2得到网页是合法网页还是钓鱼网页。
4.根据权利要求3所述的基于机器学习的钓鱼网页检测方法,其特征在于:
特征包括DNS质疑度属性、HTML标签属性、URL的字符特征、URL中的路径与钓鱼词汇的相似度和Whois特征。
5.根据权利要求4所述的基于机器学习的钓鱼网页检测方法,其特征在于:
DNS质疑度属性包括DNS质疑度、网页的IP个数、IP、IP子网、自治***号、IP所在国家是否在黑名单中、RETRY值、TTL值、REFRESH值和EXPIRE值特征;
HTML标签属性包括该页面是否会进行重定向、重定向跳转后的网页是否跟待测网页是同一个域名、待测网页<a>标签href属性链接中使用https协议的链接占总的<a>标签中链接的比例、待测网页中<link>标签href属性链接使用https协议的比例、<a>标签中带“#”的标签数量占总的<a>标签的比例、<link>标签中“#”的标签数量占总的<link>标签数量的比例、网页中与原URL域名不同的链接占总的<a>标签链接数的比例、网页中与原URL域名不同的链接占总的<link>标签链接数的比例、网页中<a>标签平均dot数量、网页中<link>标签的平均dot数量;<a>标签中存在“@”的链接平均数量和<link>标签中存在“@”的链接平均数量;
URL的字符特征包括域名、路径、文件和参数的长度、最长词汇长度、“-”或“_”符号个数以及点数的特征信息;
Whois特征包括网页注册、更新、过期时间、是否为私人注册、IP是否会锁定、注册机构、注册人、IP所在子网、IP所在国家或地区、IP自治***号是否存在于已知的黑名单列表中。
6.根据权利要求5所述的基于机器学习的钓鱼网页检测方法,其特征在于:
待检测的URL与钓鱼类词汇的相近度Fsim的计算公式为:
其中,JMj表示钓鱼类词汇与URL词汇集合中的第j个词的Jaccard相似度,n表示钓鱼类词汇集合中元素的个数,k表示待检测网页的URL以模式1切分后产生的URL词汇集合所具有的元素数量;Aj表示URL词汇集合中的第j个词,Bj表示钓鱼类词汇集合中的第j个词。
CN201910705624.6A 2019-08-01 2019-08-01 基于机器学习的钓鱼网页检测方法 Pending CN110572359A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910705624.6A CN110572359A (zh) 2019-08-01 2019-08-01 基于机器学习的钓鱼网页检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910705624.6A CN110572359A (zh) 2019-08-01 2019-08-01 基于机器学习的钓鱼网页检测方法

Publications (1)

Publication Number Publication Date
CN110572359A true CN110572359A (zh) 2019-12-13

Family

ID=68773915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910705624.6A Pending CN110572359A (zh) 2019-08-01 2019-08-01 基于机器学习的钓鱼网页检测方法

Country Status (1)

Country Link
CN (1) CN110572359A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111104618A (zh) * 2019-12-19 2020-05-05 秒针信息技术有限公司 一种网页跳转方法及装置
CN112532624A (zh) * 2020-11-27 2021-03-19 深信服科技股份有限公司 一种黑链检测方法、装置、电子设备及可读存储介质
CN112788159A (zh) * 2020-12-31 2021-05-11 山西三友和智慧信息技术股份有限公司 一种基于dns流量和knn算法的网页指纹追踪方法
CN113420239A (zh) * 2021-06-24 2021-09-21 中山大学 一种基于hacker搜索语法的钓鱼站点检测方法
CN113765841A (zh) * 2020-06-01 2021-12-07 中国电信股份有限公司 恶意域名的检测方法和装置
CN114006746A (zh) * 2021-10-26 2022-02-01 深信服科技股份有限公司 一种攻击检测方法、装置、设备及存储介质
CN115186274A (zh) * 2022-09-14 2022-10-14 深圳开源互联网安全技术有限公司 基于iast的安全测试方法及装置
CN113779481B (zh) * 2021-09-26 2024-04-09 恒安嘉新(北京)科技股份公司 诈骗网站的识别方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102790762A (zh) * 2012-06-18 2012-11-21 东南大学 基于url分类的钓鱼网站检测方法
CN108111478A (zh) * 2017-11-07 2018-06-01 中国互联网络信息中心 一种基于语义理解的网络钓鱼识别方法和装置
US10021133B1 (en) * 2014-11-14 2018-07-10 Ciphercloud, Inc. System and method for anti-phishing system
CN108737423A (zh) * 2018-05-24 2018-11-02 国家计算机网络与信息安全管理中心 基于网页关键内容相似性分析的钓鱼网站发现方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102790762A (zh) * 2012-06-18 2012-11-21 东南大学 基于url分类的钓鱼网站检测方法
US10021133B1 (en) * 2014-11-14 2018-07-10 Ciphercloud, Inc. System and method for anti-phishing system
CN108111478A (zh) * 2017-11-07 2018-06-01 中国互联网络信息中心 一种基于语义理解的网络钓鱼识别方法和装置
CN108737423A (zh) * 2018-05-24 2018-11-02 国家计算机网络与信息安全管理中心 基于网页关键内容相似性分析的钓鱼网站发现方法及***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
丁岩: "基于机器学习的钓鱼网页检测方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111104618A (zh) * 2019-12-19 2020-05-05 秒针信息技术有限公司 一种网页跳转方法及装置
CN113765841A (zh) * 2020-06-01 2021-12-07 中国电信股份有限公司 恶意域名的检测方法和装置
CN112532624A (zh) * 2020-11-27 2021-03-19 深信服科技股份有限公司 一种黑链检测方法、装置、电子设备及可读存储介质
CN112532624B (zh) * 2020-11-27 2023-09-05 深信服科技股份有限公司 一种黑链检测方法、装置、电子设备及可读存储介质
CN112788159A (zh) * 2020-12-31 2021-05-11 山西三友和智慧信息技术股份有限公司 一种基于dns流量和knn算法的网页指纹追踪方法
CN112788159B (zh) * 2020-12-31 2022-07-08 山西三友和智慧信息技术股份有限公司 一种基于dns流量和knn算法的网页指纹追踪方法
CN113420239A (zh) * 2021-06-24 2021-09-21 中山大学 一种基于hacker搜索语法的钓鱼站点检测方法
CN113420239B (zh) * 2021-06-24 2023-08-01 中山大学 一种基于hacker搜索语法的钓鱼站点检测方法
CN113779481B (zh) * 2021-09-26 2024-04-09 恒安嘉新(北京)科技股份公司 诈骗网站的识别方法、装置、设备及存储介质
CN114006746A (zh) * 2021-10-26 2022-02-01 深信服科技股份有限公司 一种攻击检测方法、装置、设备及存储介质
CN115186274A (zh) * 2022-09-14 2022-10-14 深圳开源互联网安全技术有限公司 基于iast的安全测试方法及装置

Similar Documents

Publication Publication Date Title
CN110572359A (zh) 基于机器学习的钓鱼网页检测方法
Rao et al. Jail-Phish: An improved search engine based phishing detection system
Verma et al. What's in a url: Fast feature extraction and malicious url detection
Mahajan et al. Phishing website detection using machine learning algorithms
Zhang et al. A domain-feature enhanced classification model for the detection of Chinese phishing e-Business websites
Chu et al. Protect sensitive sites from phishing attacks using features extractable from inaccessible phishing URLs
Xiang et al. Cantina+ a feature-rich machine learning framework for detecting phishing web sites
CN103559235B (zh) 一种在线社交网络恶意网页检测识别方法
Chiew et al. Leverage website favicon to detect phishing websites
US20170359368A1 (en) Identifying malicious identifiers
Wardman et al. High-performance content-based phishing attack detection
CN104077396A (zh) 一种钓鱼网站检测方法及装置
Sánchez-Paniagua et al. Phishing URL detection: A real-case scenario through login URLs
CN108038173B (zh) 一种网页分类方法、***及一种网页分类设备
CN107798080B (zh) 一种面向钓鱼url检测的相似样本集构造方法
CN107888606B (zh) 一种域名信誉度评估方法及***
Tan et al. Phishing website detection using URL-assisted brand name weighting system
Liu et al. An efficient multistage phishing website detection model based on the CASE feature framework: Aiming at the real web environment
Deshpande et al. Detection of phishing websites using Machine Learning
Marchal et al. PhishScore: Hacking phishers' minds
Geng et al. Favicon-a clue to phishing sites detection
Yang et al. Scalable detection of promotional website defacements in black hat {SEO} campaigns
CN112948725A (zh) 基于机器学习的钓鱼网站url检测方法及***
Nowroozi et al. An adversarial attack analysis on malicious advertisement URL detection framework
Mowar et al. Fishing out the phishing websites

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191213