CVE-2025-61771
Rack's multipart parser buffers large non‑file fields entirely in memory, enabling DoS (memory exhaustion)
En resumen
El analizador de formularios de Rack carga campos de texto sin límites en memoria, permitiendo que atacantes envíen campos gigantes que agotan la memoria del servidor y bloquean la aplicación.
Detalle técnico
Rack::Multipart::Parser en versiones <2.2.19, 3.1.x <3.1.17 y 3.2.x <3.2.2 almacena campos multipart sin archivo sin límite de tamaño como objetos String en memoria (CWE-400). Un atacante puede enviar solicitudes multipart/form-data con campos de texto grandes (cientos de MB+) para provocar condiciones OOM y DoS; el impacto se amplifica bajo concurrencia. Se corrige en las versiones 2.2.19, 3.1.17 y 3.2.2 con límite de 2 MiB para campos sin archivo.
Resumen generado y traducido por IA a partir de la descripción oficial.
Rack is a modular Ruby web server interface. In versions prior to 2.2.19, 3.1.17, and 3.2.2, ``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). 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. Versions 2.2.19, 3.1.17, and 3.2.2 enforce a reasonable size cap for non-file fields (e.g., 2 MiB). Workarounds include restricting maximum request body size at the web-server or proxy layer (e.g., Nginx `client_max_body_size`) and validating and rejecting unusually large form fields at the application level.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Productos afectados
rack · rack¿Quieres saber si tu infraestructura está expuesta a esto?
Hablar con TrueHacking →Referencias
https://github.com/rack/rack/commit/589127f4ac8b5cf11cf88fb0cd116ffed4d2181ehttps://github.com/rack/rack/commit/d869fed663b113b95a74ad53e1b5cae6ab31f29ehttps://github.com/rack/rack/commit/e08f78c656c9394d6737c022bde087e0f33336fdhttps://github.com/rack/rack/security/advisories/GHSA-w9pc-fmgc-vxvw