Description
@fastify/multipart is a multipart form-data parser for Fastify. In versions from 5.3.0 up to but not including 10.1.1, when the busboy fileSize limit truncates a file part, the plugin clears its internal current-file reference while the underlying stream is still open. If the client then aborts the connection before sending the terminating boundary, the abort cleanup finds no stream to destroy, so saveRequestFiles() never settles, the request handler hangs, and the temporary file already written to disk is never cleaned up. An unauthenticated client can repeat this to permanently leak temporary files and suspended handler executions, leading to disk and event-loop exhaustion. The issue is fixed in @fastify/multipart 10.1.1. Users should upgrade to 10.1.1.
Published: 2026-08-15
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A logic error in @fastify/multipart causes the plugin to drop its internal reference to a file stream when the busboy fileSize limit is reached. If the client aborts the connection before the terminating boundary arrives, the abort handler finds no active stream to destroy, leaving the saveRequestFiles promise unsettled. The request handler then hangs indefinitely while a temporary file already written to disk is never removed. An attacker can trigger this repeatedly to exhaust disk space and tie up the event loop, resulting in denial of service. The weakness is an instance of uncontrolled resource consumption (CWE‑400) and improper handling of asynchronous operations (CWE‑664).

Affected Systems

Fastify applications that use the @fastify/multipart plugin in versions from 5.3.0 up to but not including 10.1.1 are affected. Any deployment of Fastify that imports this package is potentially vulnerable unless a newer version is used.

Risk and Exploitability

The CVSS score of 7.5 indicates high severity. Exploitation requires only an unauthenticated client that can send multipart file uploads and abort the connection. The attack vector is likely network‑based, using HTTP POST requests. The EPSS score is not reported, and the vulnerability is not listed in the CISA KEV catalog, suggesting no publicly known exploitation yet, but the possibility of rapid, automated abuse exists. Given the impact on disk and event‑loop resources, the risk to availability is significant.

Generated by OpenCVE AI on August 15, 2026 at 15:14 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade @fastify/multipart to version 10.1.1 or later
  • Configure strict file size limits or timeouts to reduce the window for abuse
  • Implement application‑level connection termination checks to ensure cleanup of partially uploaded files

Generated by OpenCVE AI on August 15, 2026 at 15:14 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 15 Aug 2026 13:45:00 +0000

Type Values Removed Values Added
Description @fastify/multipart is a multipart form-data parser for Fastify. In versions from 5.3.0 up to but not including 10.1.1, when the busboy fileSize limit truncates a file part, the plugin clears its internal current-file reference while the underlying stream is still open. If the client then aborts the connection before sending the terminating boundary, the abort cleanup finds no stream to destroy, so saveRequestFiles() never settles, the request handler hangs, and the temporary file already written to disk is never cleaned up. An unauthenticated client can repeat this to permanently leak temporary files and suspended handler executions, leading to disk and event-loop exhaustion. The issue is fixed in @fastify/multipart 10.1.1. Users should upgrade to 10.1.1.
Title @fastify/multipart vulnerable to Denial of Service via aborted upload after fileSize limit
Weaknesses CWE-400
CWE-664
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-08-15T13:26:53.782Z

Reserved: 2026-07-31T22:18:10.089Z

Link: CVE-2026-18549

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T14:17:07.590

Modified: 2026-08-15T14:17:07.590

Link: CVE-2026-18549

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-15T15:15:03Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-664

    Improper Control of a Resource Through its Lifetime