1 / 32
文档名称:

缓冲区溢出技术.ppt

格式:ppt   大小:246KB   页数:32页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

缓冲区溢出技术.ppt

上传人:liangwei2005 2022/7/11 文件大小:246 KB

下载得到文件列表

缓冲区溢出技术.ppt

相关文档

文档介绍

文档介绍:缓冲区溢出技术
1
堆栈
2
从物理上讲,堆栈是就是一段连续分配的内存空间
静态全局变量是位于数据段并且在程序开始运行的时候被加载
动态的局部变量 则分配在堆栈里面
从操作上来讲,堆栈是一个先入后出的队列,其生长方向与内存的 = "/bin/sh";
name[1] = NULL;
execve(name[0], name, NULL);
}
12
execve( )
execve函数将执行一个程序
程序的名字地址作为第一个参数
一个内容为该程序的argv[i](argv[n-1]=0)的指针数组作为第二个参数
(char*) 0作为第三个参数
13
execve的汇编代码
$ gcc -o shellcode -static
$ gdb shellcode
(gdb) disassemble __execve
Dump of assembler code for function __execve:
14
如何精简?
经过以上的分析,可以得到如下的精简指令算法:

movl $execve的系统调用号,%eax
movl "bin/sh\0"的地址,%ebx
movl name数组的地址,%ecx
movl name[n-1]的地址,%edx
int $0x80 ;执行系统调用(execve)
15
问题
当execve执行成功后,程序shellcode就会退出,/bin/sh将作为子进程继续执行
如果execve执行失败,(比如没有/bin/sh这个文件),CPU就会继续执行后续的 指令,结果不知道跑到哪里去了
所以必须再执行一个exit()系统调用,
16
exit(0)汇编代码
17
exit(0) 的汇编代码精简
movl $0x1,%eax ;1号系统调用
movl 0,%ebx ;ebx为exit的参数0
int $0x80 ;引发系统调用
18
execve + exit
movl $execve的系统调用号, %eax
movl “bin/sh\0”的地址, %ebx
movl name数组的地址, %ecx
movl name[n-1]的地址, %edx
int $0x80 ;执行系统调用(execve)
movl $0x1,%eax ;1号系统调用
movl 0,%ebx ;ebx为exit的参数0
int $0x80 ;执行系统调用(exit)
19
万事具备,还欠什么?
字符串“/bin/sh”
name数组
execve + exit
问题
每一次程序都是动态加载,字符串和name数组的地址都不是固定的
在shellcode中如何知道它们的地址呢?
20
jmp + call
21
在large_string中填入buffer的地址
22
把shell代码放到large_string 的前面部分
23
将large_string拷贝到buffer中
24
造成溢出,使返回地址变为buffer,而buffer的内容为shell代码。这样当程序试从 strcpy() 中返回时,就会转而执行shell
25
如何利用别人的漏洞
26
利用别人的程序的堆栈溢出获得rootshell
以一个有strcpy堆栈溢出漏洞的程序,利用前面说过的方法来得到shell
同样必须完成两件事
把自己的shellcode提供给对方,让对方可以访问shellcode
修改对方的返回地址为shellcode的入口地址
27
How
必须知道strcpy(buffer,ourshellcode中,buffer的地址
因为当我们把shellcode提供给strcpy之后,buffer的开始地址就是shellcode的
开始地址
必须用这个地址来覆盖堆栈
28
How
对于操作系统而言,一个shell下的每一个程序的堆栈段开始地址都是相同的
可以写一个程序,获得运行时的堆栈起始地址,这样,我们就知道了

最近更新

2024年店面装饰装修合同 10页

产品开发工程师助理劳动合同 10页

交通运输委托付款协议书(三方) 11页

乳酸监测在生物气象学中的应用 8页

临床路径在老年病治疗中的重要性 9页

2024年职工医院全年工作总结2 6页

中国森林病虫害防治法规与政策 9页

中医糖尿病防治:保健的生活建议 8页

个人卫生:季节性传染病的防控要点 8页

检讨书1000字纪律犯错(5篇) 10页

一型糖尿病和二型糖尿病的足部护理 9页

OP006供电设备维修服务方案 8页

2024年事业单位教师招聘言语理解与表达题库及.. 119页

2024年人教版六年级下册数学期末测试卷(达标.. 7页

2024年冀教版六年级下册数学期末测试卷(重点.. 6页

2024年北师大版六年级下册数学期末测试卷及答.. 7页

2024年小升初数学期末模拟测试卷含完整答案(.. 6页

2024年小学六年级下册数学期末测试卷精品【突.. 6页

2024年沪教版六年级下册数学期末测试卷精品(.. 5页

2024年苏教版六年级下册数学期末测试卷附完整.. 6页

2024年西师大版六年级下册数学期末测试卷附答.. 7页

2024年部编版六年级下册道德与法治期末测试卷.. 6页

人教版一年级上册数学期末测试卷及答案(历年.. 6页

我在巴厘岛SPA的亲身体验散文 2页

2022年乡镇公务员干部入党申请书范文 3页

减肥的数学建模 15页

危急心律失常的识别及处理 89页

万年历流程图(共4页) 4页

有限元分析实验报告(共16页) 16页

圣经中生日祝福的经文圣经中的生日祝福2篇 11页