能力值:
( LV9,RANK:3410 )
|
-
-
26 楼
CC修复代码需要针对不同程序修改
先搞明白此教程中目标程序的修复代码
自然就明白其他程序了
|
能力值:
(RANK:10 )
|
-
-
27 楼
顶,狠人呀.哎.....
|
能力值:
( LV2,RANK:10 )
|
-
-
28 楼
牛。。。。。。。。。。。。。。。。
|
能力值:
( LV9,RANK:250 )
|
-
-
29 楼
my god,方法复杂,用si 和od 联手可能简单些.
|
能力值:
( LV8,RANK:130 )
|
-
-
30 楼
有几处是有对应关系的,需要注意,不同版本的arm可能不一样:
004AB089 8D95 34ECFFFF lea edx,dword ptr ss:[ebp-13CC] //eip
004AB08F 52 push edx
004AB090 E8 FB5EFDFF call Armadill.00480F90
...
004AB212 8B8D 3CECFFFF mov ecx,dword ptr ss:[ebp-13C4] //eflags
004AB218 81E1 D70F0000 and ecx,0FD7
004AB21E 898D 6CEBFFFF mov dword ptr ss:[ebp-1494],ecx
004AB224 8B95 5CEBFFFF mov edx,dword ptr ss:[ebp-14A4]
004AB22A 81E2 000000FF and edx,FF000000
004AB230 C1EA 18 shr edx,18
004AB233 8995 60EBFFFF mov dword ptr ss:[ebp-14A0],edx
004AB239 8B85 5CEBFFFF mov eax,dword ptr ss:[ebp-14A4]
004AB23F 25 FFFFFF00 and eax,0FFFFFF
004AB244 8985 64EBFFFF mov dword ptr ss:[ebp-149C],eax
004AB24A 8B8D 28ECFFFF mov ecx,dword ptr ss:[ebp-13D8] //ecx
004AB250 51 push ecx
004AB251 8B95 6CEBFFFF mov edx,dword ptr ss:[ebp-1494]
004AB257 52 push edx
0044A0AD 89B5 34ECFFFF mov dword ptr ss:[ebp-13CC],esi //eip
0044A0B3 60 pushad
0044A0B4 E8 87010000 call 0044A240
0044A0B9 61 popad
0044A0BA 75 FE jnz short 0044A0BA
0044A0BC 60 pushad
0044A0BD 8DB3 00030000 lea esi,dword ptr ds:[ebx+300]
0044A0C3 33C9 xor ecx,ecx
0044A0C5 8DBB 80040000 lea edi,dword ptr ds:[ebx+480]
0044A0CB 8B06 mov eax,dword ptr ds:[esi]
0044A0CD 8985 3CECFFFF mov dword ptr ss:[ebp-13C4],eax //eflags
0044A0D3 8B46 04 mov eax,dword ptr ds:[esi+4]
0044A0D6 8985 28ECFFFF mov dword ptr ss:[ebp-13D8],eax //ecx
这样的脱壳方法最初目的只是为了在win2000下实现脱壳,很多其他教程都只能在XP下完成,我的机器是win2000,没办法模仿他们的方法才不得已而为之
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
慢慢消化
|
能力值:
( LV12,RANK:290 )
|
-
-
32 楼
看不懂,慢慢学
|
能力值:
( LV9,RANK:290 )
|
-
-
33 楼
只有顶了,没有说了
|
能力值:
( LV4,RANK:50 )
|
-
-
34 楼
我看什么软件碰到你们两个BT,都会给脱的赤裸裸的,你们太坏了,哈哈
|
能力值:
( LV2,RANK:10 )
|
-
-
35 楼
最初由 xy2000 发布 我看什么软件碰到你们两个BT,都会给脱的赤裸裸的,你们太坏了,哈哈
呵呵,是啊是啊!
|
能力值:
( LV2,RANK:10 )
|
-
-
36 楼
你简直太伟大了!竟然能把Armadillo V4.40脱光!这个软件是非常棘手的,由此可见,你差不多应该是哪个汉化Ollydbgd的那个FLY吧?请原谅我的无知。
|
能力值:
( LV9,RANK:2130 )
|
-
-
37 楼
以前听说可以直接不用imprec来修复arm的输入表不知道for 4.x可不可??
|
能力值:
( LV9,RANK:3410 )
|
-
-
38 楼
To yuguan:
那个版本的OllyDBG是聆风听雨汉化的
To loveboom:
慢慢修应该可以,不过没必要
|
能力值:
( LV9,RANK:170 )
|
-
-
39 楼
我在用脚本是出现提示:设置字节在地址***到CC中(命令代码INT3已用作断点)为何会这样。
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
呵呵~有个专用脱壳就好
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
文中的如下内容:
“确定”后F12,OllyDBG暂停在EP死循环处
004CD000 EB FE jmp short 004CD000
//暂停
还原EP Code的EBFE为60E8,Resume脚本 ★
没搞明白,应该怎么操作?
|
能力值:
( LV9,RANK:3410 )
|
-
-
42 楼
兄弟,你是问F12还是还原EP Code还是Resume脚本
这些基本的调试知识自己不去啃书掌握转化为自己的技能是很难前进的
戒骄戒躁循序渐进
|
能力值:
( LV2,RANK:10 )
|
-
-
43 楼
请问一下:
还原EP Code的EBFE为60E8,Resume脚本 ★
RESUME时,会出现在这个线程是挂起状态,恢复也不行。。。
EP Code的代码已经还原(为55xxxxxx)
|
能力值:
( LV9,RANK:3410 )
|
-
-
44 楼
你需要新开一个OllyDBG去Attach
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
fly正好在,别跑。。。:)
这个挂起的问题已经解决
可能是调试时有未结束的进程造成的。
现在又有个问题:
Armadillo.fiXed.IT.osc已经成功执行完成
然后F8执行到CALL 解密
看堆栈:
CODE: [Copy to clipboard]
--------------------------------------------------------------------------------
00129500 00401000 地址
00129504 00049001 大小 → 修改为:49000 ★
其实就是解密PE header下面区段的代码
但是此区段的Size为49000,这里多了1,将导致其下区段被加密,所以我们要修改这里为49000
在数据窗口里定位00401000,F8步过上面CALL时会发现00401000段的代码已经全部解密出来了!
---------------------------------
我看到的第一个是00401000,但第二个不是49001,而是另外的值,比401000这个区段的大小差了1FF,如果不改执行下去会在:
-------------------------------
00F9D366 83C4 0C add esp,0C
00F9D369 8B85 FCD7FFFF mov eax,dword ptr ss:[ebp-2804]
00F9D36F 8BB5 0CD8FFFF mov esi,dword ptr ss:[ebp-27F4]
00F9D375 2B70 34 sub esi,dword ptr ds:[eax+34]
00F9D378 E8 542E0000 call 00FA01D1----这里会抛异常
--------------------------------
注:调试设置里已经按要求设置了忽略异常。
我调试的程序经检测是:
★ 目标为Armadillo保护
Version 4.40.0250 (Custom Build)
保护系统级别为 (专业版)
◆所用到的保护模式有◆
屏蔽调试器
双进程模式
使用输入表乱续模式
使用防内存补丁保护模式
【备份密钥设置】
固定的备份密钥
【程序压缩设置】
最好/最慢地压缩方式
【其它保护设置】
|
能力值:
( LV2,RANK:10 )
|
-
-
46 楼
上述问题应当已经解决。
异常我跳了过去
---------------
但是此区段的Size为49000,这里多了1,将导致其下区段被加密,所以我们要修改这里为49000
-----------------
这个SIZE我没做修改,不知道有没有关系?
现在已经处理到:
dump出程,并对IAT进行了修复,我是新加了一个section,生成的文件IDA可以反编译,API可见,应当没问题。
明天再继续下面的CC,谢谢FLY的文档。
|
能力值:
( LV9,RANK:3410 )
|
-
-
47 楼
恭喜进步
一份耕耘一份收获
|
能力值:
( LV6,RANK:90 )
|
-
-
48 楼
上次我按照这个方法脱了一个程序,今天脱另一个程序却出现了问题:
1、生成的那个bin文件的size不是4的倍数,多了一个字节,造成iat读取错误
我的处理方法是删除了中间的一个字节,发现函数都正常了。
不知道这个错误是不是hexr说的 ollyscript.dll的问题?
2、处理iat乱序的时候,上面的这个bin文件里面的内容发现不全,没有找到user.dll库函数,造成处理乱序iat时错误,最后我是通过arminline解决了,不知道是不是我操作问题,我觉得应该不会
3、关于cc,按照那一大段代码,执行后停不下来 最后发现运行在死循环了
009209A4 3C 05 cmp al,5
009209A6 - 75 FE jnz 009209A6
死在这里,不知道什么原因?
希望fly斑竹指点一下
|
能力值:
( LV6,RANK:90 )
|
-
-
49 楼
想问问大侠,是新的ARM带KEY如何去掉,有正确的KEY,以前的方法用上好像都不行了,工具也没办法,晕
|
能力值:
( LV2,RANK:10 )
|
-
-
50 楼
Alt+M打开内存察看窗口,设置00401000、0044A000、0047D000段为完整权限。
请问下大侠,为什么47D000段要设完整权限?
我看代码中并为用到47D000呢?
|
|
|