GitHub Advisoryadvisory · RubyGems

GHSA-hxqx-xwvh-44m2 Denial of Service Vulnerability in Rack Multipart Parsing

HIGH Published 2022-05-27 Modified 2023-08-28 Official page ↗
Aliases
CVE-2022-30122
Ecosystem
RubyGems
Packages
rack
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-1333, CWE-400
Reviewed
2022-05-27

Affected packages

• RubyGems rack: >= 1.2, < 2.0.9.1 → fixed in 2.0.9.1 • RubyGems rack: >= 2.1, < 2.1.4.1 → fixed in 2.1.4.1 • RubyGems rack: >= 2.2, < 2.2.3.1 → fixed in 2.2.3.1

Description

There is a possible denial of service vulnerability in the multipart parsing component of Rack. This vulnerability has been assigned the CVE identifier CVE-2022-30122. Versions Affected: >= 1.2 Not affected: < 1.2 Fixed Versions: 2.0.9.1, 2.1.4.1, 2.2.3.1 Impact Carefully crafted multipart POST requests can cause Rack's multipart parser to take much longer than expected, leading to a possible denial of service vulnerability. Impacted code will use Rack's multipart parser to parse multipart posts. This includes directly using the multipart parser like this: ``` params = Rack::Multipart.parse_multipart(env) ``` But it also includes reading POST data from a Rack request object like this: ``` p request.POST # read POST data p request.params # reads both query params and POST data ``` All users running an affected release should either upgrade or use one of the workarounds immediately. Workarounds There are no feasible workarounds for this issue.

Related

Alias · CVE (1)

  • CVE-2022-30122 A possible denial of service vulnerability exists in Rack <2.0.9.1, <2.1.4.1 and <2.2.3.1 in the multipart parsing component of Rack. vulnerability

Weakness · CWE (2)

  • CWE-1333 Inefficient Regular Expression Complexity weakness
  • CWE-400 Uncontrolled Resource Consumption weakness

References