1 / 64
文档名称:

基于二进制程序的缓冲区漏洞静态检测技术研究.pdf

格式:pdf   大小:1,809KB   页数:64页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

基于二进制程序的缓冲区漏洞静态检测技术研究.pdf

上传人:陈潇睡不醒 2021/11/3 文件大小:1.77 MB

下载得到文件列表

基于二进制程序的缓冲区漏洞静态检测技术研究.pdf

文档介绍

文档介绍:杭州电子科技大学硕士学位论文






基于二进制程序的缓冲区漏洞
静态检测技术研究


研 究 生: 邹 雪
指导教师: 方景龙 研究员



2015 年 3 月
Dissertation Submitted to Hangzhou Dianzi University
for the Degree of Master









Research on Static Detection Dechnology of
Buffer Overflow Based on Binary Program







Candidate: Xue Zou
Supervisor: Prof. Jinglong Fang






March, 2015
摘 要
在层出不穷的软件漏洞中,缓冲区溢出漏洞已经成为当前危害最大、出现频
率最高的漏洞,随着信息技术和网络技术的高速发展,缓冲区溢出漏洞日益变得
严重。面向源码的缓冲区溢出漏洞检测技术相对比较成熟,但是在商业利益的驱
动和市场经济条件下,很多软件都是以二进制程序的形式发布的,针对源码的检
测方法不能有效地对二进制进行检测,使得这些软件的安全性无法得到保证。在
现有的检测技术中动态分析方法居多,但是动态分析只能在运行时检测,且具有
覆盖率低、运行代价较高等缺点。静态程序能够在程序运行前检测漏洞,避免造
成重大损失,但是二进制程序缺少源码级别的变量、类型和程序结构信息,对其
进行静态分析存在一定的难度。
针对现存问题,本文提出了基于二进制程序的缓冲区溢出静态检测技术的研
究,研究缓冲区溢出的概念和原理,基于逆向分析平台 BinNavi,设计了一个对
缓冲区溢出漏洞进行检测的工具。主要研究内容如下所示:
1、基于中间语言的基础上,提出了一种基于漏洞模式的缓冲区漏洞易发点
的检测方法。将不安全函数调用和循环拷贝操作导致的缓冲区溢出的漏洞形态抽
象为特定的模式,在漏洞模式的基础上对缓冲区溢出漏洞点进行定位;
2、为了降低上述检测方法中的误报率,基于数据依赖分析的过程内和过程
间分析方法对漏洞进行筛选。过程内的分析基于逆向程序切片的算法,求解漏洞
点的关键变量的数据依赖集合,并通过集合之间的关系对漏洞点进行筛选;过程
间的分析基于函数摘要的方法跟踪数据来源,确定漏洞点的关键数据的最终来
源,根据数据是否来自程序外部对漏洞进一步的筛选。
基于 BinNavi 的逆向分析平台,利用上述方法设计并实现了一个二进制程序
缓冲区溢出漏洞静态检测工具,选取程序对工具的功能和性能进行测试,实验结
果表明,这个方法能够检测程序中的缓冲区漏洞并有效的减少检测结果中的误报
情况,提高了漏洞的检测效率。

关键词:缓冲区溢出,漏洞检测,筛选,中间表示,数据依赖分析
I
ABSTRACT
Amongst the increasing software vulnerabilities erupted in recent days, buffer
overflow has become the most significant one. With the fast