攻击技术研判|利用.NET NativeAOT特性的新型攻击手法
2022-11-28 18:1:17 Author: M01N Team(查看原文) 阅读量:21 收藏

情报背景

近期来自WithSecure的安全研究人员对名为DUCKTAIL的攻击组织的攻击活动,及其.NET武器化迭代过程进行了分析。该组织使用.NET作为其主要武器的开发语言,并依据实战需要测试与调整。在近期变种中出现了利用NET NativeAOT特性进行封装的新载荷形式,在执行环境、样本体积以及反分析等方面具有独特优势。本文将对NativeAOT技术在实战场景中的优劣势进行分析研判。

组织名称

DUCKTAIL

战术标签

初始访问、防御规避

技术标签

.NET,NativeAOT

情报来源

https://labs.withsecure.com/content/

dam/labs/docs/WithSecure_Research_

DUCKTAIL_Returns.pdf

01 攻击技术分析

亮点 .NET NativeAOT载荷打包

.NET 7中引入了名为NativeAOT的新特性,该特性允许.NET代码在编译过程中利用JIT技术直接编译为原生二进制程序。相较于普通的.NET程序,NativeAOT的二进制分发形式带来诸多优势。这类二进制程序可脱离.NET运行时独立执行,使其在应对复杂的目标环境时具备更强的灵活性。此外,由于采用了更激进的默认Trim模式,NativeAOT程序与其他.NET单文件程序相比通常具备更小的体积。

从反分析的角度来看,由于NativeAOT形式的二进制具备与传统.NET程序不同的格式,原有的分析工具与积累的检测特征不再适用。由JIT生成的汇编代码在分析调试的难度上也是更上一层楼,带来了更大的分析溯源成本。

图 某NativeAOT二进制反编译结果

由于运行时无JIT等原因,.NET Native AOT存在如下的一些局限性,对武器化实现造成了一些影响:

  • 无法动态加载程序集(例如Assembly.LoadFile)

  • 无法使用运行时代码生成

  • 无法使用C++/CLI,不包含内置的COM与WinRT操作支持

  • 不支持无限泛型递归调用

也可能是由于这些局限性的存在,攻击者在NativeAOT版本的载荷中裁剪了一部分功能,并在试水一段时间之后,切换回原有的.NET单文件打包形式。这说明在权衡之下,相较于反分析等优势,功能完备性与一致性需求具备更高的优先级。

02 总结

继PowerShell之后,.NET是当下最主流的蓝军武器开发环境之一。动态加载的灵活特性与强大的语言功能使其深受攻击者青睐。使用.NET开发其主要的植入物也成为在野攻击者的一个选择,.NET多样化的打包分发形式给攻击者足够的空间,以极低的成本进行各种类型的封装,“一次开发,多样投递”。

在本次事件中我们观察到攻击者利用.NET NativeAOT等打包技术使程序于独立运行时,以适应更复杂的实战环境,并且利用载荷形式的转换,增加基于传统特征匹配的分析溯源难度。当IOC与工具规则匹配捉襟见肘,TTPs仍是命中识别攻击者的有效方式。

绿盟科技天元实验室专注于新型实战化攻防对抗技术研究。

研究目标包括:漏洞利用技术、防御绕过技术、攻击隐匿技术、攻击持久化技术等蓝军技术,以及攻击技战术、攻击框架的研究。涵盖Web安全、终端安全、AD安全、云安全等多个技术领域的攻击技术研究,以及工业互联网、车联网等业务场景的攻击技术研究。通过研究攻击对抗技术,从攻击视角提供识别风险的方法和手段,为威胁对抗提供决策支撑。

M01N Team公众号

聚焦高级攻防对抗热点技术

绿盟科技蓝军技术研究战队

官方攻防交流群

网络安全一手资讯

攻防技术答疑解惑

扫码加好友即可拉群

往期推荐

攻击技术研判|一种在行末隐藏有效载荷的新供应链攻击技术

攻击技术研判|钓鱼网站反分析手法升级

攻击技术研判 | 利用WIFI对抗虚拟机分析


文章来源: http://mp.weixin.qq.com/s?__biz=MzkyMTI0NjA3OA==&mid=2247490235&idx=1&sn=9a6d99702b83320a16a362ae3c0fdfe3&chksm=c187daaaf6f053bc149ac8737fb840de53fe656f750ac99e633f1b627b7ded9e7df4d68c7daa#rd
如有侵权请联系:admin#unsafe.sh