Citrix Netscaler后门分析——第一部分:2025年5月针对政府的攻击活动
这是之前文章的后续,也是研究不同Netscaler漏洞在野外被利用为零日漏洞系列的一部分。
Citrix忘记告诉你:CVE-2025-6543自2025年5月起已被用作零日漏洞
本文将深入探讨Netscaler客户需要立即采取的措施。
我想详细说明系统是如何被植入后门的,使用了什么工具,以及如何应对。
本文将关注今年早些时候在西方政府和法律机构中部署的后门,这些后门在补丁可用前一个多月就已存在。这些后门很可能是通过Volt Typhoon安装的——与之前的活动有很强的重叠性,攻击链非常复杂。这不是勒索软件组织,而是间谍活动。
后门在打补丁后仍然存在。Citrix基本上向客户隐藏了后门的存在,选择不公开披露后门的存在或技术细节。他们还仅在非披露协议下向客户提供技术脚本。
初始访问
这次攻击活动始于getAuthenticationRequirements.do中的漏洞。看起来Citrix已经修补了此漏洞……但没有发布技术指标允许组织在其Netscaler Web访问日志中进行搜索,也没有安全供应商进行分析。
请密切关注对getAuthenticationRequirements.do的POST请求——这些可能是合法的,但通常相当罕见。
以下是一个示例请求(格式有些混乱):
|
|
一个可能引人注目的部分:
|
|
如果您在Netscaler前面有WAF,您肯定希望过滤掉包含"base64"和python等术语的请求。
这里发生了什么?
攻击者正在运行一个Python脚本,该脚本获取一些b85编码的值,这些值还经过zlib压缩和pickle处理。然后您最终会得到Python代码,该代码对PHP webshell进行XOR解密。
webshell本身通过POST请求接收AES加密的命令。以下是写入磁盘的示例webshell:
|
|
威胁参与者在/var/netscaler/logon上的各种位置存储shell,这些目录是Web可访问的。例如,在某些组织中,他们将shell转储到LogonPoint中的index.php。在其他组织中,他们将PHP文件存储在客户主题位置。
其他攻击者活动
攻击者将/bin/sh复制到/var/tmp/sh,并使/var/tmp/sh成为suid root,以允许他们稍后将权限提升到root。
他们还优雅地重新启动了apache——Netscaler作为产品从不这样做,所以如果您仍然有日志,这是一个很好的取证线索。您可能没有。
他们还在合法文件上进行了时间戳篡改——/var/netscaler/logon/LogonPoint/receiver/js/external/jquery.min.js——将文件更改为非标准日期。
然后可以在您的Netscaler Web访问日志中看到攻击者对jquery.min.js的GET请求——他们似乎在查看Last Modified HTTP头,以查看他们的攻击是否成功以及该盒子是否已被修补(文件在修补过程中被替换)。然而,很难从日志中知道哪些请求是攻击者的,因为这是一个最终用户使用的合法文件——并且Netscaler只记录HTTP请求头,因此您无法从Web访问日志中知道文件日期何时被修改。
如何处理这些信息
我希望通过这篇博客和上一篇博客,更多的组织检查他们的系统并清除威胁参与者。
我还希望Citrix/Cloud Software Group认真考虑Netscaler——该产品在这方面有一些非常好的功能(例如,带有Netscaler Connect的FIM),但我觉得现实是,在客户现场,这还没有落地。供应商可能需要查看他们在Netscaler本身上进行了哪些强化,以及他们需要哪些额外资源来控制局势。
我会直截了当地说明情况:这是一个严重的威胁参与者,他们正在投入大量资源通过本应保护他们的产品来维持对组织的访问。这基本上是产品的生死关头,也可能是供应商煤矿中的另一个警告信号,即边界网络安全产品正在以前所未有的规模进行逆向工程和挑战。当然,这类漏洞一直在野外被利用——但获得的访问规模和深度,加上勒索软件组织在其他SSL VPN产品中获取零日漏洞,改变了我对情况的看法。需要全面提高边缘安全产品的标准,当出现问题时,我们真的需要透明度。
我还希望这是对安全行业更广泛的警醒,开始关注Netscaler,因为组织在很长一段时间内都没有意识到问题。目前,看起来有WatchTowr、Horizon3、荷兰的NCSC和我,一个卡通porg,基本上在推动这些事件的处理。这很酷……但感觉有点孤独。