Undertow 解析表单数据爆出内存耗尽漏洞,请及时更新!

3 阅读1分钟

CVE-2024-3884: Undertow 应用/x-www-form-urlencoded编码解析表单数据时的内存耗尽问题

在解析使用 application/x-www-form-urlencoded 编码的大表单数据时,Undertow 存在一个缺陷,可导致远程拒绝服务攻击。当服务器使用 FormEncodedDataDefinition.doParse(StreamSourceChannel) 方法解析此类编码的大型表单数据时,该方法会引发内存耗尽 (OutOfMemory) 问题。此漏洞允许未经授权的用户发起远程拒绝服务攻击。

漏洞详情

  • 漏洞编号: CVE-2024-3884
  • 严重性: 高危
  • CVSS 评分: 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)
  • 影响组件: io.undertow:undertow-core (Maven)

影响版本

  • 受影响版本: < 2.3.21.Final 以及 2.4.0.Alpha1
  • 已修复版本: 2.3.21.Final

漏洞描述

当 Undertow 服务器处理 Content-Typeapplication/x-www-form-urlencoded 的请求,并调用 FormEncodedDataDefinition.doParse 方法对大量数据进行解析时,由于对输入数据的处理不当,导致服务器内存被过度消耗,最终触发 OutOfMemoryError,造成服务不可用。

漏洞利用

攻击者无需任何权限,只需向目标服务器发送精心构造的、包含巨大负载的 application/x-www-form-urlencoded 数据包,即可触发此漏洞,导致服务器资源耗尽,无法响应正常请求。

解决方案

请立即将 io.undertow:undertow-core 升级至 2.3.21.Final 或更高版本,以修复此安全漏洞。

参考资料