[发明专利]一种取证式网站漏洞扫描方法和系统有效
申请号: | 201410185544.X | 申请日: | 2014-04-30 |
公开(公告)号: | CN103942497B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 林章峰;范渊;杨永清 | 申请(专利权)人: | 杭州安恒信息技术有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 杭州中成专利事务所有限公司33212 | 代理人: | 周世骏 |
地址: | 310051 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 取证 网站 漏洞 扫描 方法 系统 | ||
技术领域
本发明属于网络应用安全领域,尤其涉及一种取证式网站漏洞扫描方法和系统。
背景技术
随着互联网的发展,各种网络应用层出不穷,极大程度地满足了用户的各种需求。但是,网络应用开发过程中往往更加注重功能上的实现,却遗留下各种各样的安全问题,这一般是由于进度压力、程序员水平限制、设计不完善或一时疏忽导致的。常见网站安全问题包括:代码对输入数据的过滤不足导致的漏洞、服务器配置方面造成的漏洞、敏感信息泄露等。在应用开发过程中一般很难完全杜绝这些漏洞。因此采用网站漏洞扫描工具对网站进行安全评估是一个很好的选择。
网站漏洞扫描系统一般抓取网站所有页面,然后对抓取到的页面进行逐个分析,发现尽可能多的安全问题。然而几个因素导致这样的扫描方式非常容易造成误报,报告一些实际上并不存在的漏洞,对网站开发和维护人员造成时间和精力上的浪费。这些因素包括:1)很多网页的动态性,造成网站漏洞扫描系统判断错误;2)网站漏洞扫描系统本身的判断逻辑不完善;3)目前的应用环境非常复杂,网站漏洞扫描系统的判断逻辑往往无法覆盖所有可能出现的情况。
在现有已知的技术中,与本方法较为接近的技术是一种名为“基于渗透技术的Web漏洞扫描方法”,其关键步骤是“包括扫描和分析两个阶段”。该技术主要实现了网站漏洞发现的方法。但如前面所述,这样的方法容易产生误报,但没有提供很好的过滤误报的方法。工作人员可以采用这种方法扫描到一些漏洞,但可能一部分是确实存在的,一部分是误报。他们只能选择容忍这些误报,或人工对漏洞再次逐个分析。
发明内容
本发明的目的是弥补现有网站漏洞扫描方法的不足,提供一种漏洞扫描方法和扫描系统,采用自动和手工取证方法,提高网站漏洞扫描系统扫描的准确率,提交更加准确可信的网站漏洞扫描结果。
提供一种取证式网站漏洞扫描方法,用于对被扫描网站进行漏洞检测,包括以下步骤:
a)页面抓取:从被扫描网站的初始页面开始解析,获取被扫描网站的页面链接,然后将页面链接存入系统数据库模块,并保证相同页面链接不重复存入,再从系统数据库模块中提取已保存的并且未经过页面抓取步骤处理的页面链接,进行页面访问,并提取新的页面链接存入到系统数据库模块,直至抓取完被扫描网站的所有页面;
b)漏洞扫描:在步骤a抓取到的页面中,判断是否还有尚未进行漏洞检测的页面,若已没有尚未进行漏洞检测的页面,则转步骤e,否则执行:选择一个尚未进行漏洞检测的页面进行漏洞检测,针对这个页面,根据不同漏洞各自所对应的检测逻辑进行漏洞分析(漏洞的种类非常多,每种漏洞都有不同的检测方法,部分相关技术已属于业界公知),如果发现漏洞转步骤c,否则重复执行步骤b;
c)自动取证:对步骤b中发现的漏洞,根据不同漏洞的取证逻辑进行自动取证,并自动过滤掉误报,获得能够证明该漏洞存在的取证结果;
d)信息收集:根据步骤b发现的漏洞,针对不同漏洞能采取的手工取证方法,自动收集手工取证方法所需要的取证信息并进行保存,完成后转步骤b对其他页面进行漏洞检测;
e)手工取证:使用步骤d收集的取证信息,根据不同漏洞能采取的相应的手工取证方法进行手工取证,并获得用于确认漏洞的真实性的手工取证结果。
在本发明中,根据不同类型的网站漏洞,所述步骤c和步骤e中的取证结果包括以下数据:页面长度、HTTP响应码、页面请求响应时间、页面请求过程收发的报文、HTTP头、会话及Cookie、页面内容、多个页面请求之间的差异性(如页面响应码的差异、页面长度的差异、内容的差异等)、页面在浏览器中的实际显示效果及其截图(部分漏洞可以使用浏览器进行取证,不同的漏洞在浏览器中输入是不一样的,比如“跨站脚本”可以修改界面的标题或弹出一个对话框,“目录浏览”的显示效果则是在浏览器中显示一个目录下的所有子目录和子文件,不同的情况还有很多,不再一一列举)。
在本发明中,所述步骤d中的取证信息包括以下数据:自动构造的用于进一步取证的URL、HTTP头、会话及Cookie、表单提交数据、HTTP请求数据包、HTTP响应数据包。
在本发明中,所述步骤c中的自动取证包括以下方法:
1)直接将漏洞所在页面的响应内容长度、响应码、响应时间、报文、页面内容作为取证结果,并以此判断漏洞是否存在;
2)在原始页面请求的基础上进行修改,自动构造至少一个新的http请求,并对这些不同请求的数据(包括响应内容长度、响应码、响应时间、报文、页面内容)进行对比,把对比获得的差异性作为取证结果,并以此判断漏洞是否存在;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州安恒信息技术有限公司,未经杭州安恒信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410185544.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:金属检测装置
- 下一篇:图片处理方法、装置及终端