返回列表 发帖

[讨论]工程化的免杀方案

[讨论]工程化的免杀方案
议题作者:husheng34
信息来源:邪恶八进制信息安全团队(www.eviloctal.com

说到免杀和杀软之间的关系,就像矛和盾之间的关系,永远不可能有攻不破的 盾 和 守不住 的矛,

但矛有好坏之分,免杀也有高下区别,

有的免杀可以经年累月,有的旦夕湮灭,

究其技术上的原因,排除其它如流传范围,病毒上报等因素,

主要还是免杀方案的复杂度,越复杂的技术,免杀时间越长,

因为杀软工程师需要的调试时间越长,可反过来,做免杀的时间也越长,

所以,如果我们能用效少的时间,换取杀软工程师大量的时间,

那意味着你的软件能活的更久.

//////////////////////////////////////////////////////
如何提高这个比值,我们想想最常用的免杀方案,也许可以找到答案,

自己最省事,杀软最头痛的方法,

很多人会说 "壳",老鸟可能会说变形病毒,可他们都存在一些另人不满意的问题,

针对传统的壳和变形病毒,我们可以抽出他们的部分特点归纳如下:
..................

好处
1:使用简单,方便.
2:通用性强,一个壳可以对应很多种软件.
坏处
1:不能对文件感染软件加壳.
2:自身抗杀软能力不强,因为这不是并不是大多数壳的目的.

..............................
变形病毒

好处
1:可以实现所有种类的黑软,只要你有时间.
2:抗杀软能力很强,设计目的.
坏处
1:编写复杂,调试化时间.
2:大部分变形病毒 藕和性 很高,可谓触一发动全身,很难重复使用以前代码.

基本你化的时间,不见得会比杀软程序少,更本无法提高比值,

不过是化了更多的时间,让杀软化更多时间破解而以.

//////////////////////////////////////////////
我们如果能综合以上两者特点,就能得到最好的结果.

一个能自己变形,并感染文件,的"壳"

针对文件特征码,只需要修改变形引擎,但内存特征没什么好办法

/////////////////////////////////

以下是具体方案:采用分层结构

1:变形解码部份(由变形引擎生成)
解密真实代码


2:PE加载部份.
把第三部的PE文件链,

解压还原,
内存加载,
动态库链接

3:有效的PE文件链

.data
PE1
MZ00012
.........
PE2
MZ000fdf0
.........
PE3
MZ000fdfd
.........
..............

但这种方法,主要好处有:

1:查杀困难,查杀比免杀困难的多(变形病毒特点)

2: 多个软件,只需一次免杀.

3:代码段复用,模块本身可以导出函数供 被加载文件使用,

比如HOOK,隐藏自身等.

4:模块互换方便,传说中的自变形?

缺点也很严重

1:只能加载有 文件重定位 的文件,

如DLL文件,
或编译中添加重定位,
或反汇编引擎 添加重定位表.

2:技术复杂,不能保证所有被加载的文件都能正常工作.

其实一般软件自写壳,免杀就足以,以上方案主要针对要感染文件的软件.

返回列表