首页
社区
课程
招聘
[求助][讨论]关于MS08-021的问题!
发表于: 2008-10-24 22:21 3617

[求助][讨论]关于MS08-021的问题!

2008-10-24 22:21
3617
很老的洞洞了,菜鸟正在努力学习中。。。请各位指点下
从milw0rm上下载的exploit,2000下执行计算器,xp sp2下崩溃。在2000 SP4下将emf改为wmf,桌面崩溃。exploit中说需要安装MS07046,但是发现不管安装与否,漏洞模GDI32.DLL没有变化。

实验环境:
win2000 Sp4
GDI32 版本:5.00.2195.6898

google了下,说是PlayEnhMetaFileRecord函数的问题,OD附加到explorer上,下断点,跟踪发现是wcsncat出的问题:
77F65320     push dword ptr ss:[ebp+10]     ;长度限制0x104
77F65323     push GDI32.77F7AAA0               ;源字符串空
77F65328     push edi                                     ;目标空间unicode0x104
77F65329     call dword ptr ds:[<&NTDLL.wcsncpy>]  
77F6532F     mov esi,dword ptr ds:[<&NTDLL.wcsncat>]  
77F65335     add esp,0C
77F65338     push dword ptr ss:[ebp+10]      ;0x104
77F6533B     push GDI32.77F5863C               ;0x5c 反斜杠
77F65340     push edi
77F65341     call esi                                       ;wcsncat
77F65343     add esp,0C
77F65346     push dword ptr ss:[ebp+10]      ;0x104
77F65349     push dword ptr ss:[ebp+8]        ;POC中偏移0x84开始
77F6534C     push edi
77F6534D     call esi                                       ;wcsncat

由于0x104的限制,目标空间的ebp被溢出为0x00006161,也就是说我们只能控制两个字节,根本无法利用。这是怎么回事呢?
哪位调过这个洞,请指点下,快抓狂了!
谢谢啦!

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

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 220
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
可能问题太简单,或者过去太久远具体细节记不清楚了。
今天想想可能我的环境由于是虚拟机,从来没打过补丁,GDI32的版本太老,已经不是08021了?
还是请各位指点下,谢谢了!
2008-10-25 10:44
0
游客
登录 | 注册 方可回帖
返回
//