网络安全数据的获取方法及装置与流程

文档序号:11234688阅读:566来源:国知局
网络安全数据的获取方法及装置与流程

本发明实施例涉及网络技术领域,尤其涉及一种网络安全数据的获取方法及装置。



背景技术:

现在互联网应用进入web2.0时代,应用端的表现越来越丰富,对于前端页面的性能要求也越来越高,为提供给用户更为自然的浏览体验,很多大型网站使用异步javascript和xml(asychronousjavascriptandxml,ajax)加载技术加载页面。

借助ajax异步加载技术,可以在用户进行网页上的操作时,使用javascript(客户端web开发的脚本语言)和dhtml(dynamichtml,动态html)立即更新页面,并向服务器发出异步请求,以执行更新或查询数据库。当请求返回时,就可以使用javascript和级联样式表(cascadingstylesheet,css)来相应地更新页面,而不是刷新整个页面。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。从而把以前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而达到节约互联网服务提供商(internetserviceprovider,isp)的空间及带宽租用成本的目的。

但是,ajax异步加载技术利用javascript动态生成页面时,页面没有刷新过程,因此源代码中没有新的页面内容,搜索引擎利用爬虫分析源代码的时候,无法获取到新的页面内容,从而使搜索引擎无法获取到网络安全相关数据,导致无法根据网络安全相关数据进行漏洞分析,增加了漏洞漏报率,网络安全性较低。



技术实现要素:

本发明实施例提供一种网络安全数据的获取方法及装置,能够获取采用ajax方式创建的网页的网络安全相关数据,进而对当前网页中可能存在的漏洞进行分析,降低了漏洞漏报率,提高了网络安全性。

本发明实施例提供一种网络安全数据的获取方法,包括:

从预设调用函数库中获取当前网页中每个事件对应的调用函数;

根据所述调用函数的返回数据,确定当前网页中被触发的事件;

获取所述被触发的事件对应的页面内容;

根据所述被触发的事件所对应的页面内容,获取所述当前网页中的网络安全相关数据。

进一步地,上述所述的方法中,从预设调用函数库中获取当前网页中每个事件对应的调用函数之前,还包括:

获取所述当前网页的源代码;

根据所述当前网页的源代码,确定所述当前网页中的每个事件对应的调用函数。

进一步地,上述所述的方法中,根据所述当前网页的源代码,确定所述当前网页中的每个事件对应的调用函数,包括:

提取所述源代码中的每个事件对应的数据;

对所述每个事件对应的数据进行解析处理,获取所述每个事件的特征值,所述特征值携带所述每个事件对应的调用函数的标识;

根据所述标识,确定所述每个事件对应的调用函数。

进一步地,上述所述的方法中,获取所述被触发的事件对应的页面内容,包括:

获取所述被触发事件对应的超文本标记语言html文本;

对所述html文本进行分析,得到所述被触发的事件对应的页面内容。

进一步地,上述所述的方法中,所述网络安全数据包括:

网络的链接和/或网络的数据源。

本发明实施例还提供一种网络安全数据的获取装置,包括:

第一获取模块,用于从预设调用函数库中获取当前网页中每个事件对应的调用函数;

第一确定模块,用于根据所述调用函数的返回数据,确定当前网页中被触发的事件;

第二获取模块,用于获取所述被触发的事件对应的页面内容,根据所述被触发的事件所对应的页面内容,获取所述当前网页中的网络安全相关数据。

进一步地,上述所述的装置,还包括第二确定模块;

所述第一获取模块,还用于获取所述当前网页的源代码;

所述第二确定模块,用于根据所述当前网页的源代码,确定所述当前网页中的每个事件对应的调用函数。

进一步地,上述所述的装置中,第二确定模块,具体用于:

提取所述源代码中的每个事件对应的数据;

对所述每个事件对应的数据进行解析处理,获取所述每个事件的特征值,所述特征值携带所述每个事件对应的调用函数的标识;

根据所述标识,确定所述每个事件对应的调用函数。

进一步地,上述所述的装置中,所述第二获取模块,具体用于:

获取所述被触发事件对应的超文本标记语言html文本;

对所述html文本进行分析,得到所述被触发的事件对应的页面内容。

进一步地,上述所述的装置中,所述网络安全数据包括:

网络的链接和/或网络的数据源。

本发明实施例的网络安全数据的获取方法及装置,通过从预设调用函数库中获取当前网页中每个事件对应的调用函数;根据调用函数的返回数据,确定当前网页中被触发的事件;获取被触发的事件对应的页面内容;根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据,实现了对采用ajax方式创建的网页的网络安全相关数据的抓取。本发明实施例的技术方案,能够获取采用ajax方式创建的网页的网络安全相关数据,进而对当前网页中可能存在的漏洞进行分析,降低了漏洞漏报率,提高了网络安全性。

附图说明

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明实施例的一部分,本发明实施例的示意性实施例及其说明用于解释本发明实施例,并不构成对本发明实施例的不当限定。在附图中:

图1为本发明实施例的网络安全数据的获取方法实施例一的流程图;

图2为本发明实施例的网络安全数据的获取方法实施例二的流程图;

图3为本发明实施例的网络安全数据的获取装置实施例一的结构示意图;

图4为本发明实施例的网络安全数据的获取装置实施例二的结构示意图。

具体实施方式

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

以下结合附图,详细说明本发明实施例各实施例提供的技术方案。

实施例一

图1为本发明实施例的网络安全数据的获取方法实施例一的流程图,如图1所示,本发明实施例的网络安全数据的获取方法,具体可以包括如下步骤:

100、从预设调用函数库中获取当前网页中每个事件对应的调用函数。

在一个具体实现过程中,采用ajax方式创建的网页中,如web2.0,会存在相应的事件,以根据各事件生成相应的页面内容。

由于采用ajax方式创建的网页,可以在不刷新整个页面的情况下,仅去获取更新部分的内容,导致一些事件被执行后,网页的源代码中是没有新的页面内容的,使爬虫无法得知这些事件已被触发,从而无法获取到相关页面内容,为了解决上述问题,本发明实施例中可以预先设置一个调用函数库,将各事件与预设调用函数库中相应的调用函数进行绑定,形成一个事件与调用函数的关联关系。用户请求打开某一网页时,根据该网页,从预设调用函数库中获取该网页中每个事件对应的调用函数。

需要说明的是,本发明实施例中的当前网页可以理解为当前用户请求打开的网页。

例如,对于ajax方式创建的网页,本发明实施例中相应的事件可以包括但不限制于:基于ajax加载技术下的动态响应,渲染render、回流reflow、绘制painting和事件流eventflow中的至少一种,这些事件可以由工作人员根据网页的数据加载方式人为预定义,也可以预先对现有的网页进行定义等。

101、根据获得的调用函数的返回数据,确定当前网页中被触发的事件。

在一个具体实现过程中,网页打开后,可能存在多种事件,如采用ajax方式创建的网页,存在基于ajax加载技术下的动态响应的事件。该事件在某些特定操作下会被触发。网页中的每个事件被触发后与其对应的调用函数同样会被触发从而返回相应的数据,例如,每个事件对应的调用函数可以返回逻辑值“0”或“1”,也可以返回字符串类型“是”或“否”等,本发明实施例不做具体限制。

由于当前网页中存在多个事件,但并不是每个事件都会被执行的,因此在获得各事件对应的调用函数后,每个调用函数返回的数据是不同的,本发明实施例可以根据每个调用函数返回的数据,获知哪些事件被触发,哪些事件未被触发,从而可以确定当前网页中被触发的事件。例如,当调用函数可以返回逻辑值“1”时,表示其对应的函数已被触发;当调用函数可以返回逻辑值“0”时,表示其对应的函数未被触发。

102、获取被触发的事件对应的页面内容。

当某一事件被触发后,爬虫能够得知该事件被执行了,此时爬虫能够抓取被触发事件对应的页面内容。比如:当渲染render或绘制painting事件发生时,网页中对应的页面内容,如文字、颜色、图片等,也会跟着变化,此时爬虫能够抓取这些被触发的事件所对应的页面内容。

103、根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据。

在获取到被触发的事件所对应的页面内容之后,可以对获取的页面内容进行解析,从而获得该页面内容的相关源代码,将从多个被触发事件获得的源代码与当前网页的源代码相结合,可以获取到当前页面内所有的源代码,进而获取当前网页中的网络安全相关数据。

在一个具体实现过程中,当前网页中除了自身的连接以外还存在其它链接,以及需要输入用户名和密码等数据源,因此,为了能够获得更全面的网络安全数据,本发明实施例中的网络安全数据,可以包括但不限制于:网络的链接和/或网络的数据源。

本发明实施例的网络安全数据的获取方法的执行主体可以为网络安全数据的获取装置,该网络安全数据的获取装置具体可以通过软件来集成,例如该网络安全数据的获取装置具体可以为一个应用,本发明对此不进行特别限定。

本发明实施例的网络安全数据的获取方法,通过从预设调用函数库中获取当前网页中每个事件对应的调用函数;根据调用函数的返回数据,确定当前网页中被触发的事件;获取被触发的事件对应的页面内容;根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据,实现了对采用ajax方式创建的网页的网络安全相关数据的抓取。本发明实施例的技术方案,能够获取采用ajax方式创建的网页的网络安全相关数据,进而对当前网页中可能存在的漏洞进行分析,降低了漏洞漏报率,提高了网络安全性。

实施例二

图2为本发明实施例的网络安全数据的获取方法实施例二的流程图,如图2所示,本发明实施例的网络安全数据的获取方法在图1所示实施例的基础上,进一步更加详细地对本发明技术方案进行描述。

如图2所示,本发明实施例的网络安全数据的获取方法,具体可以包括如下步骤:

200、获取当前网页的源代码。

本发明实施例可以将沙箱技术应用于网页防护中,从技术实现角度而言,就是从原有的阻止可疑程序对系统访问,转变成将可疑程序对磁盘、注册表等的访问重定向到指定文件夹下,从而消除对系统的危害。

用户通过浏览器所作的任何写磁盘操作,都将重定向到一个特定的临时文件夹中。这样,即使网页中包含病毒,木马,广告等恶意程序,被强行安装后,也只是安装到了临时文件夹中,不会对用户终端造成危害。

因此,每个网页在终端显示之前,会被载入沙箱中进行分析处理,每个网页的源代码是每个网页分析的基础,所以每个网页在载入沙箱的过程中以及载入沙箱后,都需要获取每个网页的源代码。本发明实施例中,用户当前请求打开某一网页时,可以获取当前网页的源代码。

201、根据当前网页的源代码,确定当前网页中的每个事件对应的调用函数。

在一个具体实现过程中,每个调用函数中必然包含一段特定的代码,以标识该调用函数,本发明实施例可以称之为特征值,因此,在获取到每个网页的源代码之后,可以提取源代码中的每个事件对应的数据,对每个事件对应的数据进行解析处理,以获取每个事件的特征值,其中,获取的特征值携带每个事件对应的调用函数的标识;在获取到每个事件的特征值之后,可以根据特征值携带的标识,确定每个事件对应的调用函数。

202、从预设调用函数库中获取当前网页中每个事件对应的调用函数。

该步骤与图1所示实施例中的步骤100实现机制相同,详细请参考上述相关记载,在此不再赘述。

203、根据获得的调用函数的返回数据,确定当前网页中被触发的事件。

该步骤与图1所示实施例中的步骤101实现机制相同,详细请参考上述相关记载,在此不再赘述。

204、获取被触发的事件对应的页面内容。

在一个具体实现过程中,某一事件被触发后,生成相应的超文本标记语言(hypertextmarkuplanguage,html)文本。其中html中携带该事件对应的页面内容,如文字、颜色、图片等,因此,在确定被触发的事件之后,可以获取被触发事件对应的html文本,并对html文本进行分析,得到被触发的事件对应的页面内容。

205、根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据。

该步骤与图1所示实施例中的步骤103实现机制相同,详细请参考上述相关记载,在此不再赘述。

本发明实施例的网络安全数据的获取方法,能够获取采用ajax方式创建的网页的网络安全相关数据,进而对当前网页中可能存在的漏洞进行分析,降低了漏洞漏报率,提高了网络安全性。

实施例三

图3为本发明实施例的网络安全数据的获取装置实施例一的结构示意图,如图3所示,本发明实施例的网络安全数据的获取装置可以包括第一获取模块10、第一确定模块11和第二获取模块12。

第一获取模块10,用于从预设调用函数库中获取当前网页中每个事件对应的调用函数。

第一确定模块11,用于根据第一获取模块10获取的调用函数的返回数据,确定当前网页中被触发的事件。

第二获取模块12,用于获取被触发的事件对应的页面内容,根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据。

例如,本发明实施例中,网络安全数据可以包括但不限制于:网络的链接和/或网络的数据源。

应当理解的是,尽管在本发明实施例中可能采用术语第一、第二等描述获取模块,但这些获取模块不应限于这些术语,这些术语仅用来将获取模块彼此区分开。例如在不脱离本发明实施例范围的情况下,第一获取模块10也可以被称为第二获取模块12,同理第二获取模块12也可以被称为第一获取模块10。

本发明实施例的网络安全数据的获取装置,通过采用上述各模块实现获取网络安全数据的实现机制与上述图1所示实施例的实现机制相同,详细可以参考上述图1所示实施例的记载,在此不再赘述。

本发明实施例的网络安全数据的获取装置,通过上述各模块能够从预设调用函数库中获取当前网页中每个事件对应的调用函数;根据调用函数的返回数据,确定当前网页中被触发的事件;获取被触发的事件对应的页面内容;根据被触发的事件所对应的页面内容,获取当前网页中的网络安全相关数据,实现了对采用ajax方式创建的网页的网络安全相关数据的抓取。本发明实施例的技术方案,能够获取采用ajax方式创建的网页的网络安全相关数据,进而对当前网页中可能存在的漏洞进行分析,降低了漏洞漏报率,提高了网络安全性。

实施例四

图4为本发明实施例的网络安全数据的获取装置实施例二的结构示意图,如图4所示,本发明实施例的网络安全数据的获取装置在图3所示实施例的基础上,进一步还可以包括第二确定模块13。

在一个具体实现过程中,第一获取模块10,还用于获取当前网页的源代码;

第二确定模块13,用于根据当前网页的源代码,确定当前网页中的每个事件对应的调用函数。

具体地,第二确定模块13可以提取源代码中的每个事件对应的数据;对每个事件对应的数据进行解析处理,获取每个事件的特征值,特征值携带每个事件对应的调用函数的标识;根据标识,确定每个事件对应的调用函数。

第二获取模块12,具体用于:获取被触发事件对应的超文本标记语言html文本;对html文本进行分析,得到被触发的事件对应的页面内容。

本发明实施例的网络安全数据的获取装置,通过采用上述各模块实现获取网络安全数据的实现机制与上述图2所示实施例的实现机制相同,详细可以参考上述图2所示实施例的记载,在此不再赘述。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本发明实施例的实施例可提供为方法、系统或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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