首页> 中文学位 >基于网络协议逆向分析的模糊测试脚本自动生成
【6h】

基于网络协议逆向分析的模糊测试脚本自动生成

代理获取

目录

声明

摘要

第一章 绪论

1.1 研究背景

1.2 漏洞挖掘

1.2.1 漏洞

1.2.2 挖掘方法

1.2.3 常见的漏洞

1.3 模糊测试

1.3.1 概念

1.3.2 系统架构

1.3.3 测试流程

1.3.4 数据生成

1.4 论文结构安排

第二章 协议逆向

2.1 网络协议

2.2 协议逆向研究现状

2.2.1 人工逆向分析

2.2.2 报文序列分析

2.2.3 指令执行序列分析

2.2.4 逆向技术的比较

2.3 协议逆向的内容

2.3.1 消息格式

2.3.2 状态机

2.4 本章小结

第三章 消息格式分析

3.1 动态污点分析

3.1.1 概述

3.1.2 PIN

3.1.2 实现方法

3.2 消息分离

3.3 域元素提取

3.3.1 分隔符提取

3.3.2 定位长度域和目标域

3.3.3 关键词提取

3.4 消息聚类

3.4.1 聚类

3.4.2 聚类方法

3.5 消息格式校准

3.6 本章小结

第四章 状态机推断

4.1 构造会话前缀树

4.2 状态标记

4.3 状态机的化简

4.4 状态机比对

4.4.1 字符串相似度算法

4.4.2 比对过程

4.5 本章小结

第五章 网络协议模糊测试脚本自动生成系统

5.1 协议逆向模块

5.1.1 动态污点分析

5.1.2 提取消息格式

5.1.3 推断状态机

5.2 状态机比对和协议信息存储模块

5.3 生成模糊测试脚本

5.3.1 Peach

5.3.2 协议的定义

5.3.3 脚本描述

5.4 FTP协议测试

5.5 本章小结

第六章 总结与展望

6.1 总结

6.2 展望

致谢

参考文献

附录

硕士研究生在读期间的研究成果

展开▼

摘要

模糊测试(Fuzzing)是一种被广泛应用的漏洞挖掘技术。本文研究网络协议模糊测试的脚本自动生成技术,利用网络协议逆向分析技术对输入数据流进行分析,逆向还原出协议的状态机,再根据推断的状态机自动生成模糊测试的脚本。现有的协议逆向研究集中在协议消息格式的逆向分析,针对网络协议状态机的逆向分析工作较少,并且这些工作中假设推断出的状态机是协议的原始状态机,忽略了逆向过程中可能存在的错误以及样本不完全等等的因素。主要工作如下:
  1.提出使用指令执行序列分析技术进行消息格式分析的方案,该方案首先利用动态污点分析的方式跟踪记录协议的执行指令以及涉及到的参数,然后利用记录结果分析出消息的字词和分隔符等域元素,最后将消息序列聚类,综合分析出每一类消息的通用结构。
  2.提出利用消息格式分析和动态污点分析的结果推断协议状态机的方案,该方案首先根据会话集构建会话前缀树,然后利用消息序列的特性进行状态标注,最后利用确定性有限状态机化简方法化简会话前缀树,推断出协议的状态机。
  3.提出状态机比对方案,根据协议状态转换中消息序列的字词和分隔符的特殊性,利用字符串相似度算法比对推断出的状态机和已有的状态机,确定推断出的状态机所属协议的完整状态机;针对FTP协议的测试证明了状态机比对方案的可行性和有效性。
  4.设计一个生成模糊测试脚本的系统,该系统包括协议逆向、状态机比对、协议信息存储和模糊测试脚本生成模块,其中协议逆向模块完成协议的逆向工作,推断协议的消息格式和状态机,状态机比对模块比对推断出的状态机与已有状态机,确定协议的原始状态机,模糊测试脚本生成模块生成模糊测试生成案例使用的脚本。经测试表明,系统能够进行消息格式分析和状态机构建、通过比对准确推断所属协议并生成有效的模糊测试脚本。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号