CVE-2026-3635
CVE-2026-3635 is a medium-severity vulnerability in Fastify with a CVSS 3.x base score of 6.1. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-348.
Key facts
- Severity: Medium (CVSS 3.x base score 6.1)
- EPSS exploit prediction: 0% (2nd percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-14431
- Weakness: CWE-348
- Affected product: Fastify
- Published:
- Last modified:
Description
Summary When trustProxy is configured with a restrictive trust function (e.g., a specific IP like trustProxy: '10.0.0.1', a subnet, a hop count, or a custom function), the request.protocol and request.host getters read X-Forwarded-Proto and X-Forwarded-Host headers from any connection — including connections from untrusted IPs. This allows an attacker connecting directly to Fastify (bypassing the proxy) to spoof both the protocol and host seen by the application. Affected Versions fastify <= 5.8.2 Impact Applications using request.protocol or request.host for security decisions (HTTPS enforcement, secure cookie flags, CSRF origin checks, URL construction, host-based routing) are affected when trustProxy is configured with a restrictive trust function. When trustProxy: true (trust everything), both host and protocol trust all forwarded headers — this is expected behavior. The vulnerability only manifests with restrictive trust configurations.
Frequently asked questions
- What is CVE-2026-3635?
- Summary When trustProxy is configured with a restrictive trust function (e.g., a specific IP like trustProxy: '10.0.0.1', a subnet, a hop count, or a custom function), the request.protocol and request.host getters read X-Forwarded-Proto and X-Forwarded-Host headers from any connection — including connections from untrusted IPs. This allows an attacker connecting directly to Fastify (bypassing the proxy) to spoof both the protocol and host seen by the application. Affected Versions fastify <= 5.8.2 Impact Applications using request.protocol or request.host for security decisions (HTTPS enforcement, secure cookie flags, CSRF origin checks, URL construction, host-based routing) are affected when trustProxy is configured with a restrictive trust function. When trustProxy: true (trust everything), both host and protocol trust all forwarded headers — this is expected behavior. The vulnerability only manifests with restrictive trust configurations.
- How severe is CVE-2026-3635?
- CVE-2026-3635 has a CVSS 3.x base score of 6.1, rated medium severity. It is exploitable over an adjacent network with high attack complexity, requires no privileges and no user interaction. Impact on confidentiality is high, integrity none, and availability none.
- Is CVE-2026-3635 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (2nd percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-3635?
- CVE-2026-3635 affects Fastify. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-3635?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- Does CVE-2026-3635 have an EU (EUVD) identifier?
- Yes. CVE-2026-3635 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-14431.
- When was CVE-2026-3635 published?
- CVE-2026-3635 was published on 2026-03-23 and last updated on 2026-06-17.
References
- https://cna.openjsf.org/security-advisories.html
- https://github.com/fastify/fastify/security/advisories/GHSA-444r-cwp2-x5xf
- https://www.cve.org/CVERecord?id=CVE-2026-3635
Affected products (1)
- cpe:2.3:a:fastify:fastify:*:*:*:*:*:node.js:*:*
More vulnerabilities in Fastify
- CVE-2026-33806 — High (CVSS 7.5): Impact: Fastify applications using schema.body.content for per-content-type body validation can have validation…
- CVE-2026-25223 — High (CVSS 7.5): Fastify is a fast and low overhead web framework, for Node.js. Prior to version 5.7.2, a validation bypass…
- CVE-2025-32442 — High (CVSS 7.5): Fastify is a fast and low overhead web framework, for Node.js. In versions 5.0.0 to 5.3.0 as well as version 4.29.0,…
- CVE-2022-39288 — High (CVSS 7.5): fastify is a fast and low overhead web framework, for Node.js. Affected versions of fastify are subject to a denial of…
- CVE-2018-3711 — High (CVSS 7.5): Fastify node module before 0.38.0 is vulnerable to a denial-of-service attack by sending a request with "Content-Type:…
- CVE-2020-8192 — Medium (CVSS 6.5): A denial of service vulnerability exists in Fastify v2.14.1 and v3.0.0-rc.4 that allows a malicious user to trigger…
Other CWE-348 vulnerabilities
- CVE-2026-48772 — Critical (CVSS 10.0): ProxySQL is a proxy for MySQL and its forks, as well as PostgreSQL. In versions 2.0.0 through 3.0.8, the ProxySQL MySQL…
- CVE-2026-12249 — Critical (CVSS 9.0): An issue was discovered in Canonical ADSys upstream versions through v0.16.2. During Active Directory Certificate…
- CVE-2025-69240 — High (CVSS 8.8): Raytha CMS allows an attacker to spoof `X-Forwarded-Host` or `Host` headers to attacker controlled domain. The attacker…
- CVE-2025-55292 — High (CVSS 8.2): Meshtastic is an open source mesh networking solution. In the current Meshtastic architecture, a Node is identified by…
- CVE-2026-43634 — High (CVSS 7.5): HestiaCP versions 1.2.0 through 1.9.4 contain an IP spoofing vulnerability that allows unauthenticated remote attackers…
- CVE-2026-35391 — High (CVSS 7.5): Bulwark Webmail is a self-hosted webmail client for Stalwart Mail Server. Prior to 1.4.11, the getClientIP() function…