mycsy 发表于 2008-10-9 22:51

脱一个变异壳 UPX$HiT 0.0.1 -> dj-siba  

【破解作者】 MyCsy
【作者邮箱】 MyCsy1@Gmail.Com
【作者主页】 http://hi.baidu.com/hackcsy
【使用工具】 OllyCAU PEID
【破解平台】 盗版XP
【软件名称】 UnPackTest.exe
【下载地址】 不知道了忘记哪里得到的
【软件简介】 一个变异壳 UPX$HiT 0.0.1 -> dj-siba
【加壳方式】 压缩壳
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------
【破解内容】


OD载入
出现提示……………如何如何让 不用管他 直接否掉!

004601E8 >94xchgeax, esp //载入后停在这里

寄存器处 ESP 0012FFC4在这里我尝试了ESP定律 程序会运行

(典型忽悠人的ESP)

换一个方法

内存法 该方法以前看到小生大大经常使用 这次尝试下!

ALT+M

Memory map, 条目 24
地址=00453000
大小=00006000 (24576.)
属主=UnPackTe 00400000
区段=LoveYT
包含=代码
类型=Imag 01001002
访问=R
初始访问=RWE


Memory map, 条目 25
地址=00459000
大小=00008000 (32768.)
属主=UnPackTe 00400000
区段=.rsrc
包含=SFX,数据,输入表,资源
类型=Imag 01001002
访问=R
初始访问=RWE

在地址=00453000处 F2下断F9运行

回到OD载入时

004601E8 >94xchgeax, esp

在打开内存窗口

在地址=00453000 处 F2下断 F9运行

停在

004601D6B9 5D010000 mov ecx, 15D
004601DB803408 08 xor byte ptr , 8//停在这里!
004601DF^ E2 FA loopd short 004601DB //这里回跳,不跳!
004601E1FFE0jmp eax //单击一下这里 F4 (运行到此处!继续F8单步!)
004601E3B9 8B508F83 mov ecx, 838F508B


=============
F8 开始单步调试看看凡是遇到回跳都F4 走过~ 继续F8单步!



0045800C48dec eax
0045800DF2:AE repne scas byte ptr es:
0045800F55pushebp; kernel32.7C800000//走到这里 我以为是OEP 经过DUMP 发现不是!我就想到了是否需要修复?修复时无法获取输入表!
00458010FF96 E0EF0500 calldword ptr
0045801609C0oreax, eax
0045801874 07 jeshort 00458021
那就继续F8吧!


0045801A8903mov dword ptr , eax
0045801C83C3 04 add ebx, 4
0045801F^ EB D8 jmp short 00457FF9 //这里事一个回跳。
00458021FF96 E4EF0500 calldword ptr //常规的在这句F4但是出现问题了! 在这里F4就会运行!尝试多次未果!那就看看下一行代码吧 运行到这里 程序会启动 那就说明OEP不远了!
0045802761popad// F4运行到这里!
00458028- E9 C80FFBFF jmp 00408FF5//这是一个不知道 回跳还事 向下的跳转 但是跳的较远 尝试下!
0045802D0800orbyte ptr , al
0045802F0000add byte ptr , al

===================

跳到

00408FF555pushebp

这里 这里就事OEP了!

无须修复 即可运行!






--------------------------------------------------------------------------------
【破解总结】


脱壳的整个过程呢 很简单

用到了 内存法 和单步法

鉴于本人就是个菜鸟 不敢妄加总结

以免 误人子弟!

就三个字吧================多动手!

如果我不多加尝试的话 说不定 就假死在了0045800F55pushebp这个假OEP中了!

--------------------------------------------------------------------------------
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

小生我怕怕 发表于 2008-10-9 22:54

知音你怎么不把壳丢出来我顺手也练习下啊
(此知音非彼知,后面的朋友不要误会,实在因为我们楼主QQ秀是女人的,所以实难辨别性别,出于礼貌,叫其知音)

faust 发表于 2008-10-10 01:13


嘿嘿~~~
学习了~~~

mycsy 发表于 2008-10-10 23:33

引用第1楼小生我怕怕于2008-10-09 22:54发表的:
知音你怎么不把壳丢出来我顺手也练习下啊
(此知音非彼知,后面的朋友不要误会,实在因为我们楼主QQ秀是女人的,所以实难辨别性别,出于礼貌,叫其知音)
の…… 这么帅的一个小伙让瞎子看 也知道是男人啊
多么完美的男人啊 要是有下辈子我就做女人 然后嫁给一个像我一样的男人HOHO!

声明一下 我是男人 真的!

小生我怕怕 发表于 2008-10-10 23:52

引用第3楼mycsy于2008-10-10 23:33发表的:

の…… 这么帅的一个小伙让瞎子看 也知道是男人啊
多么完美的男人啊 要是有下辈子我就做女人 然后嫁给一个像我一样的男人HOHO!

声明一下 我是男人 真的!
实在是有够恶心,那么自恋的可怕!

`·新手上路_ 发表于 2008-10-11 00:59

引用第1楼小生我怕怕于2008-10-09 10:54 PM发表的 :
知音你怎么不把壳丢出来我顺手也练习下啊
(此知音非彼知,后面的朋友不要误会,实在因为我们楼主QQ秀是女人的,所以实难辨别性别,出于礼貌,叫其知音)

贡献上UPX$HiT 0.0.1 -> dj-siba壳的UM一个和国外脱壳视频一个。

mycsy 发表于 2008-10-11 01:56

已经 脱掉!

完全一样的!

只是在


0040820349dec ecx
00408204^ 75 F7 jnz short 004081FD //此处
00408206^ E9 63FFFFFF jmp 0040816E //和此处是两个跳
0040820B90nop//如果在这里F4就会运行 同时就暴露了OEP就在附近了HOHO
0040820C8B02mov eax, dword ptr //在这里F4!

unpack 发表于 2008-10-11 09:54

0040820B90nop

脱壳基础中好像天草说过如果向上跳 下面是call和NOP的时候不能在那儿下段,
o(∩_∩)o...学习了mycsy 的脱壳了

zws0306 发表于 2008-10-16 13:55

我也脱了,我是用两次ESP 脱的,第一次脱完查壳是UPX的,在打开UPX壳后重脱,最后脱出来了,是VC++的,哈哈。
我是刚刚来贵论坛,如果发错了请前辈见谅啊,我会积极改进的

lovaya 发表于 2008-10-19 19:45

可似乎很容易就脱了,要清除那个NAG吧,刚学脱壳破解,还没学到哪里
页: [1]
查看完整版本: 脱一个变异壳 UPX$HiT 0.0.1 -> dj-siba