Skip to main content

Node.js CVE-2026-48930

| EUVDEUVD-2026-39614 CRITICAL
Improper Access Control (CWE-284)
Critical
Disputed · 9.8 NVD
View

Attack ChainAIDerived

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

  1. Access
    Submit hostname with embedded NUL byte
  2. Delivery
    Pass application allowlist on full string
  3. Exploit
    dns/net truncates at NUL byte
  4. Execution
    Resolve/connect to unintended host
  5. Impact
    Bypass access control to restricted target

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an application built on the affected Node.js versions (22.22.3, 24.16.0, or 26.3.0) that (1) accepts attacker-influenced hostnames and (2) uses that hostname value in a security-relevant comparison - an SSRF/destination allowlist, SNI/server-identity check, or similar - before handing it to the dns or net modules. The decisive limiting factor is this dependency: in applications that make no access-control decision based on the hostname string, an embedded NUL simply yields an invalid lookup with no security consequence. No authentication or user interaction is required to submit the malicious hostname on an exposed input path, but a bypass only occurs when the validated string and the resolved string diverge across the NUL boundary.

Impact

Signals conflict and must be reconciled before prioritization. The input carries CVSS 9.8 (AV:N/AC:L/PR:N/UI:N/C:H/I:H/A:H) plus an 'Authentication Bypass' tag, but Node.js itself classifies CVE-2026-48930 as Medium in its release notes - the 9.8 appears to be an inflated pre-NVD/aggregate score rather than a vendor-validated metric and should not be treated as confirmed. EPSS is low (0.28%), the CVE is NOT in CISA KEV, and no POC is referenced, so there is no evidence of active or imminent exploitation. SSVC-style reasoning supports a moderate call: exploitation is unproven, technical impact is partial, and automatability is limited because the bug only matters where an application uses the hostname for a security decision (allowlist/SSRF filter/identity check) before passing it to dns/net. Net assessment: patch on the normal security-update cycle given Node.js's ubiquity, but treat the vendor Medium as authoritative over the 9.8 - this is not a drop-everything emergency.

Exploit ScenarioDerived

An application accepts a user-supplied URL or hostname, validates it against an allowlist of permitted hosts, then passes it to Node's net or dns API to connect. An attacker submits 'allowed-host.example.com\x00.evil.com'; the JavaScript allowlist check sees the full benign-looking string and passes it, but the resolver/socket truncates at the NUL and connects to 'allowed-host.example.com' (or, reversed, to an attacker host), bypassing intended access control. The vector is remote, but no public POC is identified and success depends on the target application using the hostname for a security decision.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv3 – Jun 26, 2026

Hostname validation bypass in Node.js (versions 22.22.3, 24.16.0, and 26.3.0) lets attackers smuggle embedded NUL bytes through the dns and net subsystems, truncating a hostname after the NUL so that application-level allowlists, SNI checks, or destination filters validate one host while the runtime resolves or connects to another. The Node.js project rates this specific issue Medium and shipped the fix in its June 2026 security release; there is no public exploit identified at time of analysis and EPSS exploitation probability is low (0.28%, 20th percentile), and it is not in CISA KEV. Note a significant signal conflict: the aggregate input score of CVSS 9.8 with an 'Authentication Bypass' tag is far above the vendor's own Medium rating for this CVE and appears to be an inflated pre-NVD auto-score.

Earlier versions of this analysis (2)
v2 Jun 26, 2026 - 20:28 cvss changed CVSS 9.8

Hostname access-control bypass in Node.js affects the dns and net modules of releases 22.22.3, 24.16.0, and 26.3.0, where hostnames containing embedded NUL bytes were not rejected before resolution. A remote attacker who can influence a hostname value passed to networking APIs may smuggle a truncated or attacker-controlled name past application-level allow/deny checks, defeating SSRF guards and host-based authorization. This issue is part of the June 2026 coordinated Node.js security release; there is no public exploit identified at time of analysis and EPSS exploitation probability is low (0.28%, 20th percentile).

v1 Jun 26, 2026 - 02:25 CVSS 5.6

NUL byte injection in Node.js dns and net modules allows unauthenticated remote attackers to bypass hostname-based access controls by embedding a null byte into a crafted hostname string. Affected versions include Node.js v26.x prior to v26.3.1, released 2026-06-18. An attacker able to influence hostname inputs passed to these APIs may cause security-critical comparisons to terminate early at the NUL boundary, potentially redirecting connections to unintended hosts or defeating certificate identity checks. No public exploit code or CISA KEV listing is identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade to Node.js 26.3.1 on the Current line, or the corresponding patched 24.x and 22.x releases from the same June 2026 batch (https://nodejs.org/en/blog/vulnerability/june-2026-security-releases and https://github.com/nodejs/node/releases/tag/v26.3.1). As an interim application-level control while you stage the upgrade, reject any hostname containing a NUL byte before it reaches dns.lookup/dns.resolve or net/tls connect calls - validate user-supplied hosts against a strict character allowlist and drop values where the string contains '\x00'; the trade-off is that this only protects code paths you control and misses hostnames flowing through third-party dependencies, so it is a stopgap, not a substitute for patching. Additionally re-audit any SSRF allowlist or host-identity check that compares the raw hostname string, since those are the controls this flaw subverts.

Affected VersionsENISA

Node 26.3.0 ≤26.3.0
Node 22.22.3 ≤22.22.3
Node 24.16.0 ≤24.16.0

Affected Packages

euvd node no fix

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

The flaw lives in Node.js core networking primitives (the dns and net modules). Hostnames are byte strings restricted to a limited character set; an embedded NUL (0x00) is illegal but, prior to this fix, was not rejected. Underlying C/OS resolver and socket APIs treat NUL as a string terminator, so a value like 'trusted.example.com\x00.attacker.com' can be validated by JavaScript code as the full string yet resolved/connected as 'trusted.example.com' (or the inverse). This parsing mismatch maps to CWE-284 (Improper Access Control). The fix, authored by Matteo Collina, makes dns/net explicitly reject hostnames containing embedded NUL bytes. Per CPE data the affected builds are nodejs:node.js 22.22.3, 24.16.0, and 26.3.0, with the patched Current line being 26.3.1.

Know when Node.js 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

Sources disagree (Medium–Critical)
NVD PRIMARY 9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 4.8 MEDIUM

Remote and unauthenticated, but AC:H and only partial C/I impact because a bypass depends on an application using the hostname for a security decision; no availability impact, consistent with the vendor's Medium rating rather than 9.8.

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

vuln.today treats the vendor’s rating as authoritative. A higher third-party CVSS (e.g. CISA-ADP) is shown for transparency but does not drive the headline severity.

CVSS VectorNVD

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

Lifecycle Timeline

4
Severity Changed
Jun 26, 2026 - 20:22 NVD
MEDIUM CRITICAL
CVSS changed
Jun 26, 2026 - 20:22 NVD
5.6 (MEDIUM) 9.8 (CRITICAL)
CVSS changed
Jun 26, 2026 - 02:22 NVD
5.6 (MEDIUM)
CVE Published
Jun 18, 2026 - 04:37 github-releases
UNKNOWN (no severity yet)

Description PRE-NVD

Disclosed via GitHub release of nodejs/node. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

A vulnerability in Node.js (versions 22, 24, and 26) allows attackers to bypass hostname validation controls, potentially accessing systems outside organizational allowlists and circumventing SNI-based security checks. This affects any organization deploying Node.js applications and could expose them to unauthorized access or lateral movement. While the vendor rates this as medium-severity and no public exploit has been identified, the critical role of Node.js in most application stacks warrants prompt remediation.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Ubiquitous
Node.js is a core runtime in a vast fraction of server and tooling deployments
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 CRITICAL
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
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
Yes
Human Impact
High

Priority Score

49
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +49
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2025-68613 HIGH POC
8.8 Dec 19

Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation

CVE-2024-41713 CRITICAL POC
9.1 Oct 21

A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Web and Scripting 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 Fixed
SUSE Linux Enterprise Server 15 SP6-LTSS Fixed
SUSE Linux Enterprise Server for SAP Applications 15 SP6 Fixed
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise Module for Web and Scripting 15 SP7 Affected

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