关于MoleBox壳2.6.0修复问题
用PEID检查是MoleBox V2.3X 其实是2.6.0的壳请问下如何修复这壳啊!~我修复的都无法运行!~闷!~
能不能写个方法出来学习嘛!~
我修复好后都无法运行
[ 本帖最后由 夜冷风 于 2008-7-6 23:57 编辑 ] 这是2.6.0的 谁会壳啊!~请教下!~ 我已经脱掉了!~谢谢大家了!~~ 冒似是一个病毒! /:L /:L
你要根据杀毒软件的提示的病毒名来判断
汗!~我已经搞定了!~ esp定律脱壳,lordPE dump,ImportREC修复iat,18个指针无效,然后用等级1修复,修复完毕,结果不能运行。。
google搜索才知道那18个指针是molebox故意加密的,当他解压完某函数之后,会有个判断是否要加密该函数地址,大部分都是不加密,只有那18个是被改乱了地址的
比如那18个其中第一个原形是
004541707C801D4Fkernel32.LoadLibraryExA
如果用等级1修复的话就会变成其他不正确的函数
现在能做的就是找到加密部分,改成不加密,或者跳过加密
重新来,od载入后直接在454170下硬件写入断点, F9按3次之后看到454170被写入正确的函数指针LoadLibraryExA, 接下来他就要加密了
再按一次F9,可以看到这地址被加密修改了
004541700048B189提权工~1.0048B189 <-被改成了这个
此时看代码,上下分别有个VirtualProtect,上面那个就是用来把454170改成可写,下面的是恢复先前的读写属性,往上看可以看到
00485658 /74 45 je short 0048569F
这个就是判断是否需要加密,只要改成jmp跳过就一切ok,但由于此时的454170已经被加密,所以重来一次
因此最终脱壳过程为:
od载入,在454170处下硬件写入断点,3次F9(看到454170还未被加密), 修改
00485658 /74 45 je short 0048569F
把je 改成 jmp,
然后hr 12ffa0 下硬件断点(最初的esp定律), F9来到oep -> dump -> 修复iat -> ok
[ 本帖最后由 aj3423 于 2008-7-12 20:36 编辑 ] 两下F8
hr 0012ffa0
bp VirtualProtect
10下F9返回
把00485682 8901 mov dword ptr , eax
NOP掉。
F9一次,F8两次,再F7就到达OEP。IAT已经没有加密了。
页:
[1]