基本信息
漏洞编号: CVE-2024-52316
危险等级: 高危
影响版本:
- Apache Tomcat 11.0.0-M1 至 11.0.0-M26
- Apache Tomcat 10.1.0-M1 至 10.1.30
- Apache Tomcat 9.0.0-M1 至 9.0.95
受影响组件: Jakarta认证(以前称为JASPIC)ServerAuthContext组件
验证状态: 未验证
修复状态: 官方已发布修复版本
漏洞详情
Apache Tomcat 中存在一个未检查的错误条件漏洞。若 Tomcat 配置为使用自定义 Jakarta 身份验证(以前称为 JASPIC)ServerAuthContext
组件,该组件在身份验证过程中可能会抛出一个异常而未明确设置 HTTP 状态码来表示失败,则认证可能不会失败,从而允许攻击者绕过身份验证过程。虽然目前尚无已知的 Jakarta 认证组件以这种方式运行,但该漏洞依然具有高危潜在风险。
影响范围
影响版本
- Apache Tomcat 11.0.0-M1 至 11.0.0-M26
- Apache Tomcat 10.1.0-M1 至 10.1.30
- Apache Tomcat 9.0.0-M1 至 9.0.95
受影响的产品
- Apache Tomcat
验证方法
- 检查当前 Tomcat 版本是否处于受影响范围内。
- 检查是否使用了自定义的 Jakarta认证
ServerAuthContext
组件。
修复方案
方案一:版本升级 (推荐)
将 Tomcat 升级到以下安全版本:
- Apache Tomcat 11.0.1
- Apache Tomcat 10.1.31
- Apache Tomcat 9.0.96
下载链接:Tomcat 11.0.1 官方发布
方案二:临时缓解
若无法立即升级版本,可通过以下方式进行临时缓解:
- 检查并确保所有自定义 Jakarta认证组件实现了 HTTP 状态码的正确设置,以防止绕过身份验证。
- 严格限制对受影响的 Tomcat 实例的访问,使用防火墙或访问控制列表 (ACL)。