SEPTEMBER 19, 2026
Live Feed
Back to database
Case File

CVE-2026-69198

MEDIUM · CVSS 6.9 EPSS 0.35% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-08-03 · Last synced 2026-09-02

CyberRota Analysis

AI-Generated

The ip-address library in JavaScript versions 10.1.1 to 10.2.2 is vulnerable due to a flaw in its special-use classification methods, which can incorrectly classify internal addresses as external when a specific CIDR suffix is used. This misclassification can lead to security risks, such as allowing unauthorized access through Server-Side Request Forgery (SSRF) attacks. Developers and organizations using this library for network trust-boundary decisions should prioritize upgrading to version 10.2.2 to mitigate these vulnerabilities.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-69198
Severity
MEDIUM
CVSS
6.9
EPSS
0.35%
Java

Original NVD Description

ip-address is a library for parsing and manipulating IPv4 and IPv6 addresses in JavaScript. From 10.1.1 until 10.2.2, every special-use classification method is built on isInSubnet, which short-circuits to false whenever the address's own subnet mask is shorter than the reference range's mask. That mask comes verbatim from the CIDR suffix on the parsed input, so appending a suffix such as /0 suppresses classification entirely: isLoopback(), isPrivate(), isLinkLocal(), isCGNAT(), isMulticast(), isUnspecified(), isBroadcast(), isULA(), and getType() all report an internal address as unremarkable, while correctForm() and address still return the real internal target. An application that builds a network trust-boundary decision on these checks, for example a filter intended to block Server-Side Request Forgery, or SSRF, may therefore treat an internal target as external and allow the request. The underlying bit comparison is correct, and mask(n) already returns the first n bits of the full parsed address independently of subnetMask; the defect is solely that the containment guard sits in the classification path. This issue is fixed in version 10.2.2.