-
-
[原创]加壳解决杀毒软件误报
-
发表于:
2014-3-4 15:13
5873
-
就标题而言,好像给人印象更多的是,加了壳才报各种病毒。其实也不尽然,掌握方法和策略至关重要。根据我开发
VCProtect 的经历,总结了几条经验与大家分享。
先说一下杀毒软件的扫描机制,谈杀毒软件就离不开病毒。
DOS时代是个真正没有硝烟的战场,各种病毒技术层出不穷,而代码变形技术就是那个时代的产物,为了应对杀毒软件的特征扫描,病毒会将自身加密,每次加密特征码都不一样。一个病毒上百万种的变种毫不夸张,这时杀毒软件处于下风,必须收集足够多的特征才能有效定位病毒体,时至今日依然如此,只是多了一些辅助机制。精确定位病毒的时代一去不复返了。
WIN32时代,似乎杀毒软件更忙了,既需要应付病毒也需要对付木马等。WIN32是API的时代,BIOS调用已然不在,IO操作都需要通过API调用来完成,病毒木马的重要属性就是完美的复制自己,必须要调用API。所以杀毒软件盯上了PE的导入表特征,再结合代码特征,虚拟机解码等进行扫描。
也就是说,如果没有变形技术,代码没有加密,也就不会有误报了。当然杀毒软件也不会头疼了,终结这种现象的恰恰是我们自己,这些都是废话。。。
综合以上行为,我们需要做如下处理:
1.变形或者加密,解决代码特征
2.处理导入表
说明,第一点变形或加密,解决代码特征问题,需要有一个好点的变形加密引擎,这里不需要整个PE加密或变形,适度就行不然影响程序运行效率,最理想的是只将特征码消除即可。变形加密引擎要足够随机,必须抗虚拟机解码,不然起不到丝毫作用。
第二点,处理导入表,根据病毒木马特征进行屏蔽,例如文件,注册表相关API要保护或隐藏起来。处理起来需要根据经验多试几次。
使用
VCProtect 针对以上几点可以做到不报毒,还有一点需要说明,小的PE文件很容易报毒,看来也不是越小越好。似乎有点做广告的嫌疑了,不过我想其他加壳工具也应该能做到。
最后,杀毒软件厂商也不希望看到误报情况,只是各位技术太牛,杀软处理不了。也没办法大家还要吃饭的,只是希望大家遇到报毒别像中枪似的。
www.vcprotect.com
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!