记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

解密无文件攻击的各种姿势及最新检测方法

2020-06-03 17:52

“无文件攻击”不代表真的没有文件,只是一种攻击策略,其出发点就是避免将恶意文件放在磁盘上,以逃避安全检测。所说的无文件,也未必是攻击全程无文件,而是其中的一部分采用了无文件攻击[1]。近期,受NDSS2020顶会文章[2]启发,查阅趋势科技等数篇安全报告及网页文章,认为无文件攻击是一种趋势,“离地/隐形/无文件”是一个目前很热门的方向。故本文围绕无文件展开调研,收集2020年4月前的相关资料,内容包括无文件勒索、无文件挖矿等最新的无文件攻击方式,并对其进行归纳、总结。同时,分析了该篇顶会文章的核心内容,进一步了解无文件攻击的检测思路。

一、无文件勒索

近期比较特别的有ProLock(shellcode嵌入BMP图像中)、WannaRen(office激活工具中硬编码powershell命令),还有普通的恶意代码注入合法进程及宏结合powershell等。具体情况如下:

ProLock[3](2020.4.19)

将恶意shellcode嵌入到BMP图像文件中(之前的版本PwndLocker,嵌入到AVI视频中,被加密文件存在被恢复的可能),通过混淆的powershell代码将图像中的代码直接注入到内存中执行,达到可执行文件不落地的目的。使用ShellCode开发的勒索软件比宏结合powershell更难被安全软件识别,未来可能会成为更多勒索软件开发者的选择。

ProLock勒索软件作者将代码嵌入一个名为“WinMgr.bmp”的BMP图像中,ShellCode代码片段如下:

image.png


PowerShell脚本解混淆后,将ShellCode直接注入内存中运行。Powershell脚本如下:

image.png

ShellCode注入到内存中的代码:

image.png

ProLock勒索软件为了能够顺利加密文件,会调用cmd执行命令停止大量服务。这些服务包括数据库相关服务、数据备份相关服务、安全软件相关服务,如下所示:

image.png

WannaRen勒索软件[4](2020.4.14)

网上某软件园的2016office激活工具中硬编码了powershell的相关命令,如下:

image.png

解码后得到可执行代码,执行后会先延时2000秒(大概33分钟),检测是否存在相关安全防护进程,针对性很强,可以看出是针对国内普通的个人用户环境。最后还是会执行一段powershell脚本,通过站点返回的内容作为命令执行。

FTCode勒索软件[5](2020.1)

FTCode勒索病毒是一款基于PowerShell脚本的勒索病毒,主要通过垃圾邮件进行传播,此勒索病毒攻击流程,如下:

image.png

FTCode勒索病毒PowerShell代码,如下所示:

image.png

Sorebrect(2017/2019.1.2)

它将恶意代码注入到目标系统的合法进程svchost.exe中,然后自毁以躲避检测。

image.png

二、无文件挖矿

无文件挖矿的方式较普通,一般为利用powershell直接在内存中执行、通过powershell中嵌入PE文件加载等方式,同时还采用WMI+powershell等方式进行内存驻留。最近一篇文章powershell无文件挖矿病毒处置[7]也表明了目前无文件挖矿仍然存在。具体案例如下:

PowerGhost  2019.11最新样本[6][7]


PowerGhost是从2018年被发现使用powershell无文件方式进行攻击感染的挖矿以及DDOS病毒,其感染方式利用了永恒之蓝,MSSQL爆破,SSH爆破,wmi以及smb爆破远程命令执行等,同时对windows和linux进行攻击,一旦该病毒进入内网,会在内网迅速传播。目前其主要感染地区在广东、浙江、上海以及江苏。

该病毒母体模块分为2个版本,x86和x64,x86使用antitrojan.ps1,x64使用antivirus.ps1,本次分析x64版本的antivirus.ps1。当前病毒版本为1.5。

母体payload分布以及执行图,antivirus.ps1中主要分为3个部分,如下图:

image.png

永恒之蓝木马[8][9]

2019年4月3日,腾讯安全御见威胁情报中心检测到永恒之蓝下载器木马再次更新,此次更新改变了原有的挖矿木马执行方式,通过在Powershell中嵌入PE文件加载的形式,达到执行“无文件”形式挖矿攻击。新的挖矿木马执行方式没有文件落地,直接在Powershell.exe进程中运行,可能造成难以检测和清除。这种注入“白进程”执行的方式可能造成难以检测和清除恶意代码。

image.png

Coinminer

2019年第二季度,挖矿病毒也同样出现了新型变种。首先值得注意点是亚信安全最新截获了“Coinminer.Win32.MALXMR.TIAOODCJ”病毒,该病毒可首先利用 CVE-2019-2725 漏洞执行特定命令,以利用 PowerShell 执行恶意行为,从远端 C&C 服务器下载证书文件 cert.cer,并使用管理 Windows 中的证书组件 CertUtil 来解码文件,以达到躲避杀毒软件检测的目的。

image.png


PowershellMiner[10]

2018年3月,利用WMI+Powershell方式实现的无文件攻击行为,其目的是长驻内存挖矿。由于此攻击没有本地落地文件,难以察觉,企业利益默默受到侵害。此次攻击,具备无文件攻击特性,所有模块功能均加载到内存中执行,没有本地落地文件。为了迅速在内网传播,采用了SMB弱口令爆破攻击和“永恒之蓝”漏洞攻击,二者只要有一种能成功,就可以横向感染到其它主机。病毒直接使用powershell.exe进行挖矿,CPU占用率达到87%,其脚本功能是从wmi类中读取挖矿代码并执行。

image.png

如上图,原始病毒体为info*.ps1(64位系统对应info6.ps1,32位系统对应info3.ps1),其为Powershell脚本,被加载后内存存在4个模块,分别为挖矿模块、Minikatz模块、WMIExec模块、MS17-010攻击模块。

攻击顺序如下:

1.首先,挖矿模块启动,持续进行挖矿。

2.其次,Minikatz模块对目的主机进行SMB爆破,获取NTLMv2数据。

3.然后,WMIExec使用NTLMv2绕过哈希认证,进行远程执行操作,攻击成功则执行shellcode使病原体再复制一份到目的主机并使之运行起来,流程结束。

4.最后,如WMIExec攻击失败,则尝试使用MS17-010“永恒之蓝”漏洞攻击,攻击成功则执行shellcode使病原体再复制一份到目的主机并使之运行起来(每感染一台,重复1、2、3、4)。

此病毒采用的是WMI+Powershell的内存驻留方式,模块以服务形式存在,每5600秒可自动触发一次。

三、无文件攻击检测

由于其通常在内存中运行避免落地文件,同时powershell脚本易混淆检测困难,传统的基于文件的反病毒软件很难检测到此类攻击。故NDSS2020上有学者提出针对离地攻击检测的有效手段[2],笔者认为也可以推广到一般的无文件攻击检测。

引入概念:离地攻击,只使用预安装的软件并且攻击者没有在系统上安装额外的二进制可执行文件。带有宏、VB脚本、powershell脚本或者使用系统命令(如netsh命令)的文档属于离地攻击的范围。当使用dual-use tools时,若是Mimikatz等被下载时,不能被称为离地攻击[11][12]。

image.png

问题描述:现有的反病毒软件检测方法很难检测到该类攻击,分析检测该攻击所要具备的条件。

解决方式:依赖于内核级的起源监控,捕获每个目标程序的动态行为。通过嵌入起源数据构建异常检测模型,检测偏离先前观察到的历史程序运行时的行为,因此可以检测以前看不到的攻击。使用神经嵌入模型,使得一个进程起源图中的不同部分投射到 n位数值向量空间中,这个空间中,相似的组件在地理位置上更接近。使用基于密度的新颖检测方法,检测起源图中的异常因果路径。

文章贡献:设计并实现了provedetector,基于起源的系统,用于检测伪装技术的隐蔽恶意软件;为了保证较高的检测精度和效率,提出了一种新的路径选择算法来识别起源图中潜在的恶意部分;设计了一个新的神经嵌入和机器学习管道,自动为每个程序建立一个轮廓并识别异常进程;用真实的恶意软件进行系统评估,通过几个可解释性的研究证明了其有效性。

image.png

其核心ProvDetector分为四部分:图构建、特征提取、嵌入和异常检测。部署监控代理,按照定义收集系统数据放入数据库。定期扫描数据库检查是否有新添加的进程被劫持。对于每个进程,先构建起起源图(图构建)。然后从源点图中选择路径子集(特征提取)并将路径转换为数值向量(嵌入)使用一个新颖的检测器来获得嵌入向量的预测并报告最终决定(异常检测)。

实验评估:评估其检测精度,使用精度、召回率及F1-Score来度量。

image.png


同时,对检测结果进行解释,指出为什么检测结果是正确的,给出了理论证明。分析其运行性能,训练、检测时的开销项及开销,评估其企业实用性。是一篇工作量很大、很有意义的优质文章。

据赛门铁克报告显示,在2019年上半年,隐秘恶意软件占所有攻击的35%,增长了364%,这些攻击成功的可能性是传统攻击的10倍。较隐蔽的攻击措施、更高的成功率,使得无文件攻击逐渐火热。同时由于其难以捕捉、难以检测的特性,给传统防御技术带来了巨大的挑战。

参考文献

[1] https://bbs.pediy.com/thread-247748.htm

[2] Wang Q, Hassan W U, Li D, et al. You are what you do: Hunting stealthy malware via data provenance analysis[C]//Proc. of the Symposium on Network and Distributed System Security (NDSS). 2020.

[3] https://www.antiy.com/response/20200419.html

[4] https://www.freebuf.com/column/233534.html

[5] https://www.anquanke.com/post/id/190182

[6] https://www.secpulse.com/archives/118077.html

[7] https://bbs.pediy.com/thread-253375.htm

[8] https://s.tencent.com/research/report/702.html

[9]https://www.sohu.com/na/328689751_354899?scm=1002.45005a.15d015e0164.PC_NEW_ARTICLE_REC&spm=smpc.content%2Fnew.fd-d.9.1563840000026oXoZw5N

[10] https://kuaibao.qq.com/s/20180317G1EDYQ00?refer=spider

[11]https://docs.broadcom.com/doc/istr-living-off-the-land-and-fileless-attack-techniques-en

[12]https://docs.broadcom.com/docs/living-off-the-land-turning-your-infrastructure-against-you-en

本文作者:BUPT/Jarvan,如若转载,请注明原文地址

知识来源: https://www.4hou.com/posts/lDp7

阅读:28509 | 评论:0 | 标签:攻击

想收藏或者和大家分享这篇好文章→复制链接地址

“解密无文件攻击的各种姿势及最新检测方法”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

ADS

标签云

本页关键词