Nisy 发表于 2006-7-27 13:35:19

请教Arma+UPX双层壳脱壳

PEiD:Armadillo 3.00a - 3.61 -> Silicon Realms Toolworks

AramFP:

======== 27-07-2006 13:15:47 ========
E:\Program Files\Kongsoft\Easy CD Ripper\Easy_CD_Ripper.exe
★ 目标为Armadillo保护
★ 特征识别 = D038D028
保护系统级别为 (标准版)
◆所用到的保护模式有◆
标准保护 或 最小保护模式
【备份密钥设置】
无任何注册表操作
【程序压缩设置】
较好/较慢地压缩方式
【其它保护设置】

下断 BP GetModuleHandleA===》Shifi+F9 1次===》清除硬件断点后Alt+F9返回程序
找到Magic jump并修改
这里应该还有UPX的壳Alt+M 进内存看看
发现UPX标志
(奇怪 换了台电脑 调试的时候下BP GetModuleHandleA的时候出问题了~ 家里那台电脑上是按上面的步骤运行的)

之后我就不找到该怎么做了~ 请教大家一下 怎么脱这个壳

主页;http://www.8to32.com/
下载:http://www.8to32.com/ezcdr_inst.exe

冷血书生 发表于 2006-7-27 17:41:42

教程已出,请搜索!

Nisy 发表于 2006-7-27 19:59:14

冷血大哥指的是这个吧
http://www.unpack.cn/viewthread.php?tid=4239&highlight=

我看过马大哥的脱壳文章了 不过还是出了点问题
http://www.unpack.cn/viewthread.php?tid=6146&pid=58866&page=1&extra=page%3D1#pid58866

按照马大哥所说
运行RecImport,OEP=CF1A8,RVA=D617C,获取输入表,剪切2个无效指针,得到434个指针,抓取修复文件,保存为dumped_.exe。

RVA=D617C(这个是怎么得到的?)

然后运行修复的程序 就出现错误提示了(软件名我已经修改成原文件名了) 还望指点

machenglin 发表于 2006-7-29 01:03:05

原帖由 Nisy 于 2006-7-27 19:59 发表
冷血大哥指的是这个吧
http://www.unpack.cn/viewthread.php?tid=4239&highlight=

按照这个我脱了一次,完全正常呀!
请按照这个连接。
http://www.unpack.cn/viewthread.php?tid=4239&highlight=

00BCCFC8   FFD7            call edi                            ; 进入,里面是ARM的OEP!
00BCCFCA   8BD8            mov ebx,eax

[ 本帖最后由 machenglin 于 2006-7-29 01:12 编辑 ]

hbqjxhw 发表于 2006-7-29 01:07:02

一、下断 BP GetModuleHandleA===》Shifi+F9 1次===》清除硬件断点后Alt+F9返回程序
答:好像下的是HE断点,不是BP断点。

二、RVA=D617C(这个是怎么得到的?)
答:这个是一个很简单的问题,因为你到了OEP之后,随便找一个CALL进入看一看就OK了。
例如:
004CF1BE    E8 797AF3FF   CALL Easy_CD_.00406C3C

00406C3C    53            PUSH EBX----》到这里了。
00406C3D    8BD8            MOV EBX,EAX
00406C3F    33C0            XOR EAX,EAX
00406C41    A3 C0004D00   MOV DWORD PTR DS:,EAX
00406C46    6A 00         PUSH 0
00406C48    E8 2BFFFFFF   CALL Easy_CD_.00406B78                   ; JMP 到 kernel32.GetModuleHandleA
00406C4D    A3 64464D00   MOV DWORD PTR DS:,EAX
00406C52    A1 64464D00   MOV EAX,DWORD PTR DS:
00406C57    A3 CC004D00   MOV DWORD PTR DS:,EAX
00406C5C    33C0            XOR EAX,EAX


00406B78- FF25 78624D00   JMP DWORD PTR DS:         ; kernel32.GetModuleHandleA----》到这里了。
00406B7E    8BC0            MOV EAX,EAX
00406B80- FF25 74624D00   JMP DWORD PTR DS:                ; kernel32.LocalAlloc
00406B86    8BC0            MOV EAX,EAX
00406B88- FF25 70624D00   JMP DWORD PTR DS:                ; kernel32.TlsGetValue
00406B8E    8BC0            MOV EAX,EAX
00406B90- FF25 6C624D00   JMP DWORD PTR DS:                ; kernel32.TlsSetValue
根据JMP跳转的地址不就很快找到吗~~(冷兄是否支持这种看法?)

machenglin 发表于 2006-7-29 01:32:56

原帖由 Nisy 于 2006-7-27 19:59 发表
冷血大哥指的是这个吧
http://www.unpack.cn/viewthread.php?tid=4239&highlight=

我看过马大哥的脱壳文章了 不过还是出了点问题
http://www.unpack.cn/viewthread.php?tid=6146&pid=58866&pag ...

我又脱了一下,没有优化。

enjon 发表于 2007-9-19 12:39:39

支持马大哥,马大哥要多照顾像我这样的菜鸟啊!!!!

fenyun 发表于 2007-9-19 16:54:37

我安装后PEiD; ASProtect 1.2x - 1.3x -> Alexey Solodovnikov
好象不是Arma
页: [1]
查看完整版本: 请教Arma+UPX双层壳脱壳