缓冲区溢出攻击原理、方法及防范(一)
由于C/C++语言本身没有数组越界检查机制,当向缓冲区里写入的数据超过了为其分配的大小时,就会发生缓冲区溢出。攻击者可以利用缓冲区溢出来窜改进程运行时栈,从而改变程序的正常流向。在分析缓冲区溢出攻击的原理之前,我们先来复习一下进程在内存中的结构。进程在内存中的组织形式Text段主要包含程序代码(一系列可执行的指令),另外还有一些只读的数据。通常操作系统标记该段为只读段,如果有进程试图修改该段,会引发段错误。Data段包括已初始化和未初始化的全局变量,静态变量也放于...