专利名称:一种网页安全信息检测系统及方法
技术领域:
本发明涉及计算机及网络领域,特别是涉及一种网页安全信息检测系统及 方法。
背景技术:
目前网页中的不安全信息(包括网页病毒)的传播方式主要是通过挂马方 式来实现,即通过可执行漏洞,包括操作系统和安装软件的安全隐患,通过js(Java描述语言),vbs (Visual Basic描述语言)等网页脚本将木马下载到本 机并且执行。 一个网页包含内容参见图1所示,包括html (Hypertext Markup Language,超文本链接标示语言)或htm (HTML文件的后缀)等网页代码、 JS或VBS等脚本、GIF或JPG等图像以及CSS等框架定义。目前的网页安全信息检索技术,其实现方式主要有以下三种 现有技术一、参见图2所示,传统的网页安全信息检索技术是将网页的各 种构成部分下载到本机,并依赖于病毒库,根据已知的病毒信息对网页进行检 索,判断是否出现耦合,如果该网页中有二进制码符合病毒库中的特征,则认 为该网页为有病毒的网页。 其缺点是1、 依赖病毒库,无法预知未知病毒。2、 由于是检索并匹配病毒特征,所以容易被欺骗,也容易产生误报。3、 一些针对性攻击只会在特定环境中发生, 一般在静态环境下很难检测 出来。现有技术二、提供了一种非主流的网页安全信息检索技术。其是针对蠕虫 等病毒的抵御而诞生的主动防御技术,主要针对已知的溢出漏洞。这种技术的
含盖性不高,只能识别已知的可执行漏洞都,而且该技术也并非是针对网页病 毒的查杀而设计的。所以之后又出现了另外一种网页安全信息检索技术,见现 有技术三。现有技术三、参见图3所示,该技术是对代码执行流程进行分析,若流程 按照已知的特定规则执行(如发现溢出、发现非法流程),则认为包含病毒。 其缺点是1、 现有技术三的主动防御技术含盖性虽然得到了提高,但是网页中的病 毒有相当 一部分仍然不能被报警,因为这种技术仅能检查有溢出行为和已知的 非法流程的病毒。2、 由于这种网页安全信息检索技术是主动防御技术附属产生的,而主动 防御技术不成熟,因此会导致查杀病毒的定位不精确,病毒分析不清,给使用 带来了并不理想的结果,例如 .tmp的马可被报出,但却不能查到产生 .tmp的主程序,即浏览的网页。3、 主动防御技术的行为分析是以用户广泛使用为基础,对现有典型病毒 的逻辑行为进行过程分析,并且基于已发现漏洞的入侵方式进行的。但这也导 致对于新出现的病毒,或者特殊构造的漏洞束手无策。举个简单的例子进行说 明, 一个网页针对杀毒软件构造的漏洞溢出后,会执行特定的程序,如果该漏 洞并没有被杀毒软件认定为病毒的行为,也就是与杀毒软件的行为特征库不 符,那么就不会触发溢出报警机制,于是病毒就成功利用了该漏洞。4、 主动防御技术在对病毒的行为过程进行分析时,由于分析过程的复杂 度较大,使得分析逻辑本身会出现错误,从而导致报警系统无法正常报警。更 严重的是可利用这些逻辑错误编写免杀程序。5、 技术、逻辑实现复杂。可见由于该技术的实现复杂,智力投入较大,开发周期过长,并且产品的 使用效果并不理想,重要的是不能应用到专业的网页查杀服务器中。综上所述,现有技术必须依赖于已知的病毒特征对网页信息进行安全检 测。发明内容本发明实施例提供一种网页安全信息检测系统及方法,以实现不依赖于已 知的病毒特征对网页信息进行安全检测。本发明实施例的一种网页安全信息检测系统,包括待扫描的网页地址数 据库,用于存储待扫描的网页地址URL;核心调度模块,用于根据预先的配置, 启动至少一个浏览器;浏览器助手模块,被启动的每一浏览器分别加载,并为 加载其的浏览器生成唯一标识符,以及以该标识符通过核心调度模块请求待扫 描的网页地址数据库中的URL,并控制加载其的浏览器打开该URL;核心监 视模块,用于在监视到被启动的浏览器出现异常行为结果时,根据该浏览器对 应的标识符,将该浏览器打开的URL反馈给核心调度模块保存。本发明实施例的一种网页安全信息检测方法,包括下列步骤启动至少一 个浏览器;为每一被启动的浏览器生成唯一标识符,以及以该标识符请求URL, 并在该标识符对应的浏览器中打开;在监视到被启动的浏览器出现异常行为结 果时,根据该浏览器对应的标识符,将该浏览器打开的URL保存。本发明实施例的系统及方法中, 一个网页是否有病毒,不是根据任何先验 的病毒特征进行精确匹配或者模糊匹配,而是模拟最终用户环境来运行该网 页,通过监视网页的具体行为结果,对该网页信息进行安全检测。
图1为现有网页包含的内容示意图; 图2为现有技术一系统结构示意图; 图3为现有技术三系统结构示意图; 图4为本发明实施例的系统结构示意图; 图5为本发明实施例的方法步骤流程图6为本发明的一个实施例示意图;图7为本发明实施例的核心监视模块工作层次示意图;图8为本发明实施例的实际应用方案示意图。
具体实施方式
现有基于已知的病毒特征(包括漏洞的入侵方式)无法适应当前的网页安 全信息检测需求。在网页挂马、浏览器漏洞攻击等手段已被滥用的当前网络环 境下,急需一种不依赖于已知的病毒特征对网页信息进行安全检测的手段。本发明实施例提供了一种网页安全信息检测系统和方法,可根据网页的具层和用户层表现出来的操作结果)来确定网页的安全性。具体的, 一个网页是 否有病毒,不是根据任何先验的病毒特征进行精确匹配或者模糊匹配,而是模 拟最终用户环境来运行该网页,通过记录网页的具体行为结果来确定该网页是 否安全,从而可实现不依赖于已知的病毒特征对网页信息进行批量安全^f企测。 以下分别描述本发明实施例提供的网页安全信息检测系统和方法。 本发明实施例的系统植入操作系统的核心驱动程序,参见图4所示,其包 括待扫描的网页地址数据库、核心调度模块、浏览器助手模块和核心监视模 块。待扫描的网页地址数据库,用于存储待扫描的网页地址URL。 核心调度模块,用于根据预先的配置,启动至少一个浏览器。 浏览器助手模块,被启动的每一浏览器分别加载,并为加载其的浏览器生 成唯一标识符,以及以该标识符通过核心调度模块请求待扫描的网页地址数据库中的URL,并控制加栽其的浏览器打开该URL。核心监视模块,用于在监视到被启动的浏览器出现异常行为结果时,根据 该浏览器对应的标识符,将该浏览器打开的URL反馈给核心调度模块保存。 该核心监视模块可采用hook方式实现对被启动的浏览器异常行为结果的监视,
具体实现方式如下应用层通过增加系统服务加载驱动,通过创建内核对象(包括内核事件对 象和驱动程序对象)的连接点进行应用层和内核层之间的交互,内核层主要进 行评定,应用层主要对评定的结果和出现的问题进行记录。所述核心监视^t块主要采用的技术实现方式为hook, hook是一种修改程 序流程的方式,中文名挂钩, 一般常hook对象有windows API (Application Programming Interface应用编程接口 )、中断服务、IFS (可安装文件系统)和 NDIS (Network Driver Interface Standard网络驱动器接口标准)过滤等。由于任何的用户层都是经过Windows内核服务api实现的,所以核心监视 模块主要是通过hook windows内核服务api来实现对windows应用层操作的记 录和保护,为了增加系统的稳定性,hook主要是通过挂接windows ssdt表 (System Services Descriptor Table即系统服务描述符表)实现的,本模块hook 了注册表、文件,以及进程相关的内核服务api,(如NtCreateProcess ),靠 他们监视危险的用户层执行结果, 一旦触发特定结果,则认为是病毒,被hook 的函数通过模拟windows行为,依靠拒绝服务来保护操作系统免受病毒的侵 害。当出现判定为病毒的时候,我们通过内核事件对象对上层程序(加栽此驱 动的程序)进行通知,这样上层程序就能够对病毒所进行的非法操作记录,方 便以后对其进行评测。本发明实施例还提供了 一种网页安全信息检测方法,参见图5所示,包括 下列主要步骤51、 启动至少一个浏览器。52、 为每一被启动的浏览器生成唯一标识符,以及以该标识符请求URL, 并在该标识符对应的浏览器中打开。53、 在监视到被启动的浏览器出现异常行为结果时,根据该浏览器对应的 标识符,将该浏览器打开的URL保存。其中,以挂钩hook方式实现对被启动 的浏览器异常行为结果的监视(具体内容参见本发明实施例的系统)。
以下将本发明实施例的系统和方法相结合,以一个实施例详细描述系统的工作流程,参见图6所示,包括下述具体内容1、 当操作系统成功启动之后,加载核心监视模块。该模块在原有操作系 统的基础上,提供专用于杀毒的系统服务和功能。如前文提到,本发明实施例是完全模拟用户使用浏览器打开网页的过程, 并在此过程中监视系统是否存在异常。而染毒网页将常会利用浏览器漏洞进行 攻击,当成功攻击浏览器之后,网页病毒代码会指挥浏览器下载木马/病毒文件 到用户机器运行。浏览器也属于应用软件,其本身就可能包含BUG等导致系 统异常的错误。病毒代码通过浏览器程序本身的漏洞攻击,有极大可能会造成 浏览器崩溃甚至整个系统崩溃。核心监祸^莫块通过在传统才喿作系统的基础上实 现一个专用于本发明系统的子操作系统,来保护真实操作系统的安全。参见图 7所示,由于该模块工作层次(应用层为最高,硬件级最低)较低,所以可以 监视到上层软件,如浏览器的所有操作。对于异常行为结果进行记录,对于可 能造成系统崩溃/死机的异常行为结果,不但记录,而且会拒绝。2、 当系统启动并且核心监视模块被成功加载之后,系统会自动启动核心 调度模块。核心调度it块会根据预先的配置,启动若干浏览器(启动的数目, 取决于以下几个条件机器性能所允许运行的最大数目、扫描速度的需求、网 络带宽)。每个浏览器启动后,会加载一个浏览器助手BHO (Browser Helper Object)模块,BHO模块会根据核心调度模块的指示来指挥浏览器工作。3、 BHO模块会根据机器编号和加载其的浏览器编号,为加载其的浏览器 合成一个唯一标识符,并以此去核心调度模块请求一个URL;核心调度模块从 待扫描的网页地址数据库中获取URL,并调度到所述BHO模块;当该BHO 模块获得这个URL之后,就控制浏览器打开这个URL,从而使被打开的URL 形成一个进程。还可在打开URL时开始计时,如果发现超过n秒仍然没有打 开,则认为此URL超时。由于浏览器与标识符唯一对应,URL是通过标识符请求的,进程是打开该
URL而形成的,所以通过标识符可建立进程、浏览器和URL之间的对应关系。 4、所有的浏览器工作的同时,核心监测模块监测是否存在异常行为结果, 一旦发现,则检测这些结果来自哪个进程,从而获得该进程对应的标识符,进 而确定是哪个浏览器。 一旦确定了是哪个浏览器,就能知道其所对应的URL 是什么。然后把这个会导致异常的URL回馈给核心调度模块,核心调度模块 将这些信息存储在数据库中。本发明实施例可应用于但不限于以下两种实际方案,参见图8所示1、 单机扫描方案在此解决方案中,数据库和模拟启动浏览器、打开URL, 监视浏览器等工作在同一个高性能计算机中。数据库事先保存好需要扫描的 URL集合,并保存不安全的URL。2、 大规j莫扫描集群方案该方案并不是1号方案简单的叠加。在此方案 中,需要有单独的机器群运行数据库,多台机器进行模拟启动浏览器、打开 URL,监视浏览器等工作。并可以根据需要增加机器来校验不安全URL等。 方案2提供的解决方案,不但可以满足有网页安全信息;险测需求的企业用户进 行大规模批量查询,也能提供给互联网普通用户进行针对个别网页的单次查 询。综上所述,本发明实施例根据网页的具体行为结果来确定网页的安全性。 本发明实施例的系统及方法中, 一个网页是否有病毒,不是根据任何先验的病 毒特征进行精确匹配或者;^莫糊匹配,而是模拟最终用户环境来运行该网页,通 过监视网页的具体行为结果,对该网页信息进行安全检测。由于病毒的执行目的是为了破坏系统,不会出现病毒行为结果与正常程序行为结果为内核层的执行结果,而非应用层和用户层表现出来的操作结果)确 定网页信息是否安全,所以不会出现误判;而现有是根据特定执行流程来确定 网页信息是否安全,无法避免正常程序的执行流程与病毒的执行流程类似时的 误判。可见本发明实施例相对于现有技术精确度更高。
由于本发明实施例是通过行为结果确定网页信息是否安全,与病毒库无 关,任病毒种类变幻莫测,只要对系统有危害,都能检测出来。而且不仅能检测出对系统有危害的网页,对于网页上的"弹广告""打开 错误,,等信息也能记录下来。明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种网页安全信息检测系统,其特征在于,包括待扫描的网页地址数据库,用于存储待扫描的网页地址URL;核心调度模块,用于根据预先的配置,启动至少一个浏览器;浏览器助手模块,被启动的每一浏览器分别加载,并为加载其的浏览器生成唯一标识符,以及以该标识符通过核心调度模块请求待扫描的网页地址数据库中的URL,并控制加载其的浏览器打开该URL;核心监视模块,用于在监视到被启动的浏览器出现异常行为结果时,根据该浏览器对应的标识符,将该浏览器打开的URL反馈给核心调度模块保存。
2、 如权利要求l所述的系统,其特征在于,核心监视模块采用挂钩hook 方式实现对被启动的浏览器异常行为结果的监视。
3、 如权利要求2所述的系统,其特征在于,核心监视模块具体hook操作 系统内核服务的应用程序接口 api。
4、 如权利要求3所述的系统,其特征在于,核心监视模块通过hook操作 系统的系统服务描述符ssdt表来hook操作系统内核服务api。
5、 如权利要求2所述的系统,其特征在于,核心监视模块以被hook的函 数,模拟操作系统的行为来触发拒绝服务,以保护操作系统。
6、 如权利要求1所述的系统,其特征在于,浏览器助手模块以机器编号 和加载其的浏览器编号生成所述唯一标识符。
7、 如权利要求1所述的系统,其特征在于,所述核心监视j模块的工作层 低于应用层。
8、 如权利要求1至7任一项所述的系统,其特征在于,所述网页安全信 息检测系统植入操作系统的核心驱动程序。
9、 一种网页安全信息;险测方法,其特征在于,包括下列步骤 启动至少一个浏览器;为每一被启动的浏览器生成唯一标识符,以及以该标识符请求URL,并在 该标识符对应的浏览器中打开;在监视到被启动的浏览器出现异常行为结果时,根据该浏览器对应的标识 符,将该浏览器打开的URL保存。
10、 如权利要求9所述的方法,其特征在于,釆用挂钩hook方式实现对 被启动的浏览器异常行为结果的监视。
11、 如权利要求IO所述的方法,其特征在于,hook操作系统内核服务api。
12、 如权利要求11所述的方法,其特征在于,hook操作系统的系统服务 描述符ssdt表。
13、 如权利要求IO所述的方法,其特征在于,以被hook的函数模拟操作 系统的行为来触发拒绝服务,以保护操作系统。
14、 如权利要求9所述的方法,其特征在于,以机器编号和浏览器编号生 成所述唯一标识符。
全文摘要
本发明公开了一种网页安全信息检测系统及方法,以实现不依赖于已知的病毒特征对网页信息进行安全检测。一种网页安全信息检测系统,包括待扫描的网页地址数据库,用于存储待扫描的网页地址URL;核心调度模块,用于根据预先的配置,启动至少一个浏览器;浏览器助手模块,被启动的每一浏览器分别加载,并为加载其的浏览器生成唯一标识符,以及以该标识符通过核心调度模块请求待扫描的网页地址数据库中的URL,并控制加载其的浏览器打开该URL;核心监视模块,用于在监视到被启动的浏览器出现异常行为结果时,根据该浏览器对应的标识符,将该浏览器打开的URL反馈给核心调度模块保存。
文档编号G06F21/00GK101159000SQ200710182010
公开日2008年4月9日 申请日期2007年10月17日 优先权日2007年10月17日
发明者硕 于, 刘雨佳, 贾弘霏 申请人:深圳市迅雷网络技术有限公司