一种不依赖样本的钓鱼网站检测方法转让专利

申请号 : CN201210333169.X

文献号 : CN103685174B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 耿光刚洪博

申请人 : 中国科学院计算机网络信息中心

摘要 :

本发明涉及一种不依赖样本的钓鱼网站检测方法本发明钓鱼网站检测方法,1)根据待检测网页的目标统一资源定位符TargetURL提取得到域名,将所述域名进行PageRank和/或Alexa排名值查询;2)对所述待检测网页进行标题抓取,提取出网页标题字符串,根据所述字符串和钓鱼敏感词进行匹配;3)在搜索引擎上以所述网页标题为查询关键字进行检索;4)查询TargetURL和待测网页标题完全相同的网页集合中对应的域名服务器NS和服务器IP地址是否相同,来判断待检测网站为钓鱼网站。本发明充分利用钓鱼网站的共性特点,通过互联网公开资源(PageRank、Alexa排名、网站在通用搜索引擎中收录和排名情况),不仅克服了钓鱼样本收集难的问题,同时对针对新出现目标的钓鱼有良好的适应检测能力。

权利要求 :

1.一种不依赖样本的钓鱼网站检测方法,其步骤包括:

1)根据待检测网页的目标统一资源定位符TargetURL提取得到域名,将所述域名进行PageRank和/或Alexa排名值查询;

2)对在设定排名范围内的所述待检测网页进行标题抓取,提取出网页标题字符串,根据所述字符串和钓鱼关键词进行匹配;

3)对于匹配的待检测网页,在搜索引擎上以所述网页标题为查询关键字进行检索;

4)若所述搜索引擎返回结果中没有TargetURL且该返回结果中存在与待检测网页标题完全相同的网页集合,则查询所述TargetURL和所述待检测网页标题完全相同的网页集合中对应的域名服务器NS和服务器IP地址是否相同,将不相同的待检测网站判定为钓鱼网站。

2.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,步骤3)还包括对所述TargetURL进行网页抓取并对所述抓取到网页进行解析,判断该网页中是否存在与所述待检测网页标题完全相同的网页集合所指向的域名链接。

3.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述钓鱼关键词通过统计算法自动统计词频获得。

4.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述排名范围是PageRank值大于K和/或Alexa排名值大于M,其中,K、M为可调节参数,K取值为1或2,M取0。

5.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述待检测网页进行抓取在Linux系统下运行Shell命令wget TargetUrl抓取。

6.如权利要求5所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述网页标题的提取方法是对所述抓取得到网页进行字符串匹配,获取标签内容。

7.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述搜索引擎检索所述网页标题时,所述搜索引擎返回结果为前L个,其中L不大于30。

8.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述域名服务器NS和服务器IP地址查询可以通过Linux系统中的dig命令或whois命令或Windows Bind下查询。

9.如权利要求1所述的不依赖样本的钓鱼网站检测方法,其特征在于,所述搜索引擎使用Google或者Bing。

说明书 :

一种不依赖样本的钓鱼网站检测方法

技术领域

[0001] 本发明涉及钓鱼网站的检测方法,具体涉及一种利用钓鱼网站的共性特点,通过互联网公开资源对钓鱼网站进行检测的方法,属于互联网安全领域。

背景技术

[0002] 网络钓鱼,是指通过伪装成与目标网站非常相似的网站,引诱用户访问,并获取收信人在此网站上输入的个人敏感信息的网络犯罪行为。由于电子商务和互联网应用的普及和发展,网络钓鱼造成的损失日益严重。国内最大的安全厂商360安全7月份发布的《2011上半年中国网络安全报告》显示网络钓鱼欺诈成为网络安全的最大威胁。另据国际反钓鱼联盟发布的报告,近年来网络钓鱼攻击的数量大幅上升,寻找有效的钓鱼检测方法变得尤为紧迫。
[0003] 网络钓鱼是指通过伪装成与目标组织的网站非常相似的网站,引诱用户访问,并获取收信人在此网站上输入的个人敏感信息的网络犯罪行为。网络钓鱼作为一种犯罪行为,与现实社会中的流窜作案相似,一个钓鱼网站从建立到消亡往往在几天内,甚至几小时,这一显著特点决定了互联网公开资源(搜索引擎、排名服务等)对钓鱼网站的索引、评价等都在一个极低的范围内。
[0004] 另一方面,钓鱼的本质决定了钓鱼网站需要伪装,从表面上看起来与被钓鱼目标具有高度的相似性,以期以假乱真,从而达到谋求不当利益的目标。这种相似性首先体现在页面的相似性,如果拿网站内容与所有目标网站进行匹配,择需要事先收集所有被钓鱼目标,这是一项复杂的工作,特别是新的钓鱼目标不断出现,使得该项工作更会是无休止的继续。退一步,钓鱼伪装的相似性首先体现在标题相似性上,而这种相似性我们可以借助公开的搜索引擎进行比对,免去了钓鱼目标的收集工作。
[0005] 目前,在检测钓鱼网站的技术领域中主要包括三大类的技术手段:黑名单技术、基于URL特征的检测技术和基于网页内容特征的检测技术。黑名单技术是通过用户举报或评价来维护一个不断更新的钓鱼网站名单列表,从而阻止更多的用户不要访问已发现的钓鱼网站。基于URL特征钓鱼检测,是通过分析URL的元素构成,多辅以注册、解析信息进行钓鱼与否的判断,该方法往往用于初步检测,最终的判定一般也要基于内容。基于网页内容特征的钓鱼检测是通过分析网页与目标网页的内容相似度进行判定的方法。
[0006] 以上三种常用的检测技术:黑名单技术的滞后性是其最大缺陷。基于URL的放方法需要事先收集被钓鱼网站的URL,对新钓鱼目标无能为力。同样,基于内容分析的方法需要目标网页的先验知识和大量的钓鱼样本收集,该方法对针对新目标的钓鱼攻击也无能为力。
[0007] Alexa排名是指网站的世界排名NNT流量,主要分两种:综合排名和分类排名,Alexa提供了包括综合排名、到访量排名、页面访问量排名等多个评价指标信息,大多数人把它当作当前较为权威的网站访问量评价指标。Alexa每三个月公布一次新的网站综合排名。此排名的依据是用户链接数(Users Reach)和页面浏览数(Page Views)三个月累积的几何平均值。
[0008] PageRank是Google排名运算法则(排名公式)的一部分,是Google用来标识网页的等级/重要性的一种方法,是Google用来衡量一个网站的好坏的唯一标准。在揉合了诸如(标题)Title标识和(关键词)Keywords标识等所有其它因素之后,Google通过PageRank来调整结果,使那些更具“等级/重要性”的网页在搜索结果中另网站排名获得提升,从而提高搜索结果的相关性和质量。
[0009] 基于以上情况,本发明提出一种多尺度钓鱼判定方法,该方法不需要任何钓鱼目标网站信息、不需要收集任何钓鱼样本数据,通过Alexa排名和PageRank可以对新出现的针对新目标的钓鱼攻击进行准确检测判定。

发明内容

[0010] 本发明的目是通过分析钓鱼网站的共性,提供一种不依赖于钓鱼样本库和钓鱼目标信息的简单易用,而有准确率高的钓鱼网站检测判定方法。
[0011] 针对现有技术的不足,本发明的技术方案如下:一种不依赖样本的钓鱼网站检测方法,其步骤包括:
[0012] 1)根据待检测网页的目标统一资源定位符TargetURL提取得到域名,将所述域名进行PageRank和/或Alexa排名值查询;
[0013] 2)对在设定排名范围内的所述待检测网页进行标题抓取,提取出网页标题字符串,根据所述字符串和钓鱼关键词进行匹配;
[0014] 3)对于匹配的待检测网页,在搜索引擎上以所述网页标题为查询关键字进行检索;
[0015] 4)若所述搜索引擎返回结果中没有TargetURL且该返回结果中存在与待测网页标题完全相同的网页集合,则查询所述TargetURL和所述待测网页标题完全相同的网页集合中对应的域名服务器NS和服务器IP地址是否相同,将不相同的待检测网站判定为钓鱼网
站。
[0016] 步骤3)还包括对所述TargetURL进行网页抓取并对所述抓取到网页进行解析,判断该网页中是否存在与所述待检测网页标题完全相同的网页集合所指向的域名链接。
[0017] 所述钓鱼关键词通过统计算法自动统计词频获得。
[0018] 所述排名范围是PageRank值大于K和/或Alexa排名值大于M,其中,K、M为可调节参数,K取值为1或2,M取0。
[0019] 所述待检测网页进行抓取在Linux系统下运行Shell命令wget TargetUrl抓取。
[0020] 所述网页标题的提取方法是对所述抓取得到网页进行字符串匹配,获取标签内容。
[0021] 所述搜索引擎检索所述网页标题时,所述搜索引擎返回结果为前L个,其中L不大于30。
[0022] 所述域名服务器NS和服务器IP地址查询可以通过Linux系统中的dig命令或whois命令或Windows Bind下查询。
[0023] 所述搜索引擎使用Google或者Bing。
[0024] 本发明的有益效果:
[0025] 本发明充分利用了钓鱼攻击的最本质特点,简单易用,不仅克服了钓鱼样本收集难的问题,同时对针对新目标的钓鱼有良好的适应检测能力。该方法不利用任何的钓鱼目标信息和钓鱼样本库。该发明的方法,综合利用互联网资源,包括PageRank查询接口、通用搜索引擎和Alexa排名值等,同时对针对新出现目标的钓鱼有良好的适应检测能力,方法易于使用,对待检测目标的URL和页面标题进行分析,从而确定页面是否钓鱼。

附图说明

[0026] 图1为本发明不依赖样本的钓鱼网站检测方法具体实施例的流程示意图。

具体实施方式

[0027] 下面结合附图和具体实施例进一步说明本发明实施例的技术方案。本实施例涉及的搜索引擎,不限于具体哪个,可以为任何通用搜索引擎。本发明随机选择了中国反钓鱼联盟2012年上半年800个钓鱼举报网站和www.dmoz.org上的1300个非钓鱼网站,构建了一个钓鱼数据集。利用该发明的方法进行试验验证,表现出良好的检测性能,其中钓鱼检测的召回率为100%,准确率达到100%,误检率为0,实验结果证明本发明方法的可行性和有效性。
[0028] 本发明通过获取和分析待检测网站的PageRank值、Alexa排名值、搜索引擎网页收录和排名情况等,做出网站钓鱼与否的综合判断。PageRank和Alexa排名在本文中仅仅是一个粗过滤,可以肯定的是:钓鱼网站PageRank值很小,Alexa排名很低或没有排名。
[0029] 图1为本发明不依赖样本的钓鱼网站检测方法具体实施例的流程示意图,如图1所示,本发明钓鱼攻击检测方法包括以下步骤:
[0030] 步骤100、根据待检测网页的统一资源定位符(TargetUrl),提取唯一对应的域名,并基于域名获取PageRank值和Alexa排名值。提取域名指提取目标Url(TargetUrl)的域名部分,例如:“http://item.taobao.com3358.tk/trade/batch payment.htm.asp”的对应域名为“com3358 .tk”。获取PageRank值的公开查询接口为:http://toolbarqueries.google.com/,该查询接口需要通过程序获取,任何语言均可,查询接口是Google和Alexa对外公开的且固定不变。获取Alexa排名值的公开查询方式为:″http://data.alexa.com/data?cli=10&dat=snba&url=+TargetUrl。一般情况下,如果PageRank值大于K,并且Alexa排名值大于M,则认为该网站非钓鱼网站,否则进一步检测进入步骤
200。一般情况下,K取值为1或2,考虑到钓鱼网站的时效性通常在几天内,M的取值0,即网站存在Alexa排名,K、M为可调节参数。
[0031] 步骤200、基于给定的待判定网址,进行网页抓取(可使用Linux系统自带的命令wget),并提取网页标题,比如,一个简单的方法,定位标签,<title>和之间的内容即为标题。匹配标题字符串内是否含有钓鱼敏感别词,如果含有则继续,否则直接判定为非钓鱼网站。该步骤基于钓鱼网站都是以期高仿真模仿目标网站,标题醒目位置含有钓鱼关键词关键词。钓鱼关键词指钓鱼针对的类别词和经常被钓鱼的网站关键词,这些关键词基于钓鱼数据库的统计,统计为高频的词汇,可以由统计算法自动统计词频获得。网络钓鱼是以谋利为目的犯罪活动,针对的类别和目标有限,主要是金融支付类和中奖等。本实施例中的关键词可以为:“银行”、“支付”、“登陆”、“中奖”、“证券”、“团购”、“官方网站”、“官网”、“淘宝”、“腾讯”等。
[0032] 在该步骤中,网页的抓取只抓取待检测页,方法成熟,比如在Linux系统下,运行Shell命令wget TargetUrl即可抓取。网页标题的提取,可以简单对抓取的网页进行字符串匹配,获取标签内的内容,即为网页标题。
[0033] 步骤300、在搜索引擎(可使用Google或者Bing)中以网页标题为查询字进行搜索,获取搜索结果。如果待检测网页出现在搜索引擎中,即搜索返回的结果中含有该页面,则该网页判定为正常网页。如果目标统一资源定位符TargetUrl没有出现在返回结果中,且搜索结果中包含与目标统一资源定位符TargetUrl的标题完全相同的网页集合,则该待判定页面作为可疑页面,进入步骤400,以进一步进行判定。否则判定为合法网站。该步骤的依据为钓鱼网站为了欺骗网民,一般会使用与目标网站系统的标题。比如,钓鱼淘宝的虚假网站,其标题也会显示“淘宝网-淘!我喜欢”。步骤300中仅仅是其中一个指标,通过前面有PageRank和Alexa过滤,明显的好网站已经排除了。
[0034] 步骤300中,以该提取的标题为关键词进行通用搜索的查询,这里查询返回的结果限定取前L个,一般L<30,即一般用户使用通用搜索引擎时最多关注的返回结果数。
[0035] 步骤400、对步骤200抓取的页面进行解析,查看是否存在指向标题完全相同的网页集合所有域名的链接,如果没有,则认定该待判定页面为正常页面,否则进一步进入步骤500,进行进一步判定。
[0036] 该步骤的出发点是钓鱼网站往往含有链向目标网站的链接。
[0037] 步骤500、分别查看TargetUrl和标题完全相同的网页集合对应域名所属NS(Name sever)和服务器IP地址,如果NS或IP相同,则认定该待判定网站非钓鱼,为正常网站,否则判定为钓鱼网站。
[0038] 步骤500是为了过滤正规的某老品牌推出的新品牌网站,防止误判。该步骤中对NS和IP的查询,可以通过Linux系统中的dig命令。或者可以使用Linux下的whois命令或(http://www.isc.org/software/bind/)。,Bind的Windows版本在windows下查询。
[0039] 虽然本发明以实施例揭示如上,但其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,可作任意改动或等同替换,故本发明的保护范围应当以本申请权利要求书所界定的范围为准。