首页> 中国专利> 基于逃逸行为分析的暗链检测方法及装置

基于逃逸行为分析的暗链检测方法及装置

摘要

本发明提供了一种基于逃逸行为分析的暗链检测方法及装置,所述方法包括:获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码;当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码;当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比;当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。缓解了现有暗链检测技术中存在的检测结果的准确性不高的技术问题,达到了提高暗链检测结果准确性的技术效果。

著录项

  • 公开/公告号CN107784107A

    专利类型发明专利

  • 公开/公告日2018-03-09

    原文格式PDF

  • 申请/专利权人 杭州安恒信息技术有限公司;

    申请/专利号CN201711043173.1

  • 发明设计人 陈建勇;范渊;

    申请日2017-10-31

  • 分类号G06F17/30(20060101);

  • 代理机构11371 北京超凡志成知识产权代理事务所(普通合伙);

  • 代理人郭新娟

  • 地址 310000 浙江省杭州市滨江区通和路68号中财大厦15层

  • 入库时间 2023-06-19 04:42:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-30

    授权

    授权

  • 2020-05-05

    著录事项变更 IPC(主分类):G06F16/955 变更前: 变更后: 申请日:20171031

    著录事项变更

  • 2018-04-03

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20171031

    实质审查的生效

  • 2018-03-09

    公开

    公开

说明书

技术领域

本发明涉及网络安全技术领域,尤其是涉及一种基于逃逸行为分析的暗链检测方法及装置。

背景技术

暗链是一种特殊的网页超链接,通过比较隐蔽的技术手法植入于网站代码中,通常无法直接通过浏览器查看到,主要用途是利用搜索引擎以及网站相互引用来获得较高的搜索排名和较大的网站访问流量。暗链恶意地将自己网站链接挂接到别人的网站上,欺骗搜索引擎提升自己网站的排名。

暗链检测领域现有的技术主要包括:特征库黑名单检测技术和浏览器渲染链接元素样式属性判断技术。现有技术都依赖于特征进行计算,多产生误报,造成检测结果的准确性不高的问题。

发明内容

有鉴于此,本发明的目的在于提供一种基于逃逸行为分析的暗链检测方法及装置,以缓解现有技术中存在的检测结果的准确性不高的技术问题。

第一方面,本发明实施例提供了一种基于逃逸行为分析的暗链检测方法,所述方法包括:

获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码;

当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码;

当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比;

当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述逃逸行为包括:Unicode转码、JavaScript加密、敏感关键字拆分、网页标题内容随机、用户代理规避和访问来源规避。

结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述方法还包括:

使用正则表达式查找所述第二HTML源代码中是否存在大于预设数量的Unicode编码的字符;

若所述第二HTML源代码中存在大于预设数量的Unicode编码的字符,确定所述第二HTML源代码内存在暗链;

若所述第二HTML源代码中存在小于或者等于预设数量的Unicode编码的字符,确定所述第二HTML源代码不存在逃逸行为。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述方法还包括:

查找所述第二HTML源代码是否包括预设加密函数;

若所述第二HTML源代码包括所述预设加密函数,则查找所述预设加密函数调用的功能函数内是否包含预设的函数变量名;

若所述预设加密函数调用的功能函数内包含预设的函数变量名,则确定所述第二HTML源代码内存在暗链;

若所述预设加密函数调用的功能函数内不包含预设的函数变量名,则确定所述第二HTML源代码不存在逃逸行为。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述方法还包括:

替换所述第二HTML源代码中的非可打印字符和数字字符为空字符,得到第三HTML源代码;

若在所述第二HTML源代码中未发现敏感关键字且在所述第三HTML源代码中发现敏感关键字,则确定所述第二HTML源代码内存在暗链;

若在所述第二HTML源代码中未发现敏感关键字且在所述第三HTML源代码中未发现敏感关键字,则确定所述第二HTML源代码不存在逃逸行为。

结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述方法还包括:

多次获取所述第二HTML源代码对应的被检测网站的标题;

若每一次获取到的所述标题均不相同,则确定所述第二HTML源代码内存在暗链;

若多次得到的所述标题均相同,则确定所述第二HTML源代码不存在逃逸行为。

结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述方法还包括:

通过模拟浏览器的搜索引擎访问被检测网站的首页;

在将所述模拟浏览器的搜索引擎设置为模拟搜索引擎后,通过模拟浏览器的模拟搜索引擎访问被检测网站的首页;

若所述被检测网站的首页跳转至非法网页页面,则确定所述第二HTML源代码内存在暗链;

若所述被检测网站的首页未跳转至非法网页页面,则确定所述第二HTML源代码不存在逃逸行为。

结合第一方面,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述将所述第一HTML源代码和所述第二HTML源代码进行对比,包括:

将所述第一HTML源代码中的多个代码区块分别与所述第二HTML源代码中对应的代码区块对比;

若所述第二HTML源代码中存在任一代码区块的标题内容与所述第一HTML源代码中对应的代码区块的标题内容不同,则确定所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致。

第二方面,本发明实施例还提供一种基于逃逸行为分析的暗链检测装置,包括:

第一获取模块,用于获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码;

第二获取模块,用于当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码;

对比模块,用于当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比;

确定模块,用于当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。

第三方面,本发明实施例还提供一种电子设备,包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1至8任一项所述的方法的步骤。

本发明实施例带来了以下有益效果:本发明实施例提供的基于逃逸行为分析的暗链检测方法包括:获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码;当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码;当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比;当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。

本发明实施例中,所述基于逃逸行为分析的暗链检测方法可以模拟搜索引擎的信息来访问被检测网站,将获取到的所述第二HTML源代码进行逃逸行为分析。当所述第二HTML源代码存在逃逸行为时,则确定所述第二HTML源代码中存在暗链。当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比,当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。所述基于逃逸行为分析的暗链检测方法从网络安全攻防对抗的角度出发,不局限于现有的已知暗链黑名单,能够检测各种暗链。缓解了现有暗链检测技术中存在的检测结果的准确性不高的技术问题,达到了提高暗链检测结果准确性的技术效果。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的基于逃逸行为分析的暗链检测方法的第一种流程图;

图2为本发明实施例提供的基于逃逸行为分析的暗链检测方法的第二种流程图;

图3为本发明实施例提供的基于逃逸行为分析的暗链检测方法的第三种流程图;

图4为本发明实施例提供的基于逃逸行为分析的暗链检测装置的示意框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前现有的暗链检测技术依赖已知暗链黑名单,多产生误报的情况,造成检测结果的准确性不高的问题,基于此,本发明实施例提供的一种基于逃逸行为分析的暗链检测方法及装置,可以缓解现有暗链检测技术中存在的检测结果的准确性不高的技术问题,达到提高暗链检测结果准确性的技术效果。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种基于逃逸行为分析的暗链检测方法进行详细介绍,如图1所示,基于逃逸行为分析的暗链检测方法可以包括以下步骤。

步骤S101,获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码。

示例性的,所述模拟浏览器发送访问请求给被检测网站,可以指模拟一般浏览器的数据包信息对所述被检测网站进行访问,这种访问方式不同于一般的通过编程语言对所述被检测网站进行访问。

步骤S102,当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码。

示例性的,所述逃逸行为可以包括:Unicode转码、JavaScript加密、敏感关键字拆分、网页标题内容随机、用户代理规避和访问来源规避。所述模拟搜索引擎可以通过修改所述模拟浏览器的用户代理字串或者访问来源而得到。其中,修改所述模拟浏览器的用户代理字串可以包括修改所述模拟浏览器的用户代理字串中的搜索引擎特征码为百度搜索引擎特征码、谷歌搜索引擎特征码或者必应搜索引擎特征码。

步骤S103,当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比。

示例性的,如图3所示,所述将所述第一HTML源代码和所述第二HTML源代码进行对比可以包括以下步骤。

步骤S301,将所述第一HTML源代码中的多个代码区块分别与所述第二HTML源代码中对应的代码区块对比。

步骤S302,若所述第二HTML源代码中存在任一代码区块的标题内容与所述第一HTML源代码中对应的代码区块的标题内容不同,则确定所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致。

步骤S104,当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。

在本发明实施例中,由于植入暗链的方法多为修改全局所有页面生效的后台服务端动态脚本,所以本发明实施例中每次只获取所述被检测网站的首页HTML源代码和首页中随机的一个链接的HTML源代码。因此,本发明实施例不需要爬取整个被检测网站的所有页面来检测暗链,可以极大地提高检测结果的准确性和检测速度。同时,本发明实施例不会局限的依赖于现有的已知的暗链黑名单,对于未知的暗链也能够进行检测,所以可以极大地提高检测结果的准确性。

在本发明的又一实施例中,如图2所示,所述基于逃逸行为分析的暗链检测方法还可以包括以下步骤。

步骤S201,使用正则表达式查找所述第二HTML源代码中是否存在大于预设数量的Unicode编码的字符。

示例性的,所述预设数量可以是10个,因为一般大于10个的字符通常可以组成一句话。所述查找可以是使用正则表达式进行Unicode编码字符模式匹配。可以优先在所述第二HTML源代码中的title标签和meta标签内进行查找。

步骤S202,若所述第二HTML源代码中存在大于预设数量的Unicode编码的字符,确定所述第二HTML源代码内存在暗链。

步骤S203,若所述第二HTML源代码中存在小于或者等于预设数量的Unicode编码的字符,确定所述第二HTML源代码不存在逃逸行为。

在本发明实施例中,可以有效的确定所述第二HTML源代码中的Unicode转码逃逸行为,进行暗链的检测。

在本发明的又一实施例中,所述方法还包括:

查找所述第二HTML源代码是否包括预设加密函数。

示例性的,所述预设加密函数可以包括JavaScript脚本语言中的eval函数。

若所述第二HTML源代码包括所述预设加密函数,则查找所述预设加密函数调用的功能函数内是否包含预设的函数变量名。

示例性的,所述预设的函数变量名可以包括p、a、c、k、e、r和d。在eval加密编码的JavaScript脚本中,源代码开头都是eval函数,调用的功能函数是function(p,a,c,k,e,r)或者是function(p,a,c,k,e,d)。

若所述预设加密函数调用的功能函数内包含预设的函数变量名,则确定所述第二HTML源代码内存在暗链。

若所述预设加密函数调用的功能函数内不包含预设的函数变量名,则确定所述第二HTML源代码不存在逃逸行为。

在本发明实施例中,可以有效的确定所述第二HTML源代码中的JavaScript加密逃逸行为,进行暗链的检测。

在本发明的又一实施例中,所述方法还包括:

替换所述第二HTML源代码中的非可打印字符和数字字符为空字符,得到第三HTML源代码。

若在所述第二HTML源代码中未发现敏感关键字且在所述第三HTML源代码中发现敏感关键字,则确定所述第二HTML源代码内存在暗链。

示例性的,所述敏感关键字可以包括博彩。

若在所述第二HTML源代码中未发现敏感关键字且在所述第三HTML源代码中未发现敏感关键字,则确定所述第二HTML源代码不存在逃逸行为。

在本发明实施例中,可以有效的确定所述第二HTML源代码中的敏感关键字拆分逃逸行为,进行暗链的检测。

在本发明的又一实施例中,所述方法还包括:

多次获取所述第二HTML源代码对应的被检测网站的标题。

若每一次获取到的所述标题均不相同,则确定所述第二HTML源代码内存在暗链。

若多次得到的所述标题均相同,则确定所述第二HTML源代码不存在逃逸行为。

在本发明实施例中,可以有效的确定所述第二HTML源代码中的网页标题内容随机逃逸行为,进行暗链的检测。

在本发明的又一实施例中,所述方法还包括:

通过模拟浏览器的搜索引擎访问被检测网站的首页。

在将所述模拟浏览器的搜索引擎设置为模拟搜索引擎后,通过模拟浏览器的模拟搜索引擎访问被检测网站的首页。

示例性的,所述模拟搜索引擎可以包括百度搜索引擎、谷歌搜索引擎或者必应搜索引擎。

若所述被检测网站的首页跳转至非法网页页面,则确定所述第二HTML源代码内存在暗链。

示例性的,所述非法网页页面可以包括博彩页面。

若所述被检测网站的首页未跳转至非法网页页面,则确定所述第二HTML源代码不存在逃逸行为。

在本发明实施例中,可以有效的确定所述第二HTML源代码中的用户代理规避逃逸行为,进行暗链的检测。

在本发明的又一实施例中,对本发明实施例所公开的一种基于逃逸行为分析的暗链检测装置进行详细介绍,如图4所示,本发明实施例提供一种基于逃逸行为分析的暗链检测装置,包括:

第一获取模块41,用于获取被检测网站在接收到模拟浏览器发送的访问请求后响应的第一HTML源代码;

第二获取模块42,用于当所述第一HTML源代码不存在逃逸行为时,获取被检测网站在接收到模拟搜索引擎发送的访问请求后响应的第二HTML源代码;

对比模块43,用于当所述第二HTML源代码不存在逃逸行为时,将所述第一HTML源代码和所述第二HTML源代码进行对比;

确定模块44,用于当所述第一HTML源代码和所述第二HTML源代码内存在任一代码区块不一致时,确定所述第二HTML源代码内存在暗链。

本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本发明的又一实施例中,对本发明实施例所公开的一种电子设备进行详细介绍,本发明实施例提供一种电子设备,包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前述实施例所述的方法的步骤。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。

在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

附图中的流程图和框图显示了根据本发明的多个实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

本发明实施例所提供的进行基于逃逸行为分析的暗链检测方法的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号