Description
Impact: multer versions 1.0.0 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial of Service via deeply nested field names in multipart form data. The append-field dependency parses bracket notation in field names with no limit on nesting depth, allowing an attacker to force allocation of deeply nested object structures that consume CPU and memory. A single HTTP request with a crafted multipart body is sufficient to exploit this. Patches: Users should upgrade to multer 2.2.0 (2.x line) or 3.0.0-alpha.2 (3.x prerelease) and configure the new limits.fieldNestingDepth option to the minimum depth their application requires. Workarounds: Set limits.fields to a reasonable value to reduce the number of fields an attacker can send per request. This does not fully mitigate the issue but limits the impact.
Problem types
CWE-400: Uncontrolled Resource Consumption
Product status
1.0.0 (semver) before 2.2.0
2.2.0 (semver)
3.0.0-alpha.1 (semver) before 3.0.0-alpha.2
3.0.0-alpha.2 (semver)
Credits
tndud042713
UlisesGascon
References
github.com/...multer/security/advisories/GHSA-72gw-mp4g-v24j
cna.openjsf.org/security-advisories.html