第五章缓冲区溢出.pptVIP

  • 28
  • 0
  • 约5.81千字
  • 约 52页
  • 2017-04-14 发布于天津
  • 举报
第五章缓冲区溢出.ppt

第五章 缓冲区溢出 本章内容 5.1 缓冲区溢出相关概念 5.2 缓冲区溢出原理 5.3 溢出保护技术 5.4 安全编程技术 本章要求 了解缓冲区溢出的相关概念 明确缓冲区溢出的危害 理解栈溢出、堆溢出、整型溢出、格式化字符串溢出及文件流溢出的原因 掌握安全编程技术 引子 1988 Morris蠕虫事件 CERT统计数据 5.1 缓冲区溢出相关概念 缓冲区 从程序的角度,缓冲区就是应用程序用来保存用户输入数据、程序临时数据的内存空间 缓冲区的本质 数组 存储位置 Stack Heap 数据段 5.1 缓冲区溢出相关概念 缓冲区溢出 如果用户输入的数据长度超出了程序为其分配的内存空间,这些数据就会覆盖程序为其它数据分配的内存空间,形成所谓的缓冲区溢出 简单溢出实例 #include stdio.h int main() { char name[8] = {0}; printf(“Your name:”); gets(name); printf(“Hello,%s!”,name); return 0; } 缓冲区溢出的危害 应用程序异常 系统不稳定甚至崩溃 程序跳转到恶意代码,控制权被窃 5.2 缓冲区溢出原理 预备知识 理解程序内存空间 理解堆栈 理解函数调用过程 理解缓冲区溢出的原理 Windows环境下的堆栈 程序空间由何构成?

文档评论(0)

1亿VIP精品文档

相关文档