{"api_version":"1","generated_at":"2026-06-15T18:22:04+00:00","cve":"CVE-2026-5038","urls":{"html":"https://cve.report/CVE-2026-5038","api":"https://cve.report/api/cve/CVE-2026-5038.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-5038","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-5038"},"summary":{"title":"multer vulnerable to Denial of Service via incomplete cleanup of aborted uploads","description":"Impact: multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial of Service when using diskStorage. Aborted or malformed multipart uploads leave orphaned partial files on disk because the Readable.pipe() call does not propagate the stream destroy signal to \nthe underlying fs.WriteStream. An attacker can exhaust disk space by triggering many aborted uploads, with no application bug required.\n\nPatches: Users should upgrade to multer 2.2.0 (2.x line) or 3.0.0-alpha.2 (3.x prerelease). Both versions track in-flight write streams and clean them up on the abort path.\n\nWorkarounds: None.","state":"PUBLISHED","assigner":"openjs","published_at":"2026-06-15 16:16:34","updated_at":"2026-06-15 16:16:34"},"problem_types":["CWE-459","CWE-459 CWE-459: Incomplete Cleanup"],"metrics":[{"version":"3.1","source":"ce714d77-add3-4f53-aff5-83d477b104bb","type":"Secondary","score":"5.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","baseScore":5.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"LOW"}},{"version":"3.1","source":"CNA","type":"CVSS","score":"5.3","severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","data":{"baseScore":5.3,"baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","version":"3.1"}}],"references":[{"url":"https://cna.openjsf.org/security-advisories.html","name":"https://cna.openjsf.org/security-advisories.html","refsource":"ce714d77-add3-4f53-aff5-83d477b104bb","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/expressjs/multer/security/advisories/GHSA-3p4h-7m6x-2hcm","name":"https://github.com/expressjs/multer/security/advisories/GHSA-3p4h-7m6x-2hcm","refsource":"ce714d77-add3-4f53-aff5-83d477b104bb","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-5038","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-5038","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"multer","product":"multer","version":"affected 2.0.0-alpha.1 2.2.0 semver","platforms":[]},{"source":"CNA","vendor":"multer","product":"multer","version":"unaffected 2.2.0 semver","platforms":[]},{"source":"CNA","vendor":"multer","product":"multer","version":"affected 3.0.0-alpha.1 3.0.0-alpha.2 semver","platforms":[]},{"source":"CNA","vendor":"multer","product":"multer","version":"unaffected 3.0.0-alpha.2 semver","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"yuki-matsuhashi","lang":"en"},{"source":"CNA","value":"HamdaanAliQuatil","lang":"en"},{"source":"CNA","value":"fasrm","lang":"en"},{"source":"CNA","value":"UlisesGascon","lang":"en"},{"source":"CNA","value":"bjohansebas","lang":"en"},{"source":"CNA","value":"0xStraw-Hat","lang":"en"},{"source":"CNA","value":"bhaswanthc","lang":"en"},{"source":"CNA","value":"ByamB4","lang":"en"},{"source":"CNA","value":"sbouabid-sec","lang":"en"},{"source":"CNA","value":"DavidCarliez","lang":"en"},{"source":"CNA","value":"JebeenLee","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","packageURL":"pkg:npm/multer","product":"multer","vendor":"multer","versions":[{"lessThan":"2.2.0","status":"affected","version":"2.0.0-alpha.1","versionType":"semver"},{"status":"unaffected","version":"2.2.0","versionType":"semver"},{"lessThan":"3.0.0-alpha.2","status":"affected","version":"3.0.0-alpha.1","versionType":"semver"},{"status":"unaffected","version":"3.0.0-alpha.2","versionType":"semver"}]}],"credits":[{"lang":"en","type":"remediation reviewer","value":"yuki-matsuhashi"},{"lang":"en","type":"finder","value":"HamdaanAliQuatil"},{"lang":"en","type":"finder","value":"fasrm"},{"lang":"en","type":"remediation developer","value":"UlisesGascon"},{"lang":"en","type":"remediation reviewer","value":"bjohansebas"},{"lang":"en","type":"finder","value":"0xStraw-Hat"},{"lang":"en","type":"finder","value":"bhaswanthc"},{"lang":"en","type":"finder","value":"ByamB4"},{"lang":"en","type":"finder","value":"sbouabid-sec"},{"lang":"en","type":"finder","value":"DavidCarliez"},{"lang":"en","type":"finder","value":"JebeenLee"}],"descriptions":[{"lang":"en","supportingMedia":[{"base64":false,"type":"text/html","value":"Impact: multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial of Service when using diskStorage. Aborted or malformed multipart uploads leave orphaned partial files on disk because the Readable.pipe() call does not propagate the stream destroy signal to \nthe underlying fs.WriteStream. An attacker can exhaust disk space by triggering many aborted uploads, with no application bug required.\n\nPatches: Users should upgrade to multer 2.2.0 (2.x line) or 3.0.0-alpha.2 (3.x prerelease). Both versions track in-flight write streams and clean them up on the abort path.\n\nWorkarounds: None."}],"value":"Impact: multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial of Service when using diskStorage. Aborted or malformed multipart uploads leave orphaned partial files on disk because the Readable.pipe() call does not propagate the stream destroy signal to \nthe underlying fs.WriteStream. An attacker can exhaust disk space by triggering many aborted uploads, with no application bug required.\n\nPatches: Users should upgrade to multer 2.2.0 (2.x line) or 3.0.0-alpha.2 (3.x prerelease). Both versions track in-flight write streams and clean them up on the abort path.\n\nWorkarounds: None."}],"metrics":[{"cvssV3_1":{"baseScore":5.3,"baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","version":"3.1"},"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}]}],"problemTypes":[{"descriptions":[{"cweId":"CWE-459","description":"CWE-459: Incomplete Cleanup","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-06-15T14:23:24.230Z","orgId":"ce714d77-add3-4f53-aff5-83d477b104bb","shortName":"openjs"},"references":[{"url":"https://github.com/expressjs/multer/security/advisories/GHSA-3p4h-7m6x-2hcm"},{"url":"https://cna.openjsf.org/security-advisories.html"}],"title":"multer vulnerable to Denial of Service via incomplete cleanup of aborted uploads","x_generator":{"engine":"cve-kit 1.0.0"}}},"cveMetadata":{"assignerOrgId":"ce714d77-add3-4f53-aff5-83d477b104bb","assignerShortName":"openjs","cveId":"CVE-2026-5038","datePublished":"2026-06-15T14:23:24.230Z","dateReserved":"2026-03-27T16:26:09.638Z","dateUpdated":"2026-06-15T14:23:24.230Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-06-15 16:16:34","lastModifiedDate":"2026-06-15 16:16:34","problem_types":["CWE-459","CWE-459 CWE-459: Incomplete Cleanup"],"metrics":{"cvssMetricV31":[{"source":"ce714d77-add3-4f53-aff5-83d477b104bb","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","baseScore":5.3,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"LOW"},"exploitabilityScore":3.9,"impactScore":1.4}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"5038","Ordinal":"1","Title":"multer vulnerable to Denial of Service via incomplete cleanup of","CVE":"CVE-2026-5038","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"5038","Ordinal":"1","NoteData":"Impact: multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial of Service when using diskStorage. Aborted or malformed multipart uploads leave orphaned partial files on disk because the Readable.pipe() call does not propagate the stream destroy signal to \nthe underlying fs.WriteStream. An attacker can exhaust disk space by triggering many aborted uploads, with no application bug required.\n\nPatches: Users should upgrade to multer 2.2.0 (2.x line) or 3.0.0-alpha.2 (3.x prerelease). Both versions track in-flight write streams and clean them up on the abort path.\n\nWorkarounds: None.","Type":"Description","Title":"multer vulnerable to Denial of Service via incomplete cleanup of"}]}}}