一、缓冲区溢出原理
缓冲区溢出是因为在程序执行时数据的长度超出了预先分配的空间大小,导致覆盖了其他数据的分配区域,从而执行非授权指令,获取信息,取得系统特权进而进行各种非法操作导致程序运行失败、系统宕机、重新启动等后果。普通的程序员由于失误导致的缓冲区溢出可能只会导致程序无法运行而不会影响系统,但是如果黑客使用构造好的数据来进行缓冲区溢出攻击则可能获得超级管理员权限,非常危险。
二、实验流程
1. 系统环境
Windows操作系统;Visual c++ 6.0;ollydbg;ida pro;
2. 程序实例
3. 实验过程分析
(1)判断main函数的地址
(2)分析call语句对于栈空间的影响
(3)缓冲区溢出分析
(4)溢出结果及危害
三、防御手段
四、实验总结
2024-04-29 16:20:06
205KB
网络安全
1