Description
facil.io 0.6.0 through 0.7.6 contains a denial-of-service vulnerability in the multipart body parser that allows an unauthenticated remote attacker to permanently freeze worker processes at 100% CPU by sending a multipart/form-data request with a partial closing boundary. The missing progress guard in the parser loop causes http_mime_parse to return 0 bytes consumed without setting done or error flags, causing the calling loop to re-invoke the parser on the same buffer indefinitely, exhausting all workers and permanently disabling the server until manually restarted.
Published: 2026-07-27
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

facil.io versions 0.6.0 through 0.7.6 contain an infinite loop flaw in the multipart MIME body parser that arises when a multipart/form-data request ends with a partial closing boundary. The parser fails to consume any bytes and does not set a completion or error flag, causing the parent loop to repeatedly invoke the parser on the same buffer. This behaviour exhausts CPU resources, driving each worker process to 100 % utilisation and ultimately freezing all workers permanently until the server is manually restarted. The weakness is a classic CWE‑835 Infinite Loop.

Affected Systems

The vulnerability affects all installations of facil.io from 0.6.0 up to and including 0.7.6, released by maintainer boazsegev. The impacted component is the HTTP MIME parser that processes multipart/form-data payloads.

Risk and Exploitability

With a CVSS score of 8.7, the flaw is classified as high severity. The EPSS score is below 1 % and the vulnerability is not listed in the CISA KEV catalog. The attack vector is an unauthenticated remote HTTP request; any external entity that can reach a facil.io worker endpoint can craft a multipart/form-data request with a malformed boundary to trigger endless CPU consumption, causing persistent denial of service across the entire server.

Generated by OpenCVE AI on August 4, 2026 at 13:53 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade facil.io to a version later than 0.7.6 to resolve the infinite loop bug in the MIME parser.
  • If an upgrade cannot be applied immediately, restrict the CPU share of each facil.io worker using cgroups or cpulimit to prevent a single process from exhausting system resources.
  • Configure a reverse proxy or firewall to reject malformed multipart/form-data requests or enforce strict boundary validation before the request reaches facil.io.

Generated by OpenCVE AI on August 4, 2026 at 13:53 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 31 Jul 2026 18:45:00 +0000

Type Values Removed Values Added
References

Mon, 27 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
First Time appeared Boazsegev
Boazsegev facil.io
Vendors & Products Boazsegev
Boazsegev facil.io
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 27 Jul 2026 17:00:00 +0000

Type Values Removed Values Added
Description facil.io 0.6.0 through 0.7.6 contains a denial-of-service vulnerability in the multipart body parser that allows an unauthenticated remote attacker to permanently freeze worker processes at 100% CPU by sending a multipart/form-data request with a partial closing boundary. The missing progress guard in the parser loop causes http_mime_parse to return 0 bytes consumed without setting done or error flags, causing the calling loop to re-invoke the parser on the same buffer indefinitely, exhausting all workers and permanently disabling the server until manually restarted.
Title facil.io 0.6.0 - 0.7.6 Infinite Loop DoS via Multipart MIME Body Parser
Weaknesses CWE-835
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'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Boazsegev Facil.io
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-31T18:19:33.702Z

Reserved: 2026-07-27T16:27:47.646Z

Link: CVE-2026-66730

cve-icon Vulnrichment

Updated: 2026-07-27T18:20:12.419Z

cve-icon NVD

Status : Deferred

Published: 2026-07-27T17:16:42.660

Modified: 2026-07-31T19:17:11.890

Link: CVE-2026-66730

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T14:00:03Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')