安全中国首页 > 文章中心 > 脱壳技术
 

Armadillo v3.01标准加壳方式的脱壳--Konvertor V3.30(图)

更新时间:2008-5-13 0:16:53
责任编辑:果果龙
热 点:

FTBirthdayArmadillo全程教程--第一章.标准加壳方式

第一章.标准加壳方式

[实例解析三] Armadillo v3.01标准加壳方式的脱壳--Konvertor V3.30

※软件简介※: Konvertor V3.30是一个图片、音乐、文字及影音格式文件的转换程序,它总共可以转换135种文件格式,包含25种音乐格式、4种影音格式、105种图片格式及1种文字格式。

软件大小:6439 KB

软件语言:英文

软件类别:国外软件 / 共享版 / 图像转换

运行环境:Win98/NT/2000/XP/

软件添加:乱马

下载次数:1356

开 发 商:http://www.logipole.com/download_konv_us.htm

下载页面:http://www.downxp.com/soft/2638.htm

※软件限制※:The shareware version of this software can be freely used for 30 days.

You will have to register next.

※破解工具※:Ollydbg1.09、FI 3.01、DriverSuite2.7中的softice4.2.7

※※※※※※※※※※※※※※※※开始吧※※※※※※※※※※※※※※※※※※

FI 3.01侦测知Armadillo v3.01加壳

记得jwh51在Armadillo标准加壳的程序的脱壳和引入表修复方案中说:"用过ARMADILLO的人都知道,用它加壳有两种方式,一是使用COPYMEMII,一是标准加壳.用COPYMEMII的一般可用DILLODUMP脱(当然也有时脱不了),而用标准加壳用DILLODUMP是脱不了的."

Konvertor V3.30采用了Armadillo标准加壳。有30天试用期。并且在程序退出时出现提示框如图:

所以,如果脱了壳,上述现象都将没有了.现在开始脱壳历程.!!

如何DUMP(转储)Konvertor v3.30

第一步,扫除障碍

[障碍一]挫败anti-debug代码,

OLLYDBG载入程序.在调试选项中忽略所有异常,这样可以少按SHIFT+F9.

[方法一]

IsDebug 1.4插件去掉Ollydbg的调试器标志。

[方法二] 重新设置检测IsDebuggerPresent API的那个字节!

Bp IsDebuggerPresent

现在按F9运行程序,当遇到异常,一直按SHIFT+F7或者F8,直到中断于

在这张图中我们可以看到OllyDBG中断在API IsDebuggerPresent(红色), 然后按F7步进到第三行(白色) 77E52749 0FB640 02 MOVZX EAX,BYTE PTR DS:[EAX+2]

一旦我到达那儿,看一下disassembly,在那儿我们可以看到的内容如下图:

这儿我们可以看到在我的机器中偏移是7ffdf002,包含了值01.这个地址在其它机器中可能会不同. 值01意味着调试器被检测到了,所以写下这个地址,在任何时候我们在ollydbg中运行程序,都必须改变它为00,从而避免被packer检测到.记住改变此值为00在任何时候在ollydbg中运行或重运行程序. 记下这个地址,以后经常会用到的。

我们将以重启ollydbg (ctrl+F2)来结束第一步,到转储窗口(DUMP)单击右键选择"前往表达" 7ffdf002或者其它任何先前你记下的地址,然后改变它的值从01变为00.

[障碍二]击败检测系统时间的代码

如果系统时间在安装SoundEdit Pro后修改过,程序会检测到,并警告修改系统时间而退出程序. 在我安装完Konvertor V3.30后,我改了一下系统时间,在启动时Konvertor V3.30就提示发现时间不对,需要从作者那儿得到帮助.

如下方法可挫败它的这个保护。打开softice4.2.7,ctrl+D调出softice

bpx getlocaltime

g回来点击ok按键,中断两次后,先别忙g退出.

经过测试内存地址00CB4677处的test al,al是关键,所以bpx 00CB4677再g.

((((

00CB4672   E8 08060000      CALL 00CB4C7F

00CB4677   84C0             TEST AL,AL      ====>走到这里将AL改为00000000即可 

00CB4679   74 1C            JE SHORT 00CB4697

00CB467B   E8 56050000      CALL 00CB4BD6   ====>这个call警告修改系统时间

))))

中断后,R EAX 00000000修改寄存器EAX的值为0,然后BC *清除所有断点.

先别忙退出,继续BPX VirtualProtect.至此击败它了.

1 2 3 下一页

 
相关文章
48小时热门文章
 
48小时热门软件
48小时热门动画