吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 91698|回复: 427
收起左侧

[原创] 总结一下各种语言按纽事件的找法(文字篇)

    [复制链接]
ximo 发表于 2008-9-14 12:02
本文可以和那个演示动画一起看,加深理解
http://www.52pojie.cn/read.php?tid-10283.html

其实也算是炒冷饭,不过我把各种语言都总结了下,算是笔记也好,算是方便新手也好,呵呵~
调试软件,最重要的就是下断点,那么如何下断点,就是一门重要的技巧.
比如:弹提示框,就下MessageBoxA,注册表的,就下RegOpenKeyA等等.
当然,能直接下到按纽事件,当然更为方便,因为到了按纽事件后,很快就会到达核心代码,离你的破解也就不远了.
本文就总结一下各类语言找按纽事件的方法,当然也可以借助工具,如VBexplorer,DEDE,ECE等等.

一、VB程序
其实,VB的按纽事件的找法是最为普遍的,也就是大家所谓的万能断点.其实也不仅仅是针对按纽事件,还有很多其他的用处,如取消NAG,启动框,灰色按纽或隐藏按纽,启动时的timer事件等等,具体的就自己去总结吧,这里只演示按纽事件!

OD载入后,CTRL+B,816C24
1.GIF
确定后,就会来到下图处:
2.GIF
然后,就在下面的JMP处F2下断,下完后CTRL+L,如果还有,就继续下断点.

下完断点后,运行程序,点击相应的按纽,OD就会断下来了
3.GIF

下面的任务就是考验大家的耐心,F8跟踪吧,不再赘述了.

当然,为了方便大家,可以写个简单的脚本,免的每次都去手动设置了,节省时间:
var Addrmov Addr,401000loop:find Addr,#816C2404??000000#cmp $RESULT,0je Exitadd $RESULT,08bp $RESULTadd $RESULT,1mov Addr,$RESULTjmp loopExit:eval "按纽事件查找完毕!"msg $RESULTret

二、Delphi和BC++程序

Delphi和BC++都是同一公司开发的,故查找方法都一样,当然你也可以使用DEDE.

OD载入后,CTRL+G,转到00401000处
然后就CTRL+B,查找特征码740E8BD38B83????????FF93????????
4.GIF

然后就会找到下面的地方:
5.GIF
然后就在下面的CALL处下断吧.

下面的工作就是不断的CTRL+L继续查找和F2下断了.

运行下看看效果吧:
6.GIF

看,断下了吧,下面就F7跟进这个CALL吧,就来到这个按纽事件处了.

同样写个脚本,方便大家操作:
var Addrmov Addr,401000loop:find Addr,#740E8BD38B83????????FF93????????#cmp $RESULT,0je Exitadd $RESULT,0Abp $RESULTadd $RESULT,1mov Addr,$RESULTjmp loopExit:ret
三、易语言

易语言的这种查找方法,同样适合有壳的程序,其他的就必须脱壳后再继续操作了.

OD载入后,就F9运行程序吧,当程序运行后,ALT+E
选中易语言的核心库krnln,双击进去

7.GIF

然后CTRL+B,查找FF 55 FC
8.GIF

查找到的这个CALL就是了,F2下断吧

现在输入必须的内容后,单击对应的按纽吧

9.GIF

看,断下了吧,下面就F7跟进吧,就来到按纽事件处了

同样,写个脚本,方便大家
gpa"GetProcessHeap","kernel32.dll"cmp $RESULT,0je errbp $RESULTrunrunrunbc $RESULTrtufind 10001000,#FF55FC5F5E895D??8945#bp $RESULTfind eip,#FFE0#cmp$RESULT,0je errbp $RESULTrunbc $RESULTstoMSG "按纽事件查找完毕!"reterr:MSG "脚本运行错误!请检查错误后再继续运行脚本!"ret

四、VC++程序(非MFC程序)

OD载入后,单击鼠标右键,选择"查找",然后是"所有命令"
在弹出的输入框里,写入特征代码"sub eax,0a"

10.GIF

确定后,就来到下面的窗口
11.GIF

在下面的sub eax,0A处,双击进去吧:

12.GIF

来找这里后,在下面的je处跟随过去

13.GIF

跟随来到的这个CALL,就是了,F2下断吧

然后断下后,F7跟进,F8几次,就来到按纽事件了.

五、MFC类程序

当然判断MFC和非MFC的程序,靠大家自己去判断了

OD载入后.ALT+E,来到可执行模块,找MFC的核心DLL:MFC42

然后就双击进去

14.GIF

然后就CTRL+F,查找特征代码:sub eax,0a

15.GIF

同样,找到后,就在下面的je处跟随,跟随后看到的CALL,就是那个关键CALL了!

16.GIF

断下后F7跟进,F8几次,就会来到按纽事件代码处了!


方法就简单的介绍到这里了,当然只是抛砖引玉,其他的,还得多靠大家自己慢慢总结吧!

最后感叹一下卡卡的强大,膜拜了~

附件中就是各语言的演示程序

各种语言按纽事件的找法.rar

1010 KB, 下载次数: 2689, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 1热心值 +1 收起 理由
唯唯 + 1 喜欢详细的教程。

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

nv21 发表于 2008-9-14 13:27
谢谢分享 下去 好好学习一下~!!!!!!!!!!!
Tale 发表于 2008-9-14 19:43
小生我菜菜 发表于 2008-9-14 20:51
蚊香 发表于 2008-9-14 20:56
[s:39] 顶精华[s:39] 存盘
unpack 发表于 2008-9-14 22:14
o(∩_∩)o... 不错不错 学习到了很多的方法啊~~~谢谢大侠的分享啊
aspirer 发表于 2008-9-15 00:10
准备弄一个打印版
图文并茂
wgz001 发表于 2008-9-15 06:45
膜拜大牛 收藏学习 [s:43]
255411 发表于 2008-9-15 07:03
精品文章学习了这个教程太棒了[s:39]
mayl8822 发表于 2008-9-15 08:39
听不明白哈,感觉这样很麻烦
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-14 13:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表