首页
社区
课程
招聘
[原创]MFC12.0.14.0_OnInitDialog和 按钮事件入口特征总结
发表于: 2017-9-2 18:08 3408

[原创]MFC12.0.14.0_OnInitDialog和 按钮事件入口特征总结

2017-9-2 18:08
3408

最近一段时间在学习逆向,就做了一些总结,也是漫漫逆向之路中特征积累的开始

MFC12.0-vs2013编写

MFC14.0-vs2015编写

特征获取方法:在OnInitDialog和 按钮事件中使用MessageBox,下断点,并ctrl+f9,f8回溯,找到入口处


MFC12.0,MFC14.0都分析了D,R(debug调试 ,release发布)/S,D(static在静态库中使用 MFC ,dynamic在共享 DLL 中使用 MFC)四种情况:

下面使用简写DS DD RS RD(如DD:debug dynamic),注意dynamic动态的需要在对应的dll中查找特征

关于这一点,如图


12.0

OnInitDialog:[dynami在共享 DLL 中使用 MFCc在mfc120u.dll中找]

DS,DD 

8945FC837DFC??74??8B4DFC8B118BF48B4DFC8B82????????FFD03BF4  调用处:CALL EAX                              

RS RD 

558BEC817D0C????????75??FF7508E8????????5068????????E8????????595985C074??8B108BC8FF92????????EB??  调用处:CALL DWORD PTR DS:[EDX+??]


按钮事件[dynamic在共享 DLL 中使用 MFC在mfc120u.dll中找]

DS,DD均为:CALL DWORD PTR SS:[EBP-0x8]

RS call  dword ptr ss:[ebp+0x14]  

RD call  dword ptr ss:[ebp+0xC]


14.0

OnInitDialog [dynamic在共享 DLL 中使用 MFC在mfc140u.dll中找]

DS DD:8945F88B4DF8E8????????8B4DFCFF55F83BF4E8????????EB??EB??B8????????EB??33C0 

调用处:

8B 4D FC            mov        ecx,dword ptr [ebp-4] 

FF 55 F8             call    dword ptr [ebp-8]

3B F4                cmp        esi,esp


RS RD:8B0F568BB1????????8BCEE8????????8BCFFFD65EEB??33C040

调用处:

call esi


按钮事件[dynamic在共享 DLL 中使用 MFC在mfc140u.dll中找]

DS call        dword ptr [ebp-48h] 

DD call        dword ptr [ebp-8] 

RS call        dword ptr ss:[ebp+0x14]   

RD call        dword ptr ss:[ebp+0xC]


使用:

确定是主模块还是mfc140u.dll或mfc120u.dll,

如果是opecode(如上面找OnInitDialog入口),ctrl+b查找;

如果是汇编命令(如上面的按钮),右键查找->所有命令->输入命令,全部下断


以后也许还会遇到其他的程序,如qt等,也都需要多总结,最简单的就是这样自己构造一个demo,定位到关键处

如有错误,还望批评指教~



[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 12663
活跃值: (3172)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
学习了
2017-9-4 06:38
0
游客
登录 | 注册 方可回帖
返回