盾怪网教程:是一个免费提供流行杀毒软件教程、在线学习分享的学习平台!

编写自己的缓冲区溢出使用程序

时间:2024/10/30作者:未知来源:盾怪网教程人气:

[摘要](内存低址) 我们看看接下来的指令做了些什么? 0x804842c <main>: push %ebp ; esp的值等于esp-4(因为ebp是32位); ; 把ebp的值放入esp所...
 
(内存低址) 


我们看看接下来的指令做了些什么? 
0x804842c <main>: push %ebp ; esp的值等于esp-4(因为ebp是32位); 
; 把ebp的值放入esp所指的32位内存单 
; 元(注: 这里保存栈底). 
0x804842d <main+1>: mov %esp,%ebp ; ebp的值等于esp的值(注: 这里把原来 
; 的栈顶做为新的栈底). 

运行这两条指令, 然后看一下寄存器内容和栈的情况. 
(gdb) si 
0x804842d in main () 
(gdb) si 
0x804842f in main () 
(gdb) i reg 
eax 0x4010b3f8 1074836472 
ecx 0x804842c 134513708 
edx 0x4010d098 1074843800 
ebx 0x4010c1ec 1074840044 
esp 0xbffff6b8 -1073744200 
ebp 0xbffff6b8 -1073744200 
esi 0x4000ae60 1073786464 
edi 0xbffff704 -1073744124 
eip 0x804842f 134513711 
eflags 0x346 838 
cs 0x23 35 
ss 0x2b 43 
ds 0x2b 43 
es 0x2b 43 
fs 0x0 0 
gs 0x0 0 
cwd 0xffff037f -64641 
swd 0xffff0000 -65536 
twd 0xffffffff -1 
fip 0x40034d70 1073958256 
fcs 0x35d0023 56426531 
fopo 0xbfffe400 -1073748992 
fos 0xffff002b -65493 
(gdb) x/9x $esp 
0xbffff6b8: 0xbffff6d8 0x400349cb 0x00000002 0xbffff704 
0xbffff6c8: 0xbffff710 0x40013868 0x00000002 0x08048350 
0xbffff6d8: 0x00000000 

此时进程的相关影像为: 
(内存高址) 

关键词:编写自己的缓冲区溢出运用程序




Copyright © 2012-2018 盾怪网教程(http://www.dunguai.com) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版