阅读: 9
情报背景
近期,来自Yoroi的研究人员在一篇报告中对利用EXCEL的XLL插件进行文档钓鱼案例进行了技术分析。Yoroi指出自2021年中开始,该项技术为许多攻击者使用,并大胆预测XLL技术可能为Office文档钓鱼技术破局,成为改变2022年威胁格局的新热点技术。本篇研判将对XLL插件嵌入.NET恶意代码的新攻击技术进行分析研判,探讨.NET新背景下XLL的利用面。
攻击技术分析
亮点:老树新花,XLL搭上.NET快车
XLL/WLL文件及其持久化技术
微软允许第三方开发者使用C/C++为Office应用开发扩展,并以XLL/WLL的文件格式为Excel/Word扩展功能,其本质是具有特殊后缀与导出函数的DLL文件。因为作为Office应用扩展的特殊性,XLL文件的图标较有迷惑性,双击会直接唤起EXCEL并尝试加载。
虽然Yoroi在近期对XLL文件的分析将其又推上风口浪尖,但利用XLL进行攻击的手法早已有之。在Mitre ATT&CK条目“T1137.006 Office应用启动项”即有利用WLL/XLL进行持久化的描述,在2020年5月的攻击中Naikon攻击团伙利用Word的扩展文件WLL文件进行后渗透阶段的持久化操作。
利用WLL与XLL的持久化方式的本质相同,利用Ofiice程序加载扩展DLL文件,执行其中的恶意代码,但具体操作有所区别。
将包含恶意代码的DLL重命名为“WLL”后缀放置于Word的Startup可信目录中即可在Word启动时被自动加载。
XLL的持久化利用则要麻烦一些,在注册表内创建相应的键值,并在Excel的扩展搜索目录(%appdata%\Microsoft\AddIns)中放置XLL类型的文件。Excel在执行过程中将搜索并调用名为xlAutoOpen的DLL导出函数。
开源项目为XLL引入.NET攻击面
攻击者利用开源项目EXCEL-DNA将恶意.NET载荷嵌入在XLL样本,包含恶意代码的.NET 程序集被压缩存储于XLL的资源段,这增加了针对恶意代码静态检测的难度。
EXCEL-DNA通过自身的XLL文件(原生DLL)为桥梁,为开发者提供了以.NET开发Excel扩展的中间层。在执行过程中该XLL文件会完成初始化.NET环境与解压资源段的.NET程序集这两件事,为后续执行创造条件。
EXCEL-DNA使用CLR Hosting技术进行.NET运行环境的初始化,实现在Native程序中执行.NET程序的目的。通过初始化操作的不同,攻击者可选择不同的.NET版本进行初始化,EXCEL-DNA的不同支持.net2.0到最新的.net4.5的覆盖,这种兼容性也为攻击者利用此技术在XLL中利用现有的.NET武器化工具创造了条件。
而在.NET程序集中的恶意代码被执行后,攻击者动态加载下一阶段的.NET程序集并调用其中的功能函数,这是攻击者对.NET灵活加载特性的运用。
总结
.NET的引入扩展了XLL文件的攻击面,使得利用.NET中的防御规避技术成为可能,增加了执行流程的复杂性与隐蔽性,增加了安全产品的检测难度。但是XLL文件的利用依然受到一些安全措施的限制,在实际中通过签名等机制可有效对此类可疑文件进行甄别。本次攻击者所使用的开源项目并非针对防御规避设计,固定的特征与简单的载荷存储手段降低了分析难度,利用该开源项目进行攻击的威胁似乎还不足为惧。
XLL的利用与CLR Hosting的技术并非首次出现,两者的结合却给了攻击者以契机,为已有技术注入生命力。在.NET的攻击技术研究与武器开发蓬勃发展的今天,此种攻击技术无疑具有更大的利用潜力。Yoroi的研究人员对于XLL技术将改变2022年威胁格局的评价或许略显夸张,但这种旧瓶装新酒的创新攻击模式却值得蓝军研究人员与安全厂商的注意与警惕。
本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。