1 / 148
文档名称:

的缓冲区溢出检测研究-计算机应用技术专业论文.docx

格式:docx   大小:5,470KB   页数:148页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

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

的缓冲区溢出检测研究-计算机应用技术专业论文.docx

上传人:wz_198613 2019/1/4 文件大小:5.34 MB

下载得到文件列表

的缓冲区溢出检测研究-计算机应用技术专业论文.docx

相关文档

文档介绍

文档介绍:哈尔滨工程大学学位论文原创性声明
本人郑重声明:本论文的所有工作,是在导师的指导下,
由作者本人独立完成的。有关观点、方法、数据和文献的引用已在文中指出,并与参考文献相对应。除文中已注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。
作者(签字):霉桷
日期: 力O/I)年7月门日
哈尔滨工程大学学位论文授权使用声明
本人完全了解学校保护知识产权的有关规定,即研究生在校
攻读学位期间论文工作的知识产权属于哈尔滨工程大学。哈尔滨工程大学有权保留并向国家有关部门或机构送交论文的复印件。本人允许哈尔滨工程大学将论文的部分或全部内容编入有关数据库进行检索,可采用影印、缩印或扫描等复制手段保存和汇编本学位论文,可以公布论文的全部内容。同时本人保证毕业后结合学位论文研究课题再撰写的论文一律注明作者第一署名单位为哈尔滨工程大学。涉密学位论文待解密后适用本声明。
本论文(口在授予学位后即可口在授予学位12个月后口
解密后)由哈尔滨工程大学送交有关部门进行保存、
作者(签字):买确导师(签字)
日期:劢胗年弓月)芦劢p年≥月
哈尔滨工程大学硕士学位论文
摘 要
随着网络的蓬勃发展,计算机软件得到了长足的发展,它在社会的各个领域得到了广泛的利用。同时,这些软件程序存在着一些安全漏洞。缓冲区溢出漏洞就是最明显的一个。
编译器,在深入研究分析静态检测、动态检测方法基础上, 提出两种方法结合的的缓冲区溢出漏洞检测方法。
静态检测方法参照了整数对与建模分析方法,提出对每个缓冲区s绑定两个属性alloc(s)与len(s)。它跟踪每个缓冲区的两个属性alloc(s),len(s)从而判断是否发生了缓冲区溢出。
动态检测方法首先实现了分离局部变量的双栈结构。其次,在双栈结构基础上实现了动态检测,这样可以防止多个函数之间的局部变量发生覆盖。最后,将局部变量重新排序,这样可以防止单个函数的局部变量内部发生覆
血。
的语法分析文件,在函数调用和赋值语句这两块实现了静态检测方法。实验表明,它可以检验出简单的指针操作所引发的缓冲区溢出问题。的RTL中间结构以及多个前端文件而最终实现了动态检测方法。实验表明,它可以在发生溢出时候终止程序。由于时间有限, 重新分配局部变量这块没有在实验中验证。
关键词:C语言;缓冲区溢出;静态检测;动态检测;GCC
1
j
哈尔滨工程大学硕士学位论文
Abstract
With the development works,soffwares have been developed has been widely used in every fields of the same time,there are plenty of security flaws in the overflow is the obvious one.
TIlis thesis is in the point view of depth analysis on the static test and dynamic test,it proposes detection method which bination of both metho&.After drawing on paris of interger and modelmg analysis methodS,
this thesis presents a po缸of view which bind the buffers with two properties
natne alloc and represents the buffer space general,it is gained by a character array and a character represents the possibility
of the use of space in this buffer thesis track each of the two properties
们1e thesis will take some steps to achieve this ,it achieve the the dual stack which separate the local variables to another new