CVE-2023-27530: Rack has possible DoS Vulnerability in Multipart MIME parsing
7.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.83115%
CWE
Published
3/8/2023
Updated
2/13/2025
KEV Status
No
Technology
Ruby
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
rack | rubygems | < 2.0.9.3 | 2.0.9.3 |
rack | rubygems | >= 2.1.0, < 2.1.4.3 | 2.1.4.3 |
rack | rubygems | >= 2.2.0, < 2.2.6.3 | 2.2.6.3 |
rack | rubygems | >= 3.0.0, < 3.0.4.2 | 3.0.4.2 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from Rack's multipart parser not limiting total parts while only restricting file parts. The root functions are in Rack::Multipart::Parser, which processes MIME data. The primary parsing loop in #parse would iterate through all parts without a global limit, and boundary handling in #fast_forward_to_first_boundary could exacerbate inefficiencies. These conclusions align with the described vulnerability mechanism (uncontrolled part count leading to DoS) and Rack's known architecture.