内容

目录

Apache Tomcat JK 连接器漏洞

本页列出了 Apache Tomcat Jk 连接器已发布版本中修复的所有安全漏洞。每个漏洞都由 Apache Tomcat® 安全团队给予安全影响评级——请注意,此评级可能因平台而异。我们还列出了已知受该缺陷影响的 Apache Tomcat JK 连接器版本,如果缺陷尚未验证,则用问号列出版本。

本页是根据 Apache Tomcat 档案和 CVE 列表的审查创建的。请将有关这些漏洞的评论或更正发送给Tomcat 安全团队

在 Apache Tomcat JK 连接器 1.2.50 中修复

中等:信息泄露 / 拒绝服务 CVE-2024-46544

在类 Unix 系统上,JkShmFile 指令配置的内存映射文件默认权限不正确,允许本地用户查看和/或修改包含 mod_jk 配置和状态信息的共享内存内容。这可能导致信息泄露和/或拒绝服务。

此问题已通过提交 d55706e9 修复。

此问题由 Tomcat 安全团队于 2024 年 8 月 6 日发现。该问题于 2024 年 9 月 23 日公开。

影响:JK 1.2.9-1.2.49(仅限类 Unix 平台上的 mod_jk)

在 Apache Tomcat JK 连接器 1.2.49 中修复

重要:信息泄露 CVE-2023-41081

在某些情况下,例如当配置包含 JkOptions +ForwardDirectories 但未提供所有可能代理请求的显式挂载点时,mod_jk 将使用隐式映射并将请求映射到第一个定义的工作器。这种隐式映射可能导致状态工作器意外暴露和/或绕过 httpd 中配置的安全限制。自 JK 1.2.49 起,隐式映射功能已被删除,所有映射现在必须通过显式配置。此问题仅影响 mod_jk。ISAPI 重定向器不受影响。

此问题已通过提交 0095b6cb 修复。

此问题于 2023 年 7 月 7 日报告给 Tomcat 安全团队。该问题于 2023 年 9 月 13 日公开。

影响:JK 1.2.0-1.2.48(仅限 mod_jk)

在 Apache Tomcat JK 连接器 1.2.46 中修复

注意:以下问题已在 Apache Tomcat JK 连接器 1.2.45 中修复,但 1.2.45 发布候选的发布投票未通过。因此,尽管用户必须下载 1.2.46 才能获得包含此问题修复的版本,但版本 1.2.45 不包含在受影响版本列表中。

重要:信息泄露 CVE-2018-11759

在将请求路径与 URI-worker 映射匹配之前,Apache Web Server (httpd) 的特定代码在标准化请求路径时未正确处理某些边缘情况。如果只有 Tomcat 支持的 URL 的子集通过 httpd 暴露,则特殊构造的请求可能通过反向代理暴露不应通过反向代理访问应用程序的客户端的应用功能。在某些配置中,特殊构造的请求也可能绕过 httpd 中配置的访问控制。尽管此问题与 CVE-2018-1323 有一些重叠,但它们并非完全相同。

此问题已在修订版本 183883618388571838871183888218404441840445184044818404491840450184045118404911840588184059218406031840604184061018406291841463 中修复。

影响:JK 1.2.0-1.2.44

在 Apache Tomcat JK 连接器 1.2.43 中修复

重要:信息泄露 CVE-2018-1323

在将请求路径与 URI-worker 映射匹配之前,IIS/ISAPI 的特定代码在标准化请求路径时未正确处理某些边缘情况。如果只有 Tomcat 支持的 URL 的子集通过 IIS 暴露,则特殊构造的请求可能通过反向代理暴露不应通过反向代理访问应用程序的客户端的应用功能。

此问题已在 修订版本 1825658 中修复。

影响:JK 1.2.0-1.2.42

在 Apache Tomcat JK 连接器 1.2.42 中修复

中等:缓冲区溢出 CVE-2016-6808

IIS/ISAPI 的特定代码在存在虚拟主机时实现了特殊处理。虚拟主机名和 URI 被连接起来以创建虚拟主机映射规则。在将此规则写入目标缓冲区之前的长度检查未考虑虚拟主机名的长度,从而可能导致缓冲区溢出。

尚不清楚此溢出是否可被利用。

此问题已在 修订版本 1762057 中修复。

影响:JK 1.2.0-1.2.41

在 Apache Tomcat JK 连接器 1.2.41 中修复

重要:信息泄露 CVE-2014-8111

请求 URI 中的多个相邻斜杠在与配置的挂载和卸载模式进行比较之前未被折叠成单个斜杠。因此,攻击者可以使用包含多个相邻斜杠的请求 URI 来绕过 JkUnmount 指令的限制。这可能导致通过反向代理暴露应用程序功能,而这些功能不应由通过反向代理访问应用程序的客户端访问。

自 mod_jk 1.2.41 起,斜杠默认被折叠。现在,此行为可通过 httpd 的新 JkOption(值 CollapseSlashesAllCollapseSlashesNoneCollapseSlashesUnmount)和 IIS 的新属性 collapse_slashes(值 allnoneunmount)进行配置。

此问题已在 修订版本 1647017 中修复。

影响:JK 1.2.0-1.2.40

在 Apache Tomcat JK 连接器 1.2.27 中修复

重要:信息泄露 CVE-2008-5519

在客户端设置 Content-Length 却未提供数据,或用户重复快速提交请求的情况下,可能允许一个用户查看与另一个用户请求相关的响应。

此问题已在 修订版本 702540 中修复。

影响:JK 1.2.0-1.2.26
Tomcat 4.0.0-4.0.6, 4.1.0-4.1.36, 5.0.0-5.0.30, 5.5.0-5.5.27 附带的源代码

在 Apache Tomcat JK 连接器 1.2.23 中修复

重要:信息泄露 CVE-2007-1860

此问题与 CVE-2007-0450 相关,其补丁不足。

当多个组件(防火墙、缓存、代理和 Tomcat)处理请求时,请求 URL 不应被这些组件迭代多次解码。否则,通过对请求应用多次 URL 编码,可能绕过在最后一个组件前端实现的访问控制规则。

1.2.23 版本之前的 mod_jk 默认在 Apache httpd 内部解码请求 URL 并将编码后的 URL 转发到 Tomcat,Tomcat 本身进行第二次解码。这使得可以绕过 /someapp 的 JkMount 前缀,但实际访问 Tomcat 上的 /otherapp。从 1.2.23 版本开始,mod_jk 默认将原始未更改的请求 URL 转发到 Tomcat。通过设置转发选项“JkOption ForwardURICompatUnparsed”,您可以为旧版本实现相同的安全级别。

请注意,您的配置可能包含不同的转发 JkOption。在这种情况下,请查阅转发文档以了解安全影响。新的默认设置比以前更安全,但它破坏了与 mod_rewrite 的互操作性。

影响:JK 1.2.0-1.2.22(仅限 httpd mod_jk 模块)
Tomcat 4.0.0-4.0.6, 4.1.0-4.1.36, 5.0.0-5.0.30, 5.5.0-5.5.23 附带的源代码

在 Apache Tomcat JK 连接器 1.2.21 中修复

严重:任意代码执行和拒绝服务 CVE-2007-0774

原生 JK 连接器的 URI 处理程序中存在不安全的内存复制,可能导致堆栈溢出条件,进而可用于执行任意代码或导致 Web 服务器崩溃。

影响:JK 1.2.19-1.2.20
附带源代码的:Tomcat 4.1.34, 5.5.20

在 Apache Tomcat JK 连接器 1.2.16 中修复

重要:信息泄露 CVE-2006-7197

Tomcat AJP 连接器包含一个错误,有时会为 send_body_chunks AJP 消息传送的块设置过长的长度。此类错误可能导致 mod_jk 读取超出缓冲区边界,从而向客户端泄露敏感内存信息。

影响:JK 1.2.0-1.2.15
附带源代码的:Tomcat 4.0.0-4.0.6, 4.1.0-4.1.32, 5.0.0-5.0.30, 5.5.0-5.5.16