[发明专利]一种恶意注入脚本网页检测方法和系统有效
申请号: | 200710303985.5 | 申请日: | 2007-12-24 |
公开(公告)号: | CN101471818A | 公开(公告)日: | 2009-07-01 |
发明(设计)人: | 叶润国;胡振宇;朱钱杭;李博;骆拥政;牛妍萍 | 申请(专利权)人: | 北京启明星辰信息技术股份有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L29/06;G06F17/30 |
代理公司: | 北京市商泰律师事务所 | 代理人: | 毛燕生 |
地址: | 100094北京市海淀区东北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 恶意 注入 脚本 网页 检测 方法 系统 | ||
技术领域
本发明涉及一种恶意注入脚本网页检测方法,属于计算机网络技术领域。
背景技术
随着互联网技术和Web技术的发展,Web不再只为互联网用户提供静态内容服务,而可以根据用户需要提供各种动态Web内容服务。由于Web服务具有易部署和易用等优点,现在很多传统客户机/服务器模式的应用都开始转变成基于Web的应用,包括那些对安全要求非常高的电子银行和电子证券等应用。
Web应用在为人们的生活和工作带来便利的同时,也带来了很多安全问题,而脚本注入攻击事件为这些安全问题中最主要的安全问题。脚本注入攻击存在的根源在于:Web应用程序代码存在缺陷,它未能对用户输入数据进行严格检查和过滤,以至于恶意攻击者可以通过用户输入域注入恶意脚本,这些注入的恶意脚本通过Web应用提供的动态内容网页呈现给受害者Web浏览器执行,从而达到偷取受害者敏感数据或者在受害者安全上下文环境下执行恶意动作等目的。据国际著名Web安全开放组织OWASP统计,2007年,脚本注入攻击事件(包括跨站脚本攻击事件,它属于脚本注入攻击范畴)居于十大Web安全事件之首。从国际漏洞库组织CVE库2002年至2007年关于脚本注入攻击事件的统计来看,脚本注入攻击安全事件的发生频率正呈逐年增长趋势。
脚本注入攻击漏洞存在的根源在于Web应用实现上的缺陷,而这些编程缺陷不可能完全避免,因此,需要借助专用的Web应用安全漏洞扫描工具来帮助找到Web应用中潜在的脚本注入攻击安全漏洞并在被黑客利用前通过代码补丁方式修补安全漏洞。但是,Web应用安全漏洞扫描工具并不能够发现所有的脚本注入攻击安全漏洞,并且,对于那些已被黑客利用脚本注入安全漏洞产生的包含恶意注入脚本的动态内容网页,Web服务安全漏洞扫描工具也无法检测出 来。
发明内容
本发明提供一种恶意注入脚本网页检测方法。本发明所述的恶意注入脚本网页检测方法和系统克服了传统Web安全漏洞扫描方法和系统只能发现包含脚本注入漏洞缺陷的网页而无法发现那些已被黑客利用脚本注入漏洞成功注入恶意脚本的动态内容网页的缺陷,是对现有Web网站信息安全风险评估方法和系统的有利补充。本发明所述的恶意注入脚本网页检测方法和系统的基本检测原理是:绝大多数成功的脚本注入攻击都将改变其动态内容网页模板的文档对象模型结构,如果能够成功提取各动态内容网页模板,则通过将动态内容网页文档对象模型结构与网页模板相比对,可检测出该动态内容网页是否包含恶意注入脚本。
本发明解决其技术问题所采用的技术方案是:
一种恶意注入脚本网页检测方法,所述的恶意注入脚本网页检测方法包括以下步骤:
使用网页爬虫遍历并下载被扫描网站所有网页的步骤;
对下载网页进行聚类分析并提取网页簇模板的步骤;
利用网页簇模板检测簇中各网页是否包含恶意注入脚本的步骤。
优选地,所述的恶意注入脚本网页检测方法之对下载网页进行聚类分析并提取网页簇模板的步骤包括以下步骤:
对下载的网页集合进行预处理,过滤掉那些与静态Web对象请求相关的网页,只保留那些与动态Web对象请求相关的动态内容网页;
根据网页统一资源定位符对动态内容网页进行聚类,得到聚类后的动态内容网页簇;
对于每一动态内容网页簇,提取其所共有的文档对象模型树作为该动态内容网页簇模板。
优选地,所述的恶意注入脚本网页检测方法之利用网页簇模板检测簇中各网页是否包含恶意注入脚本的步骤包括以下步骤:
对于每一动态内容网页簇,将簇中每一动态网页转换为文档对象模型树,并与该网页簇模板相比较,找到超出网页簇模板轮廓的各个文档对象模型子树;
对于超出网页簇模板轮廓的各文档对象模型子树,试图从中提取注入脚本;
对提取的注入脚本进行语法正确性检测,如果语法正确,则确认其宿主动态内容网页为包含恶意注入脚本的网页。
优选地,所述的恶意注入脚本网页检测方法之从超出网页簇模板轮廓的文档对象模型子树集合中提取注入脚本步骤为以下5种脚本提取方法的任意组合:
从文档对象模型子树各<script>标签中提取Javascript/VBScript脚本;
从文档对象模型子树各HTML标签的事件驱动函数中提取Javascript/VBScript脚本;
从文档对象模型子树各HTML标签的特定属性值中提取Javascript/VBScript脚本;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京启明星辰信息技术股份有限公司,未经北京启明星辰信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710303985.5/2.html,转载请声明来源钻瓜专利网。