隐秘的 Apache Tomcat 关键漏洞绕过安全过滤器:您面临风险吗?

图片来源:cynoclub/Envato Elements

Apache Tomcat 受到攻击,因为网络犯罪分子积极利用最近披露的漏洞,实现远程代码执行 (RCE)。通过简单的 HTTP 请求,攻击者可以触发恶意数据的反序列化并获得对受影响系统的控制。

该漏洞,CVE-2025-24813,由 Apache 于 3 月 10 日披露,其中首次概念验证大约 30 小时后在 GitHub 上发布,由用户 iSee857 发布。不久之后,安全公司 Wallarm 发现这种攻击在野外被利用,并警告说,传统安全过滤器无法检测到这些攻击,因为 HTTP 请求看起来很正常,并且恶意负载是 Base64 编码的。

首先,攻击者发送包含编码的序列化 Java 负载的 PUT 请求,然后将其写入 Tomcat 的会话存储中并自动保存在文件中。然后,他们发送带有指向恶意会话的 JSESSIONID cookie 的 GET 请求。

当 Tomcat 处理此请求时,它会在没有适当验证的情况下反序列化会话数据,执行嵌入的恶意 Java 代码并为攻击者提供完全远程访问权限。

看:

不需要身份验证即可工作,但是根据 Apache 的安全说明,要使 Tomcat 应用程序易受攻击,必须满足以下条件:

  • 默认 servlet 启用写入
  • 启用部分 PUT 请求支持
  • Tomcat 包含一个可用于反序列化攻击的库
  • 默认存储位置使用基于文件的会话持久性

除了远程执行代码之外,如果满足以下条件,该漏洞还可以允许攻击者查看或修改安全敏感文件:

  • 默认 servlet 启用写入
  • 启用部分 PUT 请求支持
  • 安全敏感文件存储在公开可用的目录中,并通过部分 PUT 上传
  • 攻击者知道文件名

满足这些条件后,以下 Tomcat 版本都容易受到攻击:

  • Apache Tomcat 11.0.0-M1 至 11.0.2
  • Apache Tomcat 10.1.0-M1 至 10.1.34
  • Apache Tomcat 9.0.0.M1 至 9.0.98

缓解措施:如何保护您的系统

为了缓解该漏洞,Apache 建议用户分别升级到 Tomcat 版本 11.0.3 或更高版本、10.1.35 或更高版本、9.0.99 或更高版本,因为这些版本都已得到充分修补。或者,用户可以关闭部分 PUT 支持,禁用默认 servlet 的写入,并避免将安全敏感文件存储在可公开访问的目录中。

Wallarm 研究人员警告说,该漏洞凸显了由于 Tomcat 处理部分 PUT 请求“允许在任何地方上传几乎任何文件”而出现其他安全漏洞的可能性。

他们在一份报告中写道:“攻击者很快就会开始改变策略,上传恶意 JSP 文件、修改配置,并在会话存储之外植入后门。”博客文章。 “这只是第一波。”