吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8335|回复: 9
收起左侧

[原创] 一个简单的花指令的去处

[复制链接]
wzb 发表于 2011-6-23 10:54
前几天,我在求助里看到了一个CreakMe,文件名挺有意思,《违章建筑拆除宝典》,我还真把它当成城管什么了。
废话不说了,这个CreakMe加的是UPX的壳,可能是UPX的变种吧,PEID查不出来,并且加入了大量的花指令

下断点bp LoadLibraryA,返回后到这里了
00C131A4    FF55 10         call    dword ptr [ebp+10]               ;  LoadLibraryA
00C131A7    E8 02000000     call    00C131AE
00C131AC    1C B9           sbb     al, 0B9
00C131AE    872C24          xchg    dword ptr [esp], ebp
00C131B1    8DAD 46710000   lea     ebp, dword ptr [ebp+7146]
00C131B7    872C24          xchg    dword ptr [esp], ebp
00C131BA    C3              retn

这里就是花指令了,你如果想F8过00C131A7,那么就跑飞了,应该F7进入。
因为OD的F8的原理是在下一条指令处(00C131AC)下CC断点,然后run。
但是这个call    00C131AE把00C131AC压入堆栈后又给它加了7146,
使得返回地址不是那个CC断点处(其实那个地址根本就不执行),当然要跑空了

刚开始我也没太在意F7就能过去的,往后边看有很多类似的语句,并且还是在IAT表的解码循环里
这下完了,如果想F4跳出循环根本不行,原理是因为OD的F4是下一个硬件断点,然后就run到那里
然后可想而知,跑飞了。

其实这个花指令很容易去处,一个jmp完事,它并没有动其它寄存器
在循环里搜索类似指令,全部改了以后就可以F4跳出循环了。

其实这个call就是一个变形的jmp,我想如果在call中再加入一点东西,
修改一下寄存器的值(类似于一个加密过程),使得你不能轻易的jmp,
那么这一定是一个很好的花指令,壳的强度将大大提高

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

qzy0549 发表于 2011-6-23 11:09
给个连接地址,看看去
今夕望月 发表于 2011-6-23 11:41
fcwr007 发表于 2011-6-23 13:55
 楼主| wzb 发表于 2011-6-23 15:30
回复 fcwr007 的帖子

这是那个CreakMe,看你能不能从一堆call中走出来

123.rar

911.15 KB, 下载次数: 18, 下载积分: 吾爱币 -1 CB

djhuangshi 发表于 2012-1-7 16:24
牛人。真想跟你8师
xuhaiping 发表于 2012-1-7 19:57
高手高手高手
pinkly 发表于 2012-1-8 12:35
有心让你头晕。你怎么能不晕。。
1046135662 发表于 2012-1-8 13:09
高人啊!学习了。。
jiayunlei 发表于 2012-1-8 14:35
··顶下再说别的··
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-15 10:24

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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