TA的每日心情 | 开心 2018-3-29 07:24 |
---|
签到天数: 4 天 [LV.2]偶尔看看I
|
发表于 2008-9-2 21:39:35
|
显示全部楼层
看到VB的头痛,偷机一次,纯暴力/:017
简要说一下流程!/:013
OD载入,正常运行,F12暂停,查看窗口如下
我们可以看到从1到6的ID号中5和6为命令按钮事件,其余的为时间控件,继续重载程序,在以下的位置下断,查看一下正常的运行流程(至于为什么选这里,OD载入时粗略看一下代码就明白了,我也是正巧碰上的/:017 )
.....
00401D46 push ebp
00401D47 add byte ptr [eax], al
00401D49 sub dword ptr [esp+4], 43 ;从这里开始每个sub命令处下断
00401D51 jmp 00407490
00401D56 sub dword ptr [esp+4], 37 ;下断
00401D5E jmp 00407550
00401D63 sub dword ptr [esp+4], 47 ;下断
00401D6B jmp 00407680
00401D70 sub dword ptr [esp+4], 4B ; 下断
00401D78 jmp 00407800
00401D7D sub dword ptr [esp+4], 3B ;下断
00401D85 jmp 00407920
00401D8A sub dword ptr [esp+4], 33 ;下断
00401D92 jmp 00407A10
00401D97 add byte ptr [eax], al
00401D99 add byte ptr [eax], al
.........
记得每过一个断点就取消一下已经断下来的断点,不然会循环在时间事件中,我们会发现正常的流程是:
37--->4B--->33
我们可以把上面的与上面图中对应的ID事件假设作一个对应如下:
33 < 37 < 3B < 43 < 47 < 4B
1 2 3 4 5 6
Timer Timer Timer Timer Button2 Button1
即正常的流程是Time-->Button1-->Time,所以我们可以要想使Button2成功只需使程序的流程为
Timer-->Button2-->Timer,对时间控件无所谓修改,关键是Button2,故可以将上述流程改为37-->47-->33试验一下,
即将00401D78 jmp 00407800 这句改为 jmp 00407680
保存一下看看效果/:018 (当然要想效果完美还得对Timer再动动手/:001 )
PS: 以上方法纯属投机性质,放出来博大家一乐!/:017
[ 本帖最后由 x80x88 于 2008-9-2 23:01 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
x
|