一种移动互联网钓鱼网站检测方法及装置与流程

文档序号:16686309发布日期:2019-01-22 18:21阅读:176来源:国知局
一种移动互联网钓鱼网站检测方法及装置与流程

本发明涉及信息安全技术领域,尤其涉及移动互联网钓鱼网站检测方法及装置。



背景技术:

随着互联网的逐渐普及,利用社会工程和技术欺骗制作钓鱼网站以获取个人身份数据或金融账号的情况逐渐增多,网钓者可利用个人数据明细以受害者姓名创造假账号,以便进行各种形式的诈骗,造成无法估量的经济损失,网络钓鱼已经成为网络安全的重大威胁。

面对网络钓鱼的手段不断翻新,反钓鱼者研究了一系列识别钓鱼url的方法,并且把信息收集下来(比如,钓鱼网页上有模拟输入银行卡号的钓鱼信息),作为某些安全软件或插件初步检测网络钓鱼的基础。然而,针对新兴的钓鱼方法,现有技术无法完全奏效。

当前比较棘手的移动互联网反钓鱼技术包括以下内容:为了避免被现有的安全检测软件发现,移动互联网钓鱼网站一般会对pc平台展示空白页面,而在移动平台展示真实的仿冒网站,也即移动互联网的钓鱼网站不允许pc访问,常用的pc平台检测钓鱼网站的方法失效。当然,通过人工的方式对同一url在移动终端和pc端的页面信息进行分析比较,以识别钓鱼url,但是这种方式效率极低,可操作性差。有鉴于此,实有必要提出一种移动互联网钓鱼网站检测方法及装置。



技术实现要素:

面对上述问题,本发明提出一种移动互联网钓鱼网站的检测方法及装置,能对抗现有的移动互联网反钓鱼技术,即便同一钓鱼url以不同的页面信息在移动终端和pc端上显示,也能被自动识别出来,检测效率高且准确率高。

本发明公开了一种移动互联网钓鱼网站的检测方法,包括以下步骤:

分别获取移动终端和pc端上同一url的截屏文件;

计算各截屏文件之间的相似度,若相似度满足阈值要求,则判断该url为疑似钓鱼网站。

进一步的,获取移动终端和pc端上同一url的截屏文件的具体方法包括:创建一个主进程,用于管理同一url任务在不同平台截屏的子进程,其中,每个子进程用于模拟一个平台对该url进行访问,并对得到的网站页面进行截屏,生成截屏文件。

进一步的,构造不同平台的方法包括:修改httpheader的请求头部分的user-agent的内容。

进一步的,对各平台访问同一url得到的网站页面进行统一渲染后再进行截屏。

进一步的,计算各截屏文件之间的相似度的方法包括:dhash算法、phash算法、sift算法。

一种移动互联网钓鱼网站的检测装,包括模拟访问截屏模块及判断模块,其中:

所述模拟访问截屏模块,用于分别获取移动终端和pc端上同一url的截屏文件;

所述判断模块,用于计算各截屏文件之间的相似度,若相似度满足阈值要求,则判断该url为疑似钓鱼网站。

进一步的,所述模拟访问截屏模块获取移动终端和pc端上同一url的截屏文件的具体方法包括:创建一个主进程,用于管理同一url任务在不同平台截屏的子进程,其中,每个子进程用于模拟一个平台对该url进行访问,并对得到的网站页面进行截屏,生成截屏文件。

进一步的,所述模拟访问截屏模块构造不同平台的方法包括:修改httpheader的请求头部分的user-agent的内容。

进一步的,所述模拟访问截屏模块还用于在截屏前对各平台访问同一url得到的网站页面进行统一渲染。

进一步的,所述判断模块计算各截屏文件之间的相似度的方法包括:dhash算法、phash算法、sift算法。

本发明与现有技术相比的有益效果:本发明能统一管理多个子进程,以实现同一url在移动终端和pc端自动化的批量检测,能和现有的移动互联网反钓鱼检测手段做对抗,即便同一移动钓鱼url以不同的页面信息在不同平台上显示,也能被高效的截屏文件相似度比较算法自动识别出来,检测效率高且准确率高。

附图说明

图1为一种移动互联网钓鱼网站检测方法的流程图。

图2为在另一些实施例中,一种移动互联网钓鱼网站检测方法的流程图。

图3为图2所示方法获取移动终端和pc端上同一url的截屏文件的原理示意图。

图4为一种移动互联网钓鱼网站检测装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。

在一些实施例中,如图1所示,移动互联网钓鱼网站检测方法包括以下步骤:

s101,分别获取移动终端和pc端上同一url的截屏文件。

具体的,可以包括以下步骤:使用脚本创建一个主进程,该主进程用于管理同一个url任务在不同平台截屏的子进程,其中,每个子进程用于模拟一个平台对该url进行访问,并对得到的网站页面进行截屏,生成截屏文件。

可以理解的,目前移动终端包括安卓系统平台、ios系统平台等,移动终端pc端包括linux系统平台、windows系统平台等不同平台。

生成截屏文件的方法很多,比如利用cutycapt、phantomjs、screenshooter等截屏工具。

可以理解的,如果移动互联网url是安全的,那么分别在移动终端和pc端不同平台同时访问一个url所获得的页面情况应该是基本一致的,至少应该包含相同的元素,否则就有可能为钓鱼url,是钓鱼者故意采用的反钓鱼技术。

s102,计算各截屏文件之间的相似度,若相似度满足阈值要求,则判断该url为疑似钓鱼网站。

为了避免大量的人工比对造成效率低下的问题,可以采用dhash、phash,sift等算法进行图像相似度比较。以dhash算法为例,计算同一url分别在pc端和移动终端的截屏文件的dhash值,并利用截屏文件的dhash值计算它们的hammingdistance,根据hammingdistance占dhash总长度的百分比作为判断基础,定义一个阈值,若高于阈值,判断此移动互联网url为疑似钓鱼网站。比如针对现有的移动终端反钓鱼策略,在pc端访问该url,呈现很少内容或空白的网页;在移动终端访问时,却呈现完整的钓鱼信息,两者几乎完全不相同,可以初步判断此移动互联网url为疑似钓鱼网站。

当然,为了提高检测准确度,还需要结合其他手段进一步判断此移动互联网url是否为钓鱼网站。

本实施例能统一管理多个子进程,以实现同一移动url在移动终端和pc端自动化的批量检测,并且能和现有的反钓鱼检测手段做对抗,即便同一移动钓鱼url以不同的页面信息在移动终端和pc端上显示,也能被高效的截屏文件相似度比较算法自动识别出来,检测效率高且准确率高。

更具体的,在一些实施例中,结合图2,移动互联网钓鱼网站检测方法包括以下步骤:

s201,获取移动终端和pc端上同一url的截屏文件。

具体的,结合图3所示,s2011,创建多个主进程,每个主进程用于管理一个url任务在不同平台截屏的子进程。

根据实际需求,可以利用脚本创建多个主进程,假设现在要同时检测三个url是否为钓鱼网站,则需要对应创建了3个主进程,主进程1用于管理目标url为“a.com”的任务,主进程2用于管理目标url为“b.com”的任务,主进程3用于管理目标url为“c.com”的任务。

s2012,在每个主进程内创建多个子进程,每个子进程用于模拟一个平台对该url进行访问。

多个子进程访问同一url也即模拟移动终端和pc端访问同一url的方法很多,在本实施例中,通过修改httpheader请求头的user-agent来构造不同操作系统平台,利用user-agent设置还可以构造不同浏览器对同一url的访问。比如,“user-agent”的内容设置为“mozilla/5.0(windows;u;windowsnt5.2)applewebkit/525.13(khtml,likegecko)chrome/0.2.149.27safari/525.13”表示模拟pc端windows系统平台使用chrome浏览器请求目标url。

而“user-agent”的内容设置为“mozilla/5.0(linux;u;android4.0.3;zh-cn;m032build/iml74k)applewebkit/534.30(khtml,likegecko)version/4.0mobilesafari/534.30”则可以表示在移动终端安卓系统平台使用原生浏览器请求目标网页。

即pc端和移动终端均可以通过修改user-agent模仿不同的系统和浏览器进行url的模拟请求。

s2013,每个子进程对得到的网站页面进行截屏,生成截屏文件。

在模拟完一个平台对目标url的访问,子进程还对得到的网站页面进行截屏,进行截屏的方法很多,如cutycapt这样的截屏工具,在子进程中执行如下命令即可:

cutycapt--user-agent="mozilla/5.0(iphone;cpuiphoneos9_1likemacosx)applewebkit/601.1.46(khtml,likegecko)version/9.0mobile/13b143safari/601.1"–url="http://xxx.com"–out="/tmp/xxx.iphone.gif"。本命令实现了在移动终端iphone访问"xxx.com",并把截屏文件保存在"/tmp/xxx.iphone.gif"中。

又如cutycapt--user-agent="mozilla/5.0(linux;android6.0;nexus5build/mra58n)applewebkit/537.36(khtml,likegecko)chrome/48.0.2564.23mobilesafari/537.36"–url="xxx.com"–out="/tmp/xxx.nexus5.gif"。实现了在移动终端的安卓系统访问"xxx.com",并把截屏文件保存在"/tmp/xxx.nexus5.gif"中。

再如cutycapt--user-agent="mozilla/5.0(windowsnt10.0;wow64)applewebkit/537.36(khtml,likegecko)chrome/49.0.2623.108safari/537.36"–url="xxx.com"–out="/tmp/xxx.pc.gif"。实现了在pc端的windows系统访问"xxx.com",并把截屏文件保存在"/tmp/xxx.pc.gif"中。

为了避免不同渲染造成的网站页面内容不一致而影响检测结果,优选对各平台得到的网站页面进行统一渲染,再对各平台得到的网站页面进行截屏。渲染包括取得网页的内容(html、js、xml、图象等等),进行信息整理(例如加入css等)以及计算网页的显示方式然后输出。

在本实施例中,也可以采用phantomjs实现在不同平台访问同一url,并生成截屏文件的目的。phantomjs是基于webkit的服务器端javascriptapi,特点是具有webkit内核,可以进行dom处理、js解析、css渲染等功能,平台适应性较好,支持windows、linux、mac,同时也能作为截屏工具使用。

当然,为了提高准确率,在一些实施例中,还可以进行了以下步骤:

s2014,检查截屏文件是否成功。

根据子进程传递的结束信号(zombie信号),检查截屏文件是否成功,如果成功,就结束主进程,任务结束;否则,还需重新fork出子进程进行一定次数的重试,并在成功之后退出主进程。

s202,计算各截屏文件之间的相似度,若相似度满足阈值要求,则判断该url为疑似钓鱼网站。

可以采用dhash、phash,sift等算法进行图像相似度比较。以phash算法为例,计算同一url分别在pc端和移动终端的截屏文件的64位指纹,假设不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片,也即初步判断此移动互联网url为疑似钓鱼网站。

本实施例能统一管理多个进程,以实现多个url在移动终端和pc端的批量检测,能和现有的移动互联网反钓鱼检测手段做对抗,即便同一移动钓鱼url以不同的页面信息在移动终端和pc端上显示,也能被自动识别出来,检测效率高且准确率高。

本发明还公开了一种移动互联网钓鱼网站检测装置10,如图4所示,该检测装置10包括模拟访问截屏模块11及判断模块12,其中:

模拟访问截屏模块11,用于获取移动终端和pc端上同一url的截屏文件。

具体的,模拟访问截屏模块11的工作过程包括:使用脚本创建一个主进程,该主进程用于管理同一个url任务在不同平台截屏的子进程,其中,每个子进程用于模拟一个平台对该url进行访问,并对得到的网站页面进行截屏,生成截屏文件。目前移动终端包括安卓系统平台、ios系统平台等,移动终端pc端包括linux系统平台、windows系统平台等,可以通过修改httpheader的请求头部分的user-agent的内容等方式来模拟不同平台。生成截屏文件的方法很多,比如利用cutycapt、phantomjs、screenshooter等截屏工具。

可以理解的,如果url是安全的,那么分别在移动终端和pc端不同平台同时访问一个url所获得的页面情况应该是基本一致的,至少应该包含相同的元素,否则就有可能为钓鱼url,是钓鱼者故意采用的反钓鱼技术。

当然,为了避免不同渲染造成的网站页面内容不一致而影响检测结果,所述模拟访问截屏模块11还用于在截屏前对各平台访问同一url得到的网站页面进行统一渲染。优选对各平台得到的网站页面进行统一渲染,进一步的,所述模拟访问截屏模块构造的方法包括:

判断模块12,用于计算各截屏文件之间的相似度,若相似度满足阈值要求,则判断该url为疑似钓鱼网站。

为了避免大量的人工比对造成效率低下的问题,可以采用dhash、phash,sift等算法进行图像相似度比较。以dhash算法为例,计算同一url分别在pc端和移动终端的截屏文件的dhash值,并利用截屏文件的dhash值计算它们的hammingdistance,根据hammingdistance占dhash总长度的百分比作为判断基础,定义一个阈值,若高于阈值,判断此移动互联网url为疑似钓鱼网站。比如在pc端访问该url,呈现很少内容或空白的网页;在移动终端访问时,却呈现完整的钓鱼信息,两者几乎完全不相同,可以初步判断此移动互联网url为疑似钓鱼网站。

移动互联网钓鱼网站检测装置10的各模块的工作过程可以参考本说明书移动互联网钓鱼网站检测方法的各实施例,在此不再赘述。

本实施例能统一管理多个子进程,以实现同一url在移动终端和pc端自动化的批量检测,并且能和现有的反钓鱼检测手段做对抗,即便同一钓鱼url以不同的页面信息在移动终端和pc端上显示,也能被高效的截屏文件相似度比较算法自动识别出来,检测效率高且准确率高。

本发明中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。

上述说明示出并描述了本发明的若干实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1