首页
社区
课程
招聘
[征求]压缩壳汇总
发表于: 2005-7-23 13:01 7300

[征求]压缩壳汇总

2005-7-23 13:01
7300
[征求]压缩壳

压缩壳中除了UPX,Aspack,PECompact,Mew,NSPack之外,有没有更多好的了?

我需要一个很好的压缩壳,压缩后并留有一定的空间自己写代码的.

大家推荐推荐吧,最好能有下载地址.

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 108
活跃值: (42)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
Upack
2005-7-23 13:09
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
3
最初由 peaceclub 发布
[征求]压缩壳

压缩壳中除了UPX,Aspack,PECompact,Mew,NSPack之外,有没有更多好的了?

我需要一个很好的压缩壳,压缩后并留有一定的空间自己写代码的.
........


自己写代码的空间可以自己加啊,比如重新申请一个内存块,内存块的大小就是压缩后的大小加上你需要的代码空间。
2005-7-23 14:17
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
4
发现一个站点,不错:
http://www.softpedia.com/get/Programming/Packers-Crypters-Protectors/

我的意思是压缩以后有个静态的00000..代码块.现在好多压缩壳为了最大化压缩文件大小,把EXE弄得太挤,连加section都不行了.
刚发现eXProcessor也还不错!
2005-7-23 14:46
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
5
得到一个静态的00000代码块,默认的就是个静态的00000块。楼主看看下面的方法怎么样:
invoke VirtualAlloc,NULL,dwSize,MEM_COMMIT        ,PAGE_READWRITE   ;dwSize就是压缩后的大小(可以用GetFileSize)加上你需要的代码空间大小。
mov edi,eax       ;
mov esi,pOriginal ;指向你压缩后的文件内存映象
rep movsb

完了调个WriteFile不就可以了?
2005-7-23 14:55
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
6
这样的话,不就相当于exe屁股后面+数据吗?后面的数据不属于任何section,能放代码执行吗?方面做inline patch吗?
2005-7-23 15:13
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
7
可以修改PE嘛,让它归属于某一个区段。
2005-7-23 15:15
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
8
感谢qfejj.
我给你一个mew11压缩过的 "Windows按纽突破专家".
附件:test1.zip
你加数据,然后修改一下看看.
在加的数据里做个jmp oldOEP.
2005-7-23 15:22
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
9
关键是我想在不改变文件大小的情况下来实现.
2005-7-23 15:24
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
10
好,我下了看看。你指的文件大小是什么时候的大小?
2005-7-23 15:25
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
11
压缩后的大小.
比如 500k => 300k
发现300k里没有空间安全地写自己的代码,在不能改变文件大小的情况下,如何解决?
2005-7-23 15:27
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
12
既然没有空间安全地写自己的代码,不改变大小那写到哪里去?壳检查文件的大小?不改变大小我是做不到了。
2005-7-23 15:33
0
雪    币: 255
活跃值: (207)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
13
你的方法我测试了,改变section大小,可以通过的.

主要现在面临的问题是,exe资源里有个dll,我发现dll里不可以写代码做patch,脱壳后再压缩发现比原先文件大了10k左右,用peexplorer替换后整个文件就作废了.
也就是面对替换的资源比exe原资源大的时候,有没有好的解决方法?
2005-7-23 15:38
0
雪    币: 261
活跃值: (162)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
14
你替换的文件开始地址是正确的,多出来的部分把原来的程序其他内容覆盖了,文件肯定作废;你用Ultraedit对着比较就知道了。我知道的是用ultraedit在资源部分最后填充足够的字节,不过这样一来后面的地址全变了,势必跟着要修改各种指针,那工作量太大了。
2005-7-23 15:53
0
雪    币: 439
活跃值: (106)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
最初由 peaceclub 发布
你的方法我测试了,改变section大小,可以通过的.

主要现在面临的问题是,exe资源里有个dll,我发现dll里不可以写代码做patch,脱壳后再压缩发现比原先文件大了10k左右,用peexplorer替换后整个文件就作废了.
也就是面对替换的资源比exe原资源大的时候,有没有好的解决方法?


这个有点像是木马的,木马生成都是这样的.

你用生成的文件直接PATCH,然后再压缩,最重要是大小最好可以保持不变.手动优化一下试试.

如果大小差不了多少,直接把DLL的代码直接取代之前的代码,应该可以正常生成DLL文件了,

生成之后 的DLL也就是你PATCH后的那个了
2005-7-23 17:36
0
雪    币: 223
活跃值: (70)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
16
那个替换的资源我也搞过,试过n多方法,都失败.如果在后面贴个资源的话,资源的va和size是可以修改定位的,但是文件偏移这个好像比较麻烦.后来找朋友帮忙弄了下.他的做法是把你修改的整个文件当自定义资源,载入一个dll里.然后修改主程序的LoadResource的调用,让他从dll里弄.这样多了个文件,但是还是比较不错的了
2005-7-24 09:04
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
Upack这个壳怎么办》?
2005-7-25 12:52
0
游客
登录 | 注册 方可回帖
返回
//