找回密码
 注册
搜索
热搜: 回贴

脱壳技术,The Armadillo Software Protection System Version2.51 fu

2010-1-30 18:19| 发布者: admin| 查看: 82| 评论: 0|原作者: 慕容紫英


脱壳技术,The Armadillo Software Protection System Version2.51 full unpack cracked by zombieys(1千字
2008年06月23日 星期一 下午 03:38
Program : The Armadillo Software Protection System Version2.51

Type : Software Protection System

OS : Win9x/Me/2k

Protection : Armadillo?

Homepage : http://www.siliconrealms.com/

Download : http://mud.sz.jsinfo.net/per/aaron/files/protectors/win/armd250.zip





Cracked by : zombieys[CCG]

Release type : full unpack cracked

Release date : Apr 13,2002

Release name : cr-Armadillo251.exe (749,568 bytes)

Release Download : http://www.fuluck.com/newpage/cr-Armadillo251.rar





技术参考:

The Armadillo Software Protection System

Version 2.51



(1)找入口:

bpx VirtualProtect,在最后一次被中断后,按大约2次f12返回Armadillo领空,按f10带过一个call,在下一个call进入,继续按f10走到call edi处,edi里存放的就是入口地址



(2)脱壳



请参考Hying[CCG]老大的原文



首先一点是Armadillo是通过类似于调试的方法来运行程序的。

新版本Armadillo脱壳的一个难点是它的代码段是分页解密的,我估计它的做法是将代码段锁定,即将其属性设为不可读、写、执行,当被执行到时会产生一个页面保护错误,而调试程序就会捕获这个错误,将对应的页面解锁并解密,然后返回执行。

要对它脱壳的话可以考虑这样做,编一个小程序,如下:

push PAGE_READWRITE

push MEM_COMMIT

push 100000h <-申请内存的大小,可大一点。

push 0

call VirtualAlloc <-申请内存

mov edi,eax

mov ecx,???? <-文件映象大小减1000h

mov esi,401000h <-基址加1000h,有的程序不是这个值

rep movsb

push 80000000h

call Sleep

在原程序中找个空间,尽量不要在代码段范围内,将着这段程序放进去,然后执行它,执行完后,你申请到的内存中就放的是解密后的程序,只要DUMP出来,再加一个可用的文件头,再修复输入表什么的就可以执行了。



zombieys[CCG]

2002.04.13


最新评论

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 23:32 , Processed in 0.179694 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部