能力值:
( LV2,RANK:10 )
|
-
-
2 楼
同顶,学习一下
|
能力值:
( LV6,RANK:90 )
|
-
-
3 楼
拿去汉化吧。这个壳还算简单,只不过垃圾指令比较多,耐心点挺容易的,如果用OD注意隐藏标题,会检测。而且VB的更容易,在ThunRTMain入口断下上层就是OEP了,修复下入口点,输入表即可。
|
能力值:
( LV3,RANK:20 )
|
-
-
4 楼
非常感谢您的帮助!
我现在正在做汉化,很快汉化版会上传供车友使用!
再次感谢!
另,俄罗斯人又发了新的版本--0.2.15版,我也在作汉化准备,能否将您的脱壳方法告诉我,我想学习下手动脱壳。
我用过ESP定律、API特征等方法,甚至我花了一个多星期做单步跟踪,但可能方法不对,没有一次找到OEP,请您指点下,谢谢!
|
能力值:
( LV6,RANK:90 )
|
-
-
5 楼
上面我有讲,直接在MSVBVM60.ThunRTMain下断即可。
简单跟您说下,这个壳会经过以下过程检测调试器。
IsDebuggerPresent
CheckRemoteDebuggerPresent
CreateFileA NTICE
FindWIndowA OllyDbg
FindWindowA FileMonClass
里面垃圾代码比较多,如果不跟,对于这款软件告诉您比较简单的方法。
OD载入后在LoadLibraryA下断,F9第一次会载入MSVBVM60.DLL。
0018FF40 002402ED /CALL 到 LoadLibraryA 来自 002402E7
0018FF44 00695DDC \FileName = "MSVBVM60.DLL"
F9再次断在kernel32.dll
0018FF58 00C291D9 /CALL 到 LoadLibraryA
0018FF5C 00C29005 \FileName = "kernel32.dll"
这时在MSVBVM60.ThunRTMain下断,去掉LoadLibraryA断点,F9跑起来断下。
729435A4 MSVBVM60.ThunRTMain 55 push ebp
729435A5 8BEC mov ebp,esp
729435A7 6A FF push -1
729435A9 68 20989572 push MSVBVM60.72959820
729435AE 68 B9BCA272 push MSVBVM60.72A2BCB9
729435B3 64:A1 00000000 mov eax,dword ptr fs:[0]
729435B9 50 push eax
看堆栈,
0018FF40 00C710B6 ELMConfi.00C710B6
0018FF44 00424828 ELMConfi.00424828
0018FF48 00C2BB26 返回到 ELMConfi.00C2BB26 来自 ELMConfi.00C2BEE2
0018FF4C 00C2B324 返回到 ELMConfi.00C2B324 来自 ELMConfi.00C2B6E0
记下ESP+4的值,这里的上层CALL是位于解密用到的区段内,垃圾代码比较多,我并没有将入口放在这个段内。后期是可以精简掉的,现在找个位置构造一个入口就可以了。
像这样。
00696F32 68 28484200 push ELMConfi.00424828
00696F37 FF15 60124000 call dword ptr ds:[401260] ;MSVBVM60.ThunRTMain
将EIP改为00696F32,堆栈ESP = ESP+8,修复一下输入表就可以了。
|
能力值:
( LV3,RANK:20 )
|
-
-
6 楼
谢谢,谢谢!
按您的做法找到了:
0012FF88 00408284 jmp 到 MSVBVM60.ThunRTMain
0012FF8C 00CA08C4 ELMConfi.00CA08C4
0012FF90 00424F98 ELMConfi.00424F98
0012FF94 00C4F3E7 返回到 ELMConfi.00C4F3E7 来自 ELMConfi.00C4F744
0012FF98 00000000
1、我自己以前没看堆栈。
2、我的OD有问题,ThunRTMain下断不了,换OD解决。
再次感谢!
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
还有一层壳UPolyX v0.5 *,是VMProtect2.46> By:SoySauce[U.p.K *
|
能力值:
( LV3,RANK:20 )
|
-
-
8 楼
常规的脱壳方法脱壳后程序能正常运行,但不能汉化,截图如下:
脱壳前:
脱壳后:
下面是OEP:
|
能力值:
( LV3,RANK:20 )
|
-
-
9 楼
用LoadPE的PE编辑器比较了正常可以汉化的文件和脱壳不彻底的文件,发现RVA不一样,见图:
正确的RVA:
错误的RVA:
将上图中的RVA试探性地更改为10,问题解决(暂时)。
现在查找正确的RVA的确定方法!
请大家指点下。
谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
要感谢坛友viden的热心帮助呀!
|
能力值:
( LV3,RANK:20 )
|
-
-
11 楼
是的,非常感谢,他的解答非常详细,给我指出了路子。
|
|
|