二进制程序漏洞挖掘:混合符号执行与模糊测试研究
需积分: 50 74 浏览量
更新于2024-08-10
收藏 2.93MB PDF 举报
"面向二进制程序的混合符号执行技术-基于matlab的一维条形码检测"
这篇博士学位论文探讨了面向二进制程序的混合符号执行技术,特别关注其在漏洞挖掘中的应用。混合符号执行是一种结合了动态和静态分析的技术,旨在克服传统符号执行的局限性,例如路径爆炸问题和处理矢量数据单元的挑战。
符号执行在处理依赖于系统API或第三方库的代码时,由于缺乏源代码,往往难以模拟这些调用的影响。例如,当涉及数组或字符串操作时,如果索引是符号变量,分析工具可能无法准确追踪赋值的具体位置,这在分析函数如`strncpy`时会遇到问题,无法确定实际拷贝了多少字符。
近年来,随着约束求解器和符号执行引擎性能的提升,研究人员开始关注提高漏洞挖掘的效率和效果,而不是追求完备性。Prefix是一个早期的符号执行工具,后来发展为Prefast,被微软用于源代码静态分析。Prefast通过抽象语法树转换、过程调用拓扑排序和路径约束检验,实现过程间的符号执行。它能检测指针相关的漏洞,如未初始化的指针引用和空指针解引用,并且在路径结束时检查资源泄露。为了控制路径爆炸,Prefix限制每个函数内检查的路径数量,并利用函数摘要加速后续的模拟执行。
面向二进制程序的漏洞挖掘比源代码级别的分析更具挑战性,因为商业软件通常不公开源代码,而且编译和链接过程可能导致新的漏洞。静态分析的误报率高,而动态模糊测试虽然误报率低,但依赖于有效的测试数据生成,对于复杂数据格式的测试效率较低。
论文的主要贡献在于提出了校验和感知的模糊测试方法,这是对现有动态漏洞挖掘技术的增强,解决了在遇到校验和检查机制时的局限性。这种方法增强了畸形样本在程序执行中的传递深度,改进了静态漏洞挖掘中的建模和遍历策略,提升了整体的漏洞发现能力。
这篇论文的研究成果对于提升二进制程序的安全性,尤其是针对那些无法获取源代码的系统,具有重要的理论和实践价值。通过混合符号执行和模糊测试的创新结合,为解决软件安全漏洞问题提供了新的思路和工具。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-09-13 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情

马运良
- 粉丝: 34
最新资源
- HaneWin DHCP Server 3.0.34:全面支持DHCP/BOOTP的服务器软件
- 深度解析Spring 3.x企业级开发实战技巧
- Android平台录音上传下载与服务端交互完整教程
- Java教室预约系统:刷卡签到与角色管理
- 张金玉的个人简历网站设计与实现
- jiujie:探索Android项目的基础框架与开发工具
- 提升XP系统性能:4G内存支持插件详解
- 自托管笔记应用Notes:轻松跟踪与搜索笔记
- FPGA与SDRAM交互技术:详解读写操作及代码分享
- 掌握MAC加密算法,保障银行卡交易安全
- 深入理解MyBatis-Plus框架学习指南
- React-MapboxGLJS封装:打造WebGL矢量地图库
- 开源LibppGam库:质子-伽马射线截面函数参数化实现
- Wa的简单画廊应用程序:Wagtail扩展的图片库管理
- 全面支持Win7/Win8的MAC地址修改工具
- 木石百度图片采集器:深度采集与预览功能