缓冲区溢出攻击的原理是什么防护和解决缓冲区溢出攻击缓冲区溢出攻击的原理是什么?




缓冲区溢出攻击的原理是什么防护和解决缓冲区溢出攻击缓冲区溢出攻击的原理是什么?

2022-07-21 1:04:06 网络知识 官方管理员
一、缓冲区基本概念1.缓冲区:也称堆栈,是一种抽象的数据结构,物理上就是一段连续分配的内存空间。堆(heap)和栈(stack)是不同的两个概念,堆是由程序申请并释放的内存空间,而栈是由操作系统自动分配的内存空间。

堆和栈有两个特点:一是数据操作(进栈和出栈)遵循"后进先出"原则,就像往右底的竹筒里放乒乓球,最后放进去的必须是先取出来;二是堆栈的增长方向与内存地址增长方向相反,也就是堆栈是从内存的高地址向低地址增长的。

2.指针:编程语言中的一个对象,是一个内存地址。

3.寄存器:有限存储空间的高速存储部件,它们可用来暂存指令、数据和地址。以X8632位CPU为例,其通常包含8个通用寄存器和1个指令指针寄存器。8个通用寄存器分别是EAX、EBX、ECX、EDX、ESI、EDI、ESP、EBP和指令指针寄存器EIP。其中ESP和EBP也被成为堆栈指针寄存器,在一个函数中,ESP和EBP共同决定了一个堆栈,其中ESP指向栈顶,EBP指向栈底。而指令指针寄存器(EIP)指向CPU要执行的下一条指令的地址(返回地址)。

缓冲区溢出漏洞的攻击与防范

发表评论:

最近发表
网站分类
标签列表