Answer in brief
CVE-2025-61771 records a High severity (CVSS 7.5) vulnerability in Rack: Multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion). The current sources do not mark it as known exploited. The current feed maps rack (rubygems), rack (rubygems), rack (rubygems). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 7.5. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps rack (rubygems), rack (rubygems), rack (rubygems). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| rackrubygems | >=0 <2.2.19 | 2.2.19 |
| rackrubygems | >=3.1 <3.1.17 | 3.1.17 |
| rackrubygems | >=3.2 <3.2.2 | 3.2.2 |
Published upstream
Oct 7, 2025
Evidence: source:osv:source_dates:source-dates:recordSource modified
Sep 10, 2026
Evidence: source:osv:source_dates:source-dates:recordFirst seen by HOL
Aug 7, 2026
## Summary `Rack::Multipart::Parser` stores non-file form fields (parts without a `filename`) entirely in memory as Ruby `String` objects. A single large text field in a multipart/form-data request (hundreds of megabytes or more) can consume equivalent process memory, potentially leading to out-of-memory (OOM) conditions and denial of service (DoS). ## Details During multipart parsing, file parts are streamed to temporary files, but non-file parts are buffered into memory: ```ruby body = String.new # non-file → in-RAM buffer @mime_parts[mime_index].body << content ``` There is no size limit on these in-memory buffers. As a result, any large text field—while technically valid—will be loaded fully into process memory before being added to `params`. ## Impact Attackers can send large non-file fields to trigger excessive memory usage. Impact scales with request size and concurrency, potentially leading to worker crashes or severe garbage-collection overhead. All Rack applications processing multipart form submissions are affected. ## Mitigation * **Upgrade:** Use a patched version of Rack that enforces a reasonable size cap for non-file fields (e.g., 2 MiB). * **Workarounds:** * Restrict maximum request body size at the web-server or proxy layer (e.g., Nginx `client_max_body_size`). * Validate and reject unusually large form fields at the application level.
Quoted source text, attributed separately from HOL analysis.