首页
社区
课程
招聘
[原创]3.栈溢出漏洞--GS和DEP
发表于: 2019-12-25 20:14 8974

[原创]3.栈溢出漏洞--GS和DEP

2019-12-25 20:14
8974

启用安全检查,防止栈溢出执行,VC6.0没有这个选项

开了GS后函数开始会多出全局变量security_cookie给eax,然后放在var4
f5
函数结束是会把security_cookie给寄存器然后调用check_cookike这个函数
f5
按x可以看到这个值是从这里来的
f5
是一个叫init_cookie的函数
f5
继续看交叉引用,发现是入口点位置直接执行
f5

1.虚表攻击
2.SEH

开启DEP栈就没有执行代码的权限,溢出也没用

安装
安装好这个软件
注意:
install Python 2.7.14 (or a higher 2.7.xx version) Make sure you are installing the 32bit version of python.
要不然会闪退

然后github下载插件

把mona安装到下面得文件路径
Immunity Inc\Immunity Debugger\PyCommands

简单使用
输入!mona命令运行模块
会出现一大堆得命令

这个是配合上面得命令使用的
!mona <command> <parameter>
例如:
在所有模块查找所有得jmp esp指令
!mona jmp -r esp -m*

运行程序
前面的代码是用来把VirtualProtect函数地址
和所需的参数给放到寄存器里面
最后pushad到栈里面
就会形成一个VirtualProtect的函数栈

执行完VirtualProtect函数修改栈属性,然后执行jmp esp,继续栈里面执行我们的shellcode

我这里用它生成了个3000字节的数组

生成在pattern这个文件里面,不要让他换行并且拷贝过来并且发包

之后到我们溢出的返回地址里面找字符,发现是8Co9

输入命令
!mona pattern_offset 8Co9
发现在2006的偏移位置

 
 

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 4
支持
分享
最新回复 (5)
雪    币: 1346
活跃值: (2331)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
写的真不错,好评。
2019-12-26 08:42
0
雪    币: 14530
活跃值: (17548)
能力值: ( LV12,RANK:290 )
在线值:
发帖
回帖
粉丝
3
mark,楼主辛苦了
2019-12-26 08:49
0
雪    币: 8209
活跃值: (6434)
能力值: ( LV12,RANK:207 )
在线值:
发帖
回帖
粉丝
4
很详细,谢谢楼主
2019-12-26 10:22
0
雪    币: 4120
活跃值: (5822)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
5
辛苦辛苦
2019-12-26 17:37
0
雪    币: 2222
活跃值: (739)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
6
2019-12-27 08:07
0
游客
登录 | 注册 方可回帖
返回
//