Description
fastify versions before 5.12.2 decide whether to compile a request schema based on JavaScript truthiness, but JSON Schema Draft 7 defines the boolean false as a valid schema that rejects every instance. When an application assigns false to a route's body, querystring, params, or headers schema to deny all input, fastify treats it as a missing schema, compiles no validator, and runs the route handler on any request. An unauthenticated remote client can therefore reach a handler that a valid deny-all schema was intended to make unreachable, a complete validation bypass that can lead to unauthorized state changes or execution of disabled operations. Users should upgrade to fastify 5.12.2 or later.
Published: 2026-09-04
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

fastify versions prior to 5.12.2 incorrectly treat the boolean value false as an absent schema when compiling request schemas, even though JSON Schema Draft 7 defines false as a valid schema that rejects all instances. When an application assigns false to a route’s body, querystring, params, or headers schema, fastify compiles no validator and executes the route handler for any request. This denial‑by‑false schema bypass gives an unauthenticated remote client the ability to invoke functions that were intended to be unreachable, potentially leading to unauthorized state changes or execution of operations that have been explicitly disabled. The weakness is a classic example of insecure input handling (CWE‑20).

Affected Systems

The affected product is the fastify framework. All releases of fastify before version 5.12.2 are vulnerable. The bypass can occur on any route that assigns the boolean value false to its body, querystring, params, or headers validation schema.

Risk and Exploitability

The vulnerability carries a CVSS score of 7.5, indicating high severity. The EPSS score is 0.00519 (less than 1%), indicating a very low but non‑zero probability of exploitation, but the attack vector is clear: an unauthenticated remote client can send arbitrary HTTP requests to any route using a false schema. Because the fix is purely a server‑side code change, the risk is mitigated immediately by updating the framework. The vulnerability is not listed in CISA’s KEV catalog, but the high CVSS score and potential for unauthorized execution warrant prompt action.

Generated by OpenCVE AI on September 4, 2026 at 14:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade fastify to version 5.12.2 or later to correct the boolean schema handling.
  • Review all routes that use a false schema for body, querystring, params, or headers and replace them with an explicit schema that rejects all inputs, such as {\"type\": \"null\"} or by removing the route entirely.
  • After upgrading, enable global request validation by configuring the validateParams and validateQuerystring options and audit remaining routes to ensure no skippable schemas remain.

Generated by OpenCVE AI on September 4, 2026 at 14:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 05 Sep 2026 08:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Fri, 04 Sep 2026 12:45:00 +0000

Type Values Removed Values Added
First Time appeared Fastify
Fastify fastify
Vendors & Products Fastify
Fastify fastify

Fri, 04 Sep 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1287
References
Metrics threat_severity

None

threat_severity

Important


Fri, 04 Sep 2026 10:15:00 +0000

Type Values Removed Values Added
Description fastify versions before 5.12.2 decide whether to compile a request schema based on JavaScript truthiness, but JSON Schema Draft 7 defines the boolean false as a valid schema that rejects every instance. When an application assigns false to a route's body, querystring, params, or headers schema to deny all input, fastify treats it as a missing schema, compiles no validator, and runs the route handler on any request. An unauthenticated remote client can therefore reach a handler that a valid deny-all schema was intended to make unreachable, a complete validation bypass that can lead to unauthorized state changes or execution of disabled operations. Users should upgrade to fastify 5.12.2 or later.
Title fastify vulnerable to request validation bypass via skipped boolean false schemas
Weaknesses CWE-20
References
Metrics cvssV3_1

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


cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-09-04T19:34:13.735Z

Reserved: 2026-09-01T20:07:12.965Z

Link: CVE-2026-84469

cve-icon Vulnrichment

Updated: 2026-09-04T19:34:10.430Z

cve-icon NVD

Status : Received

Published: 2026-09-04T10:17:13.677

Modified: 2026-09-04T20:17:30.483

Link: CVE-2026-84469

cve-icon Redhat

Severity : Important

Publid Date: 2026-09-04T09:59:36Z

Links: CVE-2026-84469 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-04T15:00:05Z

Weaknesses
  • CWE-1287

    Improper Validation of Specified Type of Input

  • CWE-20

    Improper Input Validation