赞
踩
应该说每一类型的恶意软件所实施的反检测技术都是不一样的(恶意软件可以分为病毒、木马、僵尸程序、流氓软件、勒索软件、广告程序等),虽然本文会对所有相关的反检测技术都进行介绍,但我们还是会将注意力放在stager阶段的meterpreter这种有效载荷的工具上,因为几乎所有的恶意软件的攻击命令的执行都必须依靠 meterpreter来实施攻击,例如: 提权、凭证窃取、进程迁移、注册表操作和分配更多的后续攻击, 另外,MetasploitFramework是一个缓冲区溢出测试使用的辅助工具,也可以说是一个漏洞利用和测试平台,它集成了各种平台上常见的溢出漏洞和流行的shellcode,并且不断更新,使得缓冲区溢出测试变的方便和简单。
注:ShellCode的特点就是把它嵌入到任何进程中都能够运行
1.基于签名的检测:
传统的防病毒软件很大程度上依赖于签名来识别恶意软件。工作原理如下:
当恶意软件被杀软公司采集后,杀软后台的研究人员以及动态分析系统便会对这些样本进行分析,一旦确定是恶意软件,后台便会提取恶意文件的标签并将其添加到反病毒软件的签名数据库中。
2. 静态程序分析:
静态程序分析是在不实际运行程序的情况下进行的分析。
大部份的静态程序分析的对象是针对特定版本的源代码,也有些静态程序分析的对象是目标代码。
3. 动态程序分析:
动态程序分析是通过在真实或虚拟处理器上执行程序而执行的分析。为了使动态程序分析真实可信,我们必须要能够对各种目标程序的行为进行测试。
4.沙盒分析技术:
沙盒是一个观察计算机病毒的重要环境,用于为一些来源不可信、具备破坏力或无法判定程序意图的程序提供试验环境。
5.启发式分析:
启发式分析是许多计算机防病毒软件使用的一种方法,其被设计用于检测未知的计算机病毒,以及新的病毒变体。
启发式分析是基于专家的分析,利用它可以对已知或未知的恶意软件进行各种维度的风险衡量,其中多标准分析(MCA)是其中的方法之一,不过启发式分析不是统计分析而是基于可用的数据或统计。
6.信息熵检测:
每个恶意软件都可以被描述成数值性质的属性(例如:信息熵)或者抽象性质的属性,信息熵就是通过找到最合适的量度来验证并且对比恶意软件的属性。
7.其他常见检测技术
7.1 混淆检测:
病毒由两个部分组成:载荷(payload)和混淆部件(obfuscator),载荷是用来做坏事的代码,而混淆部件则是病毒用来保护自身免于被查杀的,通常恶意软件开发者都会将其代码进行混淆以降低其代码的可读性
所以混淆检测就非常的有针对性。
7.2 加壳检测:
恶意软件一般都会被压缩加壳,因为加壳会将可执行文件进行压缩打包, 并将压缩数据与解压缩代码组合成单个可执行文件的一种手段。 当执行被压缩过的可执行文件时,解压缩代码会在执行之前从压缩数据中重新创建原始代码。所以检测恶意软件是否使用了加壳技术,也是发现的一种重要手段。
7.3 加密检测:
恶意软件使用加密对其二进制程序进行加密,以免被逆向分析。加密存在于恶意软件的构建器和存根中,当恶意软件需要解密时,不会用恶意代码常用的正常方法执行它。为了隐藏进程,恶意软件使用了一个有名的RunPE的技术,代码会以挂起的方式执行一个干净的进程(比如iexplorer.exe或者explorer.exe),然后把内存内容修改成恶意代码后再执行。所以检测RunPE的运行,就可以很容易的检测到恶意软件了。
NimShellCodeLoader
下载路径:https://github.com/aeverj/NimShellCodeLoader/releases/tag/0.2
Nim编写Windows平台shellcode免杀加载器
快速生成免杀可执行文件
1:自带四种加载方式
2:可自行拓展加载方式
3:支持两种加密技术,分别位3des加密和凯撒密码,密钥随机,每次生成文件拥有不同hash
本次利用到的是Nim语言
https://nim-lang.org/install.html
官方提供Windows、Linux、Mac版本,根据自己的需求进行下载 本次使用Windows环境做演示
下载解压后将bin文件加入 系统环境变量的path中。
Nim编译器需要C编译器才能编译软件下载地址https://github.com/GorvGoyl/MinGW64/releases
将文件解压到nim目录的dist路径下,并将D:\nim-1.4.8\dist\MinGW64\bin添加至环境变量
下载地址https://github.com/aeverj/NimShellCodeLoader/releases
下载解压后进入NimShellCodeLoader_Winx64\NimShellCodeLoader\encryption目录,利用下面的代码进行编译
nim c -d:release --opt:size Tdea.nim
nim c -d:release --opt:size Caesar.nim
利用Nim+NimShellCodeLoader可以有10多种免杀方式绕过全网杀软,这里演示其中一种
1、cobaltstrike生成raw格式64位的payload.bin文件
2、打开codeLoader.exe图形化界面,将payload.bin直接拖进来
3、这里选择的是直接加载TDEA – Direct Load
4、选好加载方式和加密方式,点击generate即可导出
输出生成的可执行文件在NimShellCodeLoader_Winx64\NimShellCodeLoader\bin目录
本地测试火绒、360、管家等均可免杀,并附上VT和CS正常上线结果
选择第四个生成的木马,该木马执行后会自动迁移进程进 window 自带的 svchost进程里面,所以可以逃过大部分的杀软的动态查杀,但还是逃不过世界上最强杀软 卡巴斯基的杀软。
执行效果图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。