精品文档---下载后可任意编辑Linux 下缓冲区溢出检测的形式化方法讨论的开题报告一、讨论背景随着互联网技术的进展,网络攻击成为了严峻的安全威胁之一
缓冲区溢出漏洞是其中最常见的安全漏洞之一
缓冲区溢出漏洞是指程序中的缓冲区无法容纳输入数据时,溢出的数据会覆盖到其他内存区域,从而导致程序崩溃、执行任意代码、信息泄露等安全问题
彻底解决缓冲区溢出漏洞需要在软件开发阶段实行预防措施,例如代码审查、内存安全检查、程序测试等
而在实际应用中,很难避开出现缓冲区溢出漏洞,因此需要一种有效的检测方法对程序进行安全性分析
目前,已有多种缓冲区溢出检测方法被提出
其中,静态方法可以在代码编译时检测出缓冲区溢出问题,但这种方法的缺点是无法检测动态生成的代码;动态方法可以检测出动态生成的代码,但需要在运行时执行,不仅效率低下,而且对代码的运行环境要求非常高
因此,如何在保证检测准确率的同时降低运行时开销是当前讨论的重点
二、讨论内容本文讨论的内容为 Linux 下缓冲区溢出检测的形式化方法
形式化方法是一种基于严密数学模型的、系统性的工程方法
通过数学理论的建立和推导,可以保证程序的正确性和鲁棒性
本文旨在将形式化方法应用于缓冲区溢出检测中,从而提高检测的准确性和效率
具体讨论内容包括:1
缓冲区溢出漏洞的数学建模首先对缓冲区溢出漏洞进行数学建模
通过建立溢出数据对程序执行状态的影响函数,把缓冲区溢出的问题转化成求解方程的问题
控制流图生成与条件约束提取根据数学模型生成程序的控制流图,并提取出程序执行过程中的条件约束,以便后续的符号执行过程中进行条件的推断
符号执行与约束求解应用现有的符号执行工具对程序进行符号执行,得到执行过程中的符号表达式
同时结合条件约束,采纳数学求解方法对符号表达式进行约束求解,以获得程序执行过程中的溢出状态
精品文档---下载后可任意编辑4