前阵子我们报导过关于软件逆向工程(SRE)框架 Ghidra 开源的消息,Ghidra 是由美国国家安全局(NSA,National Security Agency)的研究理事会为 NSA 的网络安全任务开发的软件逆向工程(SRE)框架,它有助于分析恶意代码和病毒等恶意软件,并可以让网络安全专业人员更好地了解其网络和系统中的潜在漏洞。
Ghidra 强大研发背景与应用能力让开发者惊叹,目前其 GitHub star 数已经超过了 11k。但是近日它却被发现存在一个漏洞。虽然软件中出现漏洞是挺正常的事,但是由于这个项目的属性和它的背景,再加上超高的关注度,曝出这样一个漏洞还是形成了比较大的反差,也让人感兴趣。
研究者发现在 Ghidra 加载工程的过程中会出现一个 XML External Entity Expansion 外部实体扩展攻击漏洞(XXE),攻击者可以通过诱骗受害者打开或恢复特制的项目,继而以各种方式进行利用。
而随后,腾讯安全玄武实验室还将该漏洞演变为远程代码执行漏洞(Remote Code Execute,RCE)。研究者在对 Ghidra XXE 漏洞利用的研究过程中发现,攻击者可以利用 Java 中的特性以及 Windows 操作系统中 NTLM 认证协议的缺陷,组合起来完成 RCE。
目前该漏洞已经被修复。
详细的利用细节查看:
https://github.com/NationalSecurityAgency/ghidra/issues/71
https://xlab.tencent.com/cn/2019/03/18/ghidra-from-xxe-to-rce