posts - 27,  comments - 2,  trackbacks - 0

很久的笔记了,拿出来给大家看看。
Ms06-040本地溢出实验

执行POC代码后载入olly发现ESPEIP被溢出为61616161. 如图:

。于是载入POC编译好的程序观察溢出细节:

由于我们已经知道出错的函数点,直接去函数点下端观察:

看到大量的字符b被写入栈中,而且在跟踪时还能看到其实b数据的规定长度是127,而unicode256。继续:

然后开始写入\字符(\x005c---unicode),继续:

准备开始覆盖字符a.:

字符a成功覆盖进栈中:

可以看到ebpebp+4的地方都被覆盖成61616161,nice  :)  .

我门F8继续到执行return后就如图一样ebp,eip都成61616161.

与是构造代码就出来了.

Shellcode+nop+90+jmp ecx(EIP) //查到CALL ECX的地址是751852f9

结果:

另外再来看看shellcode执行情况:

可以看到执行到return.ecx=0012f290(ebp-414),正是覆盖的shellcode起始地址.且在内存中也能看到return已被751852f9(call ecx)覆盖.

posted on 2009-11-06 10:05 Vhk 阅读(333) 评论(0)  编辑 收藏 引用 所属分类: 0day
只有注册用户登录后才能发表评论。
<2009年11月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345

常用链接

留言簿(4)

随笔分类

随笔档案

相册

我的链接

朋友圈链

搜索

  •  

最新评论

阅读排行榜

评论排行榜