网络协议模糊测试.doc

网络协议模糊测试.doc

ID:55587345

大小:118.90 KB

页数:8页

时间:2020-05-19

网络协议模糊测试.doc_第1页
网络协议模糊测试.doc_第2页
网络协议模糊测试.doc_第3页
网络协议模糊测试.doc_第4页
网络协议模糊测试.doc_第5页
资源描述:

《网络协议模糊测试.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、网络协议模糊测试1.网络协议模糊测试网络协议模糊器的测试对象主要是各类网络产品中的网络协议解析模块,目的是测试其在组装、解析网络协议过程中是否存在漏洞。其思想是模糊器通过Socket与被测目标之间进行通信,向被测目标应用发送变异或包含错误的模糊值,并监视目标应用以发现错误。使用网络协议模糊器进行模糊测试,需要首先研究各类协议的规范和标准,以便创建合理的测试数据。目前,最常见的网络协议模糊测试实施方案有两种:方案Ⅰ为客户端和服务端测试模式,即模糊器和被测对象分别为测试过程的两个端点。此时,模糊器可充当客户端的角色,用来测试服务端程序的安全性,例如Web服务程序。同时,模糊器也可以充当服务

2、端的角色,用来测试客户端程序的安全性.模糊器中的监控模块用来对被测对象的行为进行收集、分析以判断是否存在异常情况。方案Ⅱ网络协议模糊测试的实施方案是为了测试防火墙、路由器、安全网关等等部署在网络中间的设备。模糊器构造的数据被发送至协议服务器的过程中,位于模糊器和协议服务器之间的被测对象对其起到了重组和解析的作用,一旦重组和解析过程中出错,可能造成被测对象出现异常状态。模糊器中的监控模块用来对被测对象的异常状态进行收集、分析,最终定位漏洞所在。通过此方法可发现被测对象在网络协议处理过程中的安全漏洞。1.测试对象理论上,潜在测试目标包括任何能够接受网络数据的任务软件。OSI7层模型中从数据

3、链路层到应用层每一层都有可能存在实现问题,再对测试目标进行全面审计时,每一层都要进行测试。2.测试方法2.1强制(基于变异)模糊测试先使用嗅探器抓取合法的协议数据,随后对抓到的数据进行变异,将其发送给目标应用。但在目标应用实现了基本回放攻击保护或协议包含校验码的两种情况下,这种模糊测试无法达到期望的测试效果。2.2智能强制(基于生成)模糊测试智能强制模糊测试首先需要实际研究协议规范。智能模糊测试器仍然依靠强制性攻击,可以依赖用户提供的配置文件,使模糊测试的过程更智能。2.3通过修改客户端进行变异模糊测试将测试嵌入到已经实现了用我们期望的协议与服务进行通信的应用中,这样就不用实现在模糊测

4、试器中实现整个协议,给模糊测试器的开发者带来好处,最小化所需投入的经历。3.错误检测3.1手工方式(基于调试器)在进程上附加使用调试器1.1自动化方式(基于代理)设计一个方案来代替手工调试过程。不使用调试器,由模糊测试者编写一个面向目标平台的调试代理并在目标应用上运行之。监视目标进程中发生的异常,并于远程系统上的模糊测试器进行通信。2.UNIX平台自动化网络协议模糊测试2.1使用SPIKE模糊测试框架SPIKE用模糊字符串库中的内容迭代模糊变量,达成模糊测试。模糊此符传可以是任何数据类型,甚至是XDR编码的二进制数据数组。SPIKE是一个GPL的API和一套工具,它使你可以快速创建任何

5、网络协议压力测试的测试器。大多数协议都是围绕着非常类似的数据格式化建立的。这些协议中的许多都已经在SPIKE中得到支持。其他的协议也很快会得到支持。SPIKE使用C语言编写,运行平台UNIX,框架结构如下图所示框架试图方便逆向工程师和安全研究人员复制一个未知的协议,框架包括模糊测试器和支持代码,包括以下内容:(1).webfuzz,提供一许多小工具,以组合一个灵活而全面的web应用程序模糊测试工具。Webfuzz完全依赖于浏览器来生成它的要求,它总是正确解析java和脚本语言。(2).Msrpcfuzz:尝试运行ncan_tcp程序,它基本上是随机发送参数,如果端口突然关闭,就发现了一

6、个潜在的严重错误。1.1针对协议的模糊测试器SPIKE包含一部分预先写好的针对具体协议的模糊测试器,以下是这些模糊测试器的列表:HTTP模糊测试器MicrosoftRPC模糊测试器X11模糊测试器Citrix模糊测试器SunRPC模糊测试器针对协议的模糊测试脚本SPIKE还包含一些可以嵌入到多个SPIKE内涵的通用模糊测试器中的脚本。脚本列表如下所示1.1基于脚本的通用模糊测试器SPIKE有几个通用模糊测试器,他们接收脚本作为输入,下面列出能在SPIKE中找到的通用模糊测试器:TCP监听模糊测试器(客户端)TCP/UDP发送模糊测试器行缓冲TCP发送模糊测试器1.2Pop3模糊测试脚本

7、在pop3中可以查看pop3.spk查看pop3模糊测试脚本s_string_variable("USER");s_string("");s_string_variable("Administrator");s_string("r");s_string("PASS");s_string_variable("jbone");s_string_variable("r");s_string_variable("STAT");s_strin

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。