首页
社区
课程
招聘
[分享]必杀技公布——用特征码定位关键代码,秒杀MFC程序
发表于: 2009-2-23 21:20 84209

[分享]必杀技公布——用特征码定位关键代码,秒杀MFC程序

2009-2-23 21:20
84209
收藏
免费 7
支持
分享
最新回复 (132)
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
26
我看明白了,我看明白了,,,,,,,
我要把这个消息告诉身边所有的人
感谢书呆,感谢pediy,感谢all of you
2009-2-24 18:36
0
雪    币: 239
活跃值: (160)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
27
这个应该加精华啦,毕竟MFC的文章不多,谢谢楼主
2009-2-25 11:46
0
雪    币: 121
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
28
好贴先顶个
弄明白了,不过我的怎么是 [EBP-4]呢
2009-2-25 21:29
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
29
很不错!收藏
2009-2-25 23:37
0
雪    币: 332
活跃值: (30)
能力值: ( LV12,RANK:460 )
在线值:
发帖
回帖
粉丝
30
哦,原来如北
2009-2-26 10:17
0
雪    币: 297
活跃值: (21)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
31
一知半解,拿个试验一下
2009-2-26 19:26
0
雪    币: 222
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
不懂,不懂..
2009-2-26 20:25
0
雪    币: 108
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
第一次沙发,不错学习了!
2009-2-26 21:56
0
雪    币: 716
活跃值: (162)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
34
沙发都跑这儿来了?
2009-2-26 21:59
0
雪    币: 112
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
35
强大。。。学习
2009-2-27 07:57
0
雪    币: 400
活跃值: (1339)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
36
难道只有驱动的东西可以加精吗?
2009-2-27 23:32
0
雪    币: 89
活跃值: (187)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
37
真的是秒殺..太強了
2009-2-27 23:48
0
雪    币: 144
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
38
这样说的话,所有的函数都可以通过自己找到了
2009-2-27 23:49
0
雪    币: 160
活跃值: (209)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
这方法定位特征码.太好了.
2009-2-28 18:04
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
40
呵呵,同样的感觉~~
2009-3-1 02:09
0
雪    币: 194
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
多谢多谢,真是不错。
2009-3-1 08:44
0
雪    币: 231
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk
42
突然发现,这个方法不适合于"use MFC in static library"的程序。
这时候Alt+E找不到你说的模块。
2009-3-3 09:14
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
43
说明你还没有理解这个方法的精髓。
2009-3-3 14:53
0
雪    币: 331
活跃值: (57)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
44
嘿嘿……适合菜单响应吗
2009-3-3 15:40
0
雪    币: 307
活跃值: (131)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
45
这并不是MFC的特点,而是有虚函数表时的普通调用方法而已!
2009-3-3 16:31
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
我是VC6.0 +XP sp3,为什么我的就测试失败呢?没有断下~~~~

莫非跟版本有关

Executable modules, 条目 10
基址=73D30000
大小=000FE000 (1040384.)
入口=73D373C8 MFC42.<模块入口点>
名称=MFC42    (系统)
文件版本=6.02.4131.0  ---》》》太老。至少比你的老
路径=C:\WINDOWS\system32\MFC42.DLL

~~~~
2009-3-3 22:51
0
雪    币: 231
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk
47
你的意思是说整个MFC框架,只有_AfxDispatchCmdMsg这一处是使用函数指针进行函数调用的
(调用消息映射表里的函数)

不过我看整个消息的传递流程,至少这个流程里,这样的函数调用方式是唯一的
2009-3-4 01:53
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
48
又重新试了一遍发现,第一个并不能断下,在第四个断下的。

////////////VC6.0/////////////////////////////////////////////////////
DLL版本:
Executable modules, 条目 10
基址=73D30000
大小=000FE000 (1040384.)
入口=73D373C8 MFC42.<模块入口点>
名称=MFC42    (系统)
文件版本=6.02.4131.0
路径=C:\WINDOWS\system32\MFC42.DLL

栈信息:
0013F8C0   73D324C0  返回到 MFC42.73D324C0
0013F8C4   73DDB064  offset MFC42.#4234_CDialog::messageMap
0013F8C8   00000111

根据栈信息,(这个是能够断下的):
73D324BD    FF55 14         call    dword ptr [ebp+14]
73D324C0    EB 7F           jmp     short 73D32541

在模块中搜索到的第一个,(这个断不下):
73D3248F    FF55 14         call    dword ptr [ebp+14]

///////////VS.NET 2005//////////////////////////////////////////
DLL版本:
Executable modules, 条目 24
基址=782E0000
大小=0010F000 (1110016.)
入口=783A5598 MFC80U.<模块入口点>
名称=MFC80U
文件版本=8.00.50727.762
路径

=C:\WINDOWS\WinSxS\x86_Microsoft.VC80.MFC_1fc8b3b9a1e18e3b_8.0.50727.762_x

-ww_3bf8fa05\MFC80U.DLL

栈信息:
0013F884   7833B54E  返回到 MFC80U.7833B54E
0013F888   00000111

根据栈信息:
7833B54C    FFD0            call    eax
7833B54E    EB 7B           jmp     short 7833B5CB

在模块中搜索到的第一个call eax,:
有点儿郁闷,很无奈~
7830751A    FFD0            call    eax
2009-3-4 11:43
0
雪    币: 561
活跃值: (124)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
学习了
2009-3-4 13:03
0
雪    币: 324
活跃值: (237)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
呵呵,很暴力,而且很强大!
2009-3-4 13:08
0
游客
登录 | 注册 方可回帖
返回
//