Skip to main content

Fastify EUVDEUVD-2026-98697

| CVE-2026-107832 LOW
Improper Handling of Case Sensitivity (CWE-178)
2026-10-13 openjs
3.7
CVSS 3.1 · Vendor: openjs
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify app with case-sensitive header rule
  2. Exploit
    Craft request with restricted header
  3. Execution
    Header lowercased, bypasses propertyNames enum/const match
  4. Impact
    Forbidden header reaches route handler

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Case sensitivity handling
Exploitation Conditions

Exploitable only when a fastify 5.12.2-5.12.5 application defines a route schema that validates headers via a propertyNames subschema whose enum or const header names are written in canonical (non-lowercase) casing, functioning as a header allow-list or deny-list. The lowercasing routine skips these nested enum/const names, so the rule never matches the already-lowercased incoming header. Limiting factors: applications that declare header names in lowercase are not affected; apps that do not use header allow/deny-list schemas at all are not affected; impact is confined to smuggling a single restricted header past validation (integrity only, no code execution, data disclosure, or availability loss). Default configurations without such case-sensitive header schemas are not vulnerable, which is why AC:H applies.

Impact

This is a genuinely low-priority issue despite being network-reachable and unauthenticated. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N) yields only 3.7 (Low), and every signal agrees: impact is limited to integrity (I:L, with C:N and A:N), and AC:H reflects that exploitation depends on a specific, non-default application configuration - a route schema whose header allow/deny-list is written in canonical (non-lowercase) casing inside a propertyNames enum/const. No EPSS score, CISA KEV listing, or public POC is present in the provided intelligence, so there is no public exploit identified at time of analysis and no evidence of active exploitation. There is no signal conflict to reconcile between exploitation feeds; the only notable inconsistency is in the metadata - the 'Information Disclosure' tag contradicts the CVSS impact profile (C:N, I:L) and the description, which explicitly states the flaw affects 'the integrity of request handling,' not confidentiality. Net: a real but narrow correctness/validation-bypass bug that matters only to apps using case-sensitive header schemas on fastify 5.12.2-5.12.5; it does not warrant emergency patching but should be rolled into normal dependency maintenance.

Exploit ScenarioDerived

An application on fastify 5.12.2-5.12.5 defines a route header schema that restricts or forbids a specific header (e.g. 'X-Internal-Auth' or 'X-Forwarded-For') using propertyNames with canonical casing. A remote unauthenticated attacker sends the forbidden header, which is lowercased on arrival and therefore never matches the non-lowercased rule, so it passes validation and reaches the handler. No public exploit code is identified at time of analysis.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

Header validation bypass in Fastify 5.12.2 through 5.12.5 can permit unauthenticated remote attackers to smuggle a forbidden header past route schema validation when an application uses a propertyNames subschema containing enum or const header names written in canonical casing. The flaw is low impact, with CVSS 3.7, and is limited to request integrity because the affected schemas are uncommon, default Fastify configurations are not vulnerable, and no public exploit identified at time of analysis. Upgrading to Fastify 5.12.6 or later resolves the issue by correctly lowercasing the nested header-name restrictions.

RemediationAI

Vendor-released patch: Fastify 5.12.6. Upgrade to Fastify 5.12.6 or later to correct the header-name lowercasing routine for propertyNames enum and const values. The vendor states there is no workaround other than upgrading, but as a temporary avoidance measure applications can rewrite all header names in affected propertyNames enum or const declarations to lowercase, which prevents the mismatch with Node.js's lowercased incoming headers; this requires a thorough schema audit and is not a substitute for the patched release. See the GitHub security advisory at https://github.com/fastify/fastify/security/advisories/GHSA-389g-gv7q-r4x8 and the OpenJS Foundation advisory page at https://cna.openjsf.org/security-advisories.html for vendor guidance.

Affected VersionsENISA

fastify 5.12.2 <5.12.6

Affected Packages

euvd fastify fix: 5.12.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Fastify is a Node.js web framework that validates route headers using JSON Schema. The affected code lowercases header names declared in a route schema's properties so they match Node.js's lowercased incoming request headers, but it does not apply the same normalization to enum or const values nested inside a propertyNames subschema. This is an instance of CWE-178, improper handling of case sensitivity: because the schema rule retains canonical casing while the actual header name is lowercased, a propertyNames-based allow-list or deny-list can fail to match the header it was intended to restrict. The affected package is identified by CPE cpe:2.3:a:fastify:fastify:*:*:*:*:*:*:*:*, specifically versions 5.12.2 through 5.12.5; successful exploitation requires an application schema that uses this specific nested propertyNames pattern and does not declare the relevant header names in lowercase.

Know when Fastify gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (openjs) PRIMARY 3.7 LOW
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
vuln.today AI 3.7 LOW

Remote and unauthenticated (AV:N/PR:N) but requires a specific non-default case-sensitive header schema (AC:H); impact is a limited integrity bypass only (I:L, C:N/A:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (openjs).

CVSS VectorVendor: openjs

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None

Lifecycle Timeline

2
Patch available
Oct 13, 2026 - 15:17 EUVD
CVE Published
Oct 13, 2026 - 13:23 cve.org
LOW 3.7

DescriptionCVE.org

fastify is a fast and low overhead web framework for Node.js. In versions 5.12.2 through 5.12.5, the routine that lowercases header names declared in a route schema does not lowercase the enum or const header names nested inside a propertyNames subschema. As a result, a header allow-list or deny-list written with canonical (non-lowercase) casing never matches the incoming lowercased header, so a restricted header passes validation and reaches the route handler. An attacker can therefore bypass a case-sensitive header validation rule and smuggle a forbidden header past the schema, affecting the integrity of request handling. The issue is fixed in fastify 5.12.6, and users should upgrade to 5.12.6 or later. There is no workaround other than upgrading, though applications can declare header names in lowercase to avoid the mismatch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 84% exploitable
Prevalence
High
Fastify is a widely used Node.js web framework in production backends
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
High

Priority Score

18
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +18
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2023-31999 HIGH POC
8.8 Jul 04

All versions of @fastify/oauth2 used a statically generated state parameter at startup time and were used across all req

CVE-2021-22964 HIGH POC
8.8 Oct 14

A redirect vulnerability in the `fastify-static` module version >= 4.2.4 and < 4.4.1 allows remote attackers to redirect

CVE-2025-32442 HIGH POC
7.5 Apr 18

Fastify is a fast and low overhead web framework, for Node.js. Rated high severity (CVSS 7.5), this vulnerability is rem

CVE-2020-8136 HIGH POC
7.5 Mar 20

Prototype pollution vulnerability in fastify-multipart < 1.0.5 allows an attacker to crash fastify applications parsing

CVE-2018-3711 HIGH POC
7.5 Jun 07

Fastify node module before 0.38.0 is vulnerable to a denial-of-service attack by sending a request with "Content-Type: a

CVE-2020-8192 MEDIUM POC
6.5 Jul 30

A denial of service vulnerability exists in Fastify v2.14.1 and v3.0.0-rc.4 that allows a malicious user to trigger reso

CVE-2021-22963 MEDIUM POC
6.1 Oct 14

A redirect vulnerability in the fastify-static module version < 4.2.4 allows remote attackers to redirect users to arbit

CVE-2026-6556 CRITICAL
9.1 Jun 30

Authorization bypass in the @fastify/express middleware-compatibility plugin (versions 4.0.6 and earlier) lets unauthent

CVE-2026-33808 CRITICAL
9.1 Apr 15

Authentication bypass in @fastify/express v4.0.4 and earlier allows remote unauthenticated attackers to access protected

CVE-2026-33807 CRITICAL
9.1 Apr 15

Middleware bypass in Fastify Express plugin (fastify/express) allows complete circumvention of authentication, authoriza

CVE-2022-41919 HIGH
8.8 Nov 22

Fastify is a web framework with minimal overhead and plugin architecture. Rated high severity (CVSS 8.8), this vulnerabi

CVE-2026-2880 HIGH
8.2 Feb 27

Authentication and authorization bypass in @fastify/middie (Node.js middleware library for Fastify) allows remote unauth

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy