一种多阶段钓鱼网站检测方法与系统的制作方法
【技术领域】
[0001] 本发明涉及信息技术领域,尤其涉及网络安全技术领域,具体涉及一种多阶段钓 鱼网站检测方法与系统。
【背景技术】
[0002] 时至今日,互联网已经成为人们社会生活重要的组成部分,但是伴随着互联网的 不断普及和应用水平的不断提高,除了木马、病毒以及僵尸网络等传统的信息安全威胁以 外,互联网钓鱼欺诈已经逐渐成为网络犯罪分子最主要的攻击手段之一。
[0003] 互联网钓鱼(phishing)是国际通用的新词,去phreak(偷接电话线的人)的前两 个字母ph取代fishing(钓鱼)的f,是以社会工程学(即骗术)结合网络通讯技术的网 络犯罪手段。互联网钓鱼的目的是骗取受害人的网站上的账号密码(网银、网游或支付宝 等)、信用卡资料及个人资料,进行例如网上转账、盗取网游装备、盗取电子邮件信息及盗刷 信用卡等。互联网钓鱼主要通过钓鱼网站(phishingsite)实施,例如,钓鱼网站可伪装为 银行网银页面窃取用户的银行卡卡号和密码,进而转走用户在银行账户内的存款;伪装为 网游的官方网站窃取用户的网游账号,窃取用户在网游内的虚拟货币或装备;伪装成送Q 币的网站,窃取用户的QQ号和密码进而窃取QQ号;伪装成中奖网站,窃取用户个人信息,进 而利用个人信息达到犯罪的目的;还可以通过上述手段获取用户的Email账号和密码,进 而获悉用户电子邮件的往来信息,达到窥探他人隐私,甚至窃取商业机密的犯罪目的。
[0004] 为了防止和打击互联网钓鱼的犯罪行为,维护互联网用户的自身利益和隐私,采 取检测方法出隐藏在互联网中的钓鱼网站是最为有效和直接的技术手段。
[0005] 随着信息技术的不断发展,钓鱼网站越来越多的存在于互联网中,各种各样的钓 鱼网站层出不穷,覆盖各领域各种类的互联网页面。在现阶段,互联网钓鱼欺诈检测多使用 基于统计机器学习的模式分类技术,这是由于近年来人工智能、机器学习理论成功应用于 多个领域的示范效应,基于统计机器学习的钓鱼网站检测已逐渐成为流行的钓鱼网站检测 方法。
[0006] 现有基于统计学习的钓鱼欺诈网站检测所使用的机器学习方法主要有决策树、 Bagging、支持矢量机等,这些通用的机器学习算法被广泛用于文本分类、人脸识别等模式 识别领域,也可以直接用于钓鱼网站检测。基于上述机器学习算法学习的模型若要在实际 互联网中取得好的效果,一个必要条件是训练样本需要覆盖各类互联网页面,然而现有反 钓鱼技术研宄大多基于相对较小的样本集验证算法的有效性,有的样本集甚至只包含几十 个样本,其可推广性存疑。另外,即便样本集真能大到覆盖各类样本、且各类样本符合实际 互联网中的比例,考虑到钓鱼检测属于极度类不均衡问题(即全球亿级的网站中每年仅有 数十万数量级的钓鱼网站),直接使用现有模式分类算法很难取得良好的检测效果。
【发明内容】
[0007] 针对上述问题,本发明提供一种多阶段钓鱼网站检测方法及系统,其核心思想是: 将快速过滤与精准过滤的手段相融合。通过多阶段的快速过滤,将疑似钓鱼网站控制在相 对小的范围内;进一步,通过分析小范围内正负样本的统计特征,训练精准判定模型。
[0008] 本发明的目的之一在于提供一种多阶段钓鱼网站检测方法,包括以下步骤:
[0009] 1)选取一待检测范围内的网站进行快速过滤,排除其中的明显非钓鱼网站;
[0010] 2)提取进行所述快速过滤时所用的多维度特征;
[0011] 3)在训练集上使用上述多维度特征,对快速过滤后的余下范围内的网站进行精确 判定,判断其是否为钓鱼网站。
[0012] 进一步地,步骤1)所述对互联网中的待检测网站进行快速过滤包括:
[0013] 1-1)利用品牌主机和/或域名白名单进行第一层过滤;
[0014] 1-2)利用登陆框、敏感词及版权信息进行第二层过滤;
[0015] 1-3)利用网站相关特征进行第三层过滤。
[0016] 进一步地,步骤1-1)中,所述第一层过滤用以快速排除正常的品牌网站,保障重 点网站的快速访问。
[0017] 进一步地,步骤1-2)中,所述敏感词包括银行、信用卡、支付、中奖、登录及密码。
[0018] 进一步地,步骤1-2)中,所述第二层过滤采用贝叶斯过滤方式。
[0019] 进一步地,步骤1-3)中,所述网站相关特征包括PageRank、域名注册时间及 favicon〇
[0020] 进一步地,步骤2)中所述精确判定包括:通过分析余下范围内正负样本的统计特 征,训练一精准判定模型。
[0021] 进一步地,所述正负样本的统计特征包括现有统计钓鱼检测特征、DNS注册和解析 特征、及品牌元素特征。
[0022] 进一步地,步骤2)所述中精准判定模型通过易混淆数据集进行训练。
[0023] 本发明的另一目的在于提供一种一种多阶段钓鱼网站检测系统,包括:
[0024] -快速过滤模块,用以选取一范围内的待检测网站进行快速过滤,排除其中的明 显非钓鱼网站;
[0025] -精确判定模块,用以对快速过滤后的余下范围内的待检测网站进行精确判定。
[0026] 进一步地,所述快速过滤模块包括:
[0027] 一第一过滤模块,用以利用品牌域名库和/或域名白名单进行第一层过滤;
[0028] 一第二过滤模块,用以利用敏感词进行第二层过滤;
[0029] -第三过滤模块,用以利用网站相关特征进行第三层过滤。
[0030] 本发明的方法和系统分为多个阶段判定待检测范围内的网站是否为钓鱼网站,能 够快速对广大的非钓鱼网站进行过滤,通过前阶段的多层快速过滤,将疑似钓鱼控制在相 对小的范围内;同时通过精准判定,利用多维度特征,训练分类模型,对疑似钓鱼网站进行 精准判定。即提升了钓鱼网站检测的效率,又准确的判定钓鱼网站。不仅有效克服了钓鱼 网站检测作为极度类不均衡检测无法取得良好效果的缺陷,而且大大加速了钓鱼网站检测 的速度,适合在线应用。
【附图说明】
[0031] 图1为本发明所述钓鱼欺诈检测问题类不均衡示意图。
[0032] 图2为本发明的多阶段钓鱼网站检测方法工作流程图。
[0033] 图3为本发明的系统的模块组成示意图。
【具体实施方式】
[0034] 基于模式分类的钓鱼检测方法取得好的效果的一个必要前提是训练样本要足够 丰富,即覆盖各类Web页面。然而,实际互联网环境中钓鱼网站检测问题属于极度类不均衡 问题,如图1所示,该图中心的黑斑表示钓鱼网站,灰色的圆圈表示非钓鱼网站。
[0035] 现有的基于统计学习的钓鱼检测方法和策略均未考虑该事实,对于所构建的测试 数据集的覆盖面和合理性缺乏必要说明。本发明针对以上情况,设计分层检测策略,即多阶 段钓鱼检测。该策略的核心是合理设计每一层的过滤规则,以达到提升检测效率和准确率 的目的。为了达到该目的,检测策略的前几个阶段聚焦在对检测效率的提升,即能够快速排 除互联网上占绝大多数的明显非钓鱼网页,即去除掉图1所示黑圈外的网站,将疑似钓鱼 缩小到黑圈内;进一步,在后续阶段对黑圈内的疑似钓鱼进行重点判定,以确保高准确率和 低误检率。
[0036] 以下,结合附图对本发明的多阶段钓鱼网站检测方法进行具体说明,本发明的方 法适用的待检测范围可针对一个网站集合,本发明不限定该集合大小,可以是整个互联网 的网站集合。如图2所示:
[0037] 在本发明的一实施例中,多阶段钓鱼网站检测方法包括快速过滤和精确判定两个 大的阶段,其中快速过滤通过一 1决速过滤模块实现,精确判定通过一精确判定模块实现。运 行环境为:软件环境不限于Windows或Unix系统,可以采用任一常用开发语言,比如C++、 Java、Perl等。硬件环境也不做特别限定,可以为普通个人电脑,也可以是常用服务器。
[0038] 与传统的单阶段钓鱼检测方法相比,本发明执行的三个阶段的快速过滤,可以高 效的排除掉互联网上占绝大多数的非钓鱼网站,只有少量需要精准判定的网站进入最后的 精准分类阶段。高效率对于钓鱼检测而言至关重要。
[0039] 快速过滤在本实施例中包括三个具体的阶段,首先第一阶段是利用品牌域名库和 域名白名单进行第一层过滤,以快速排除正常的品牌网站,考虑到这些网站每日拥有极大 的访问需求,该层过滤可以保障重点网站的快速访问。
[0040] 第二阶段是登陆框、敏感词及版权等过滤,即第二层过滤,敏感词包含且不限于: "银行、信用卡、支付、中奖、登录、密码"等,可根据钓鱼网站类型的增加进行更新设置。第二 层过滤采用贝叶斯过滤,又称贝叶斯分类,相关工作原理本领域技术人员应普遍公知,在此 不再赘述。通过该第二层过滤的步骤,绝大多数普通网页将被过滤掉,将大大提升总体检测 效率。
[0041] 第三阶段对包含相关敏感词的页面进行进一步判定,该阶段基于 PageRank(PageRank[ThePageRankCitationRanking:BringingOrdertotheWeb; Page,LawrenceandBrin,SergeyandMotwani,RajeevandWinograd,Terry:technical Report.StanfordInfolab; 1999]是LarryPage提出的一种网页排名算法。其基本思想 为:与不流行网站相比,一个流行网站的特征是连接到它的流
行网站较多。这种直观思想包 括两个方面:链接到一个网站的网站数目越多,这个网站越流行;链接到一个网站的网络 流行度越高,这个网站越流行。也就是说,一个网站的流行度与链接到该网站的网站数目和 链接到该网站的流行度成正比)、域名注册时间和favicon(收藏夹图标,就是出现在浏览 器地址栏左侧的那个小图标,也称为网站头像。根据浏览器的不同,favicon显示也有所区 另1J:在大多数主流浏览器如FireFox和InternetExplorer(5. 5及以上版本)中,favicon 不仅在收藏夹中显示,还会同时出现在地址栏上,这时用户可以拖曳favicon到桌面以建 立到网站的快捷方式。)等特征,第三阶段判定基于这样的原则:正常品牌网站往往拥有高 PageRank、且所使用域名注册时间大于K年(比如大于3年),以及往往拥有仿冒favicon, 而钓鱼网站则恰恰相反,也就是说,如经过第一层过滤和第二层过滤后,余下范围内的网站 如果不具有高PageRank、域名注册时间较短和/或不用有防冒favicon,则将其判定为疑似 钓鱼网站。
[0042] 以上第二阶段和第三阶段,均利用少量几个特征训练简单分类器,即可实现。能够 快速将大量的非钓鱼网站排除到检测范围之外。不仅提高检测效率,且节省硬件及软件资 源。
[0043] 接下来是精准检测判定阶段:利用现有统计钓鱼检测中的丰富特征(URL字符、标 题、D0M树、搜索引擎排名、登陆框等)会同一系列DNS注册和解析特征、品牌元素特征等,在 易混淆数据集上训练精确判定模型,举例而言,该混淆数据集可以是图1中黑圈内的样本 (网站)组成的数据集,以开展钓鱼与否的最终判定。另外,模型训练是模式识别、机器学 习领域,特别是监督学习领域公知的技术,即由训练资料中学到或建立一个模式,可参见: http: //zh.wikipedia.org/wiki/%E7 % 9B% 91 %E7 % 9D%A3 %E5 %AD%A6 %E4 % B9 %AO,在此不再赘述。
[0044] 如图3所示,为本发明一实施例中多阶段钓鱼网站检测系统的模块组成示意图, 该系统包括:
[0045] 快速过滤模块,用以选取一范围内的待检测网站进行快速过滤,排除其中的明显 非钓鱼网站;包括:
[0046] 第一过滤模块,用以利用品牌域名库和/或域名白名单进行第一层过滤,包括;品 牌域名过滤模块及主机白名单过滤模块;
[0047] 第二过滤模块,用以利用敏感词进行第二层过滤,包括:登录框检测模块,敏感词 过滤模块;
[0048] 第三过滤模块,用以利用网站相关特征进行第三层过滤,包括:PageRank获取模 块,域名注册信息获取模块及favicon获取与匹配模块等。
[0049] 精确判定模块,用以对快速过滤后的余下范围内的待检测网站进行精确判定,包 括:
[0050] 多维度特征提取模块,用以提取包括且不限于上述三个过滤模块使用到的多维度 特征:
[0051] 域名注册特征:网站所使用域名的注册时长;
[0052]Logo特征:疑似钓鱼网站是否含有品牌Logo;
[0053]favicon特征:疑似钓鱼网站是否含有品牌Favicon;
[0054]PageRank特征:网站所使用域名的PageRank值;
[0055] 登陆框特征:网站是否含有登陆框;
[0056] 敏感词特征:网站是否含有"银行"、"支付"、"密码"、"中奖"等关键词;
[0057] 版权声明特征:网站是否含某品牌的copyright声明;
[0058] Https特征:网站是否使用Https协议。
[0059] 精确判定模块,在训练集上使用上述多维度特征,训练支持向量机【https: // en. wiki pedia. org/wiki/Support_vector_machine】、决策树【https://en. wikipedia. org/wiki/Decision_tree】等分类器,获得分类模型,该模型对疑似网站进行判定。具 体模型训练和分类判定可参照https ://en. wikipedia. org/wiki/Statistical_ classification。
[0060] 由上述,本发明的多阶段钓鱼检测方法和系统,以期望从检测效率和鲁棒性两个 层面提升基于统计机器学习的钓鱼网站检测性能。通过多阶段过滤,快速过滤步骤高效过 滤绝大多数的非钓鱼网站,极大解决了现有钓鱼检测方法需要提取大量特征综合判定耗时 的缺陷。能够兼顾检测效率和准确性,既适用用于大规模服务端处理,也适用于浏览器插件 等客户端应用。以下以表格形式说明本发明的方法和系统与现有技术相比,在钓鱼网站检 测性能上的差异:
[0062] 本发明与现有技术的钓鱼网站检测性能对比表
[0063] 上述表格中,现有技术一的钓鱼网站检测方法为:启发式钓鱼检测方法,利用一些 列启发式规则对钓鱼进行判定,该方法需要人工设置启发式参数,钓鱼者可以较容易避开 规则,这决定了启发式规则方法往往不适合快速变化的互联网环境,特别是由于该方法完 全不适合新出现的钓鱼模式发现,局限性明显。
[0064] 上述表格中,现有技术二的钓鱼网站检测方法为:基于统计机器学习的单阶段钓 鱼检测方法。该类方法避免了启发式规则方法参数设置容易被钓鱼者避开的缺陷,可以较 容易的适应多种钓鱼的判定,但高准确率模型的构建需要提取大量的特征,特征提取阶段 耗时长,不适用于时间要求高的在线检测。
[0065] 需要说明的是,虽然本实施例中将多阶段钓鱼网站检测描述为上述四个阶段,但 实际上,本领域技术人员可根据网站相关特征的有效性及提取复杂性等进行调整、测试,直 至获得最适合当前网络环境的钓鱼检测策略。也就是说,本发明的方法不限于上述四个阶 段,可以根据实际情况增加阶段或缩小阶段数,例如:可以将第二和第三阶合并为一个阶 段;或者例如可以在第一和第二阶段中间加入URL相似性过滤阶段(钓鱼网站的URL往往 包含钓鱼目标的品牌字符串)等。诸如上述的调整均符合本发明的技术构思,应在本发明 的范围之内,本发明的保护范围应以权利要求书所界定为准。
【主权项】
1. 一种多阶段钓鱼网站检测方法,包括以下步骤: 1) 选取一待检测范围内的网站进行快速过滤,排除其中的明显非钓鱼网站; 2) 提取进行所述快速过滤时所用的多维度特征; 3) 在训练集上使用上述多维度特征,对快速过滤后的余下范围内的网站进行精确判 定,判断其是否为钓鱼网站。2. 如权利要求1所述的多阶段钓鱼网站检测方法,其特征在于,步骤1)所述对互联网 中的待检测网站进行快速过滤包括: 1-1)利用品牌主机和/或域名白名单进行第一层过滤; 1-2)利用登陆框、敏感词及版权信息进行第二层过滤; 1-3)利用网站相关特征进行第三层过滤。3. 如权利要求2所述的多阶段钓鱼网站检测方法,其特征在于,步骤1-1)中,所述第一 层过滤用以排除正常的品牌网站。4. 如权利要求2所述的多阶段钓鱼网站检测方法,其特征在于,步骤1-2)中,所述敏感 词包括银行、信用卡、支付、中奖、登录及密码。5. 如权利要求2所述的多阶段钓鱼网站检测方法,其特征在于,步骤1-2)中,所述第二 层过滤采用贝叶斯过滤方式。6. 如权利要求2所述的多阶段钓鱼网站检测方法,其特征在于,步骤1-3)中,所述网站 相关特征包括PageRank、域名注册时间及favicon。7. 如权利要求1所述的多阶段钓鱼网站检测方法,其特征在于,步骤3)中所述精确判 定包括:通过分析余下范围内正负样本的统计特征,训练一精准判定模型。8. 如权利要求7所述的多阶段钓鱼网站检测方法,其特征在于,所述正负样本的统计 特征包括现有统计钓鱼检测特征、DNS注册和解析特征、及品牌元素特征。9. 一种一种多阶段钓鱼网站检测系统,包括: 一快速过滤模块,用以选取一范围内的待检测网站进行快速过滤,排除其中的明显非 钓鱼网站; 一多维度特征提取模块,用以提取所述快速过滤模块进行快速过滤时所用的多维度特 征; 一精确判定模块,用以在训练集上使用上述多维度特征,对快速过滤后的余下范围内 的待检测网站进彳丁精确判定。10. 如权利要求9所述的多阶段钓鱼网站检测系统,其特征在于,所述快速过滤模块包 括: 一第一过滤模块,用以利用品牌域名库和/或域名白名单进行第一层过滤; 一第二过滤模块,用以利用敏感词进行第二层过滤; 一第三过滤模块,用以利用网站相关特征进行第三层过滤。
【专利摘要】本发明提供一种多阶段钓鱼网站检测方法及系统,其核心思想是:将快速过滤与精准过滤的手段相融合。通过多阶段的快速过滤,将疑似钓鱼网站控制在相对小的范围内;进一步,通过分析小范围内正负样本的统计特征,训练精准判定模型。本发明的方法,包括以下步骤:选取一待检测范围内的网站进行快速过滤,排除其中的明显非钓鱼网站;对快速过滤后的余下范围内的网站进行精确判定,判断其是否为钓鱼网站。本发明的系统,包括:一快速过滤模块,用以选取一范围内的待检测网站进行快速过滤,排除其中的明显非钓鱼网站;一精确判定模块,用以对快速过滤后的余下范围内的待检测网站进行精确判定。
【IPC分类】G06F21/55
【公开号】CN104899508
【申请号】CN201510337127
【发明人】耿光刚, 李晓东
【申请人】中国互联网络信息中心
【公开日】2015年9月9日
【申请日】2015年6月17日