# CVE-2026-69192: ip-address: Address4 decodes leading-zero octets as decimal while resolvers decode them as octal, allowing SSRF and trust-boundary bypass

> Attackers can bypass SSRF filters by using leading-zero octets, causing the library to misinterpret internal IPs as external, allowing access to private networks.

- **Severity:** High 7.7 (`CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:H/SI:N/SA:N`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 3 Aug 2026
- **Updated:** 4 Aug 2026
- **Also known as:** CLEANSTART-2026-AQ64279, CLEANSTART-2026-DA65279, CLEANSTART-2026-NG57316, CLEANSTART-2026-QZ64421, CLSA-2026-1788560487, DEBIAN-CVE-2026-69192, ECHO-d56b-2e54-0c21, GHSA-mwp4-54f8-5fhr, MINI-3hrc-hh2v-rvvh, MINI-4f8m-pgvq-9rqp, MINI-4rp5-3h9m-f6cw, MINI-529f-xmwj-9wc4, MINI-5fc3-jgjg-mg4v, MINI-5g56-mhmr-3hpx, MINI-5m7m-qmmf-6f4x, MINI-63pq-jg62-2pcc, MINI-6ffq-388v-mh95, MINI-6fj3-vw7p-3j56, MINI-7jpp-3p3g-jgrf, MINI-7m52-m5p5-w46h, MINI-87g7-q2m3-jv27, MINI-943g-87jm-8vfr, MINI-98mm-f397-5gg4, MINI-9wjx-42fh-jm2c, MINI-cc52-gc69-w5q9, MINI-f2m7-2fqr-24jc, MINI-f3jp-cj25-g8x9, MINI-f8hx-46w2-gmr3, MINI-fg59-x4g3-qgvg, MINI-gp5f-mv9j-2m52, MINI-h4cf-vcph-mf43, MINI-h7jx-j7cm-3hq7, MINI-hchx-82xv-7fvg, MINI-jm7w-rh3w-6f3g, MINI-m22j-qm7j-qp7g, MINI-m283-3x98-89vg, MINI-p3m5-9fv8-vj2r, MINI-pq4f-vgcq-rrq8, MINI-pr89-44r6-hgm9, MINI-q7rp-274c-c6xm, MINI-r7wq-p47w-734p, MINI-rh3g-7v5g-xwpp, MINI-w7wj-jmh7-4pwg, MINI-wgmw-9g8h-3938, MINI-wjf9-pf9j-v7m6, MINI-wm7v-6m4g-95wp, MINI-wrfh-2f69-ph8h, RHSA-2026:50854, RHSA-2026:50956, RHSA-2026:50969, ROOT-APP-NPM-CVE-2026-69192, UBUNTU-CVE-2026-69192

## What is CVE-2026-69192?

CVE-2026-69192 is a high-severity server-side request forgery vulnerability in beaugunderson ip-address, published on 3 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

ip-address is a library for parsing and manipulating IPv4 and IPv6 addresses in JavaScript. Prior to 10.3.1, Address4 accepts an octet written with a leading zero and decodes it as decimal, while the WHATWG URL host parser, inet_aton, and getaddrinfo all decode a leading zero as octal. The library and the network stack therefore disagree about which host a string names. new Address4('012.0.0.1') reports correctForm() of 12.0.0.1 and isPrivate() of false, but fetch('http://012.0.0.1/') connects to 10.0.0.1. 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, will classify an internal target as external and allow the request. The defect is in the parse gate rather than in any one classifier, so every consumer of Address4 inherits it: isPrivate(), isLoopback(), isLinkLocal(), isCGNAT(), isInSubnet(), isHostInSubnet(), and correctForm() are all computed from the mis-decoded octets. This issue is fixed in version 10.3.1.

Weakness: CWE-918 (Server-Side Request Forgery), CWE-20 (Improper Input Validation)

## Which versions are affected by CVE-2026-69192?

2 open source packages ship an affected version, including ip-address.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `ip-address` | npm | All versions | 10.3.1 |
| `ip-address` | npm | All versions | 10.3.1 |
| `grafana12.4` | Red Hat:hummingbird:1 | All versions | 0:12.4.6-0.4.1.hum1 |
| `grafana12.4` | Red Hat:hummingbird:1 | All versions | 0:12.4.7-0.1.hum1 |
| `grafana13.1` | Red Hat:hummingbird:1 | All versions | 0:13.1.2-0.1.hum1 |

## How do I fix CVE-2026-69192?

Upgrade ip-address to 10.3.1 or later.

## Is CVE-2026-69192 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-69192 exists.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-69192 and fix it if it is affected.

What it is: CVE-2026-69192 is a high-severity server-side request forgery vulnerability in beaugunderson ip-address, published on 3 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-69192 exists.

Affected packages and fixed versions:
- ip-address (npm): affected all versions; fixed in 10.3.1
- ip-address (npm): affected all versions; fixed in 10.3.1

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-69192/ (Markdown: https://insights.sbomify.com/CVE-2026-69192/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-69192
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-69192
- OSV: https://osv.dev/vulnerability/CVE-2026-69192

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-69192/
Summaries are generated and may contain mistakes; the official description above is the record.
