首页
社区
课程
招聘
[旧帖] 由一个Crackme引出的关于如何动态调试AutoIt程序? 0.00雪花
发表于: 2013-5-19 23:22 4126

[旧帖] 由一个Crackme引出的关于如何动态调试AutoIt程序? 0.00雪花

2013-5-19 23:22
4126
昨天在crackme.de上看到了一个用Autoit编写的Crackme,见附件.
原本以为很简单,消息断点,API,断下了,走着走着才发现身陷泥潭........
无奈借助工具反编译得到源码.
心想对照源码总可以方便的找到关键对比的地方了吧,各种断点下完了,然后是各各路迷失.就是断不到关键的地方.
有经验动态调试过的给点帮助,有兴趣一起玩玩的大家交流一下.
一个很小的玩意,耗费了不少时间,多少有些不甘心.有时间还是要再琢磨一下
以下是反编译出的源码......重点看后面的几行就行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
WHILE 0x00000001
$MSG = GUIGETMSG()
SELECT
CASE $MSG = $GUI_EVENT_CLOSE
EXITLOOP
CASE $MSG = $BUTTON1
BUTTON1()
CASE $MSG = $BUTTON2
EXIT
EXITLOOP
ENDSELECT
WEND
FUNC BUTTON1()
TRAYTIP("Condition", " Wrong Key!", 0x00000003)
SLEEP(0x00001388)
IF GUICTRLREAD($MASKEDIT1) = "[EMAIL="!@#a'Sound."THEN"]!@#a'Sound."THEN[/EMAIL]
TRAYTIP("Condition", " Patched! By:Sound ", 0x00000003)
SLEEP(0x00001388)
EXIT
ELSE
EXIT
ENDIF
ENDFUNC

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费
支持
分享
最新回复 (2)
雪    币: 773
活跃值: (315)
能力值: ( LV9,RANK:150 )
在线值:
发帖
回帖
粉丝
2
思路不对的话,解决问题是要走弯路的.
AutoIt在进行字符串比较时使用的是Kernel32.dll中的CompareStringW这个函数,该函数返回2,意味着比较的2个字符串相等.
这个CrackMe的意图是经过Crack随意输入一个字符串后,经比较正确后显示正确的TrayTip.所以只要在CompareString出来的函数让EAX=0即可.
今后遇到是这种简单比较的情况,可以直接下断,改标志位即可.
结贴了.
2013-5-20 20:22
0
雪    币: 773
活跃值: (315)
能力值: ( LV9,RANK:150 )
在线值:
发帖
回帖
粉丝
3
不能把分给自己.这个......太合理了
2013-5-20 20:24
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册