CVE-2026-84394
Fixed in a distro release EPSS <1%CVSS 7.5
fast-uri accepts a host that contains an unbalanced or misplaced authority bracket without reporting an error. A host that starts with an opening bracket but does not end with a closing bracket is neither validated as an IP literal nor canonicalized as a domain name, so parse() returns it as the host with error undefined, while Node's URL and the HTTP clients built on it resolve the same string to a different host. An application that reads the parsed host to make a host decision, such as an SSRF denylist, a redirect allowlist, or proxy routing, and then passes the original URL to an HTTP client evaluates its policy against a string that is not the host the request reaches. The same host is carried through normalize, equal, and resolve. This affects fast-uri versions 2.4.5, 3.1.6, and 4.1.3, and is fixed in 2.4.6, 3.1.7, and 4.1.4, where parse() reports a malformed host for any host that contains a bracket but is not a valid IPv6 literal.
Products: fast-uri
Fixed upstream
| Ecosystem | Package | Fixed in |
|---|---|---|
| npm | fast-uri | 2.4.6 |
| npm | fast-uri | 3.1.7 |
| npm | fast-uri | 4.1.4 |
Distro releases
| Release | Package | Fixed in |
|---|---|---|
| Chainguard | commercial-gitlab-rails-ee-19.1 | 19.1.7-r3 |
| Chainguard | commercial-gitlab-rails-ee-19.2 | 19.2.7-r1 |
| Chainguard | commercial-gitlab-rails-ee-19.3 | 19.3.3-r1 |
| Chainguard | commercial-gitlab-rails-ee-19.4 | 19.4.1-r1 |
| Chainguard | commercial-gitlab-rails-ee-fips-19.1 | 19.1.9-r0 |
| Chainguard | commercial-gitlab-rails-ee-fips-19.2 | 19.2.7-r1 |
| Chainguard | commercial-gitlab-rails-ee-fips-19.3 | 19.3.3-r1 |
| Chainguard | commercial-gitlab-rails-ee-fips-19.4 | 19.4.1-r1 |
| Chainguard | gitlab-rails-ce-19.1 | 19.1.8-r6 |
| Chainguard | gitlab-rails-ce-19.2 | 19.2.7-r3 |
| Chainguard | gitlab-rails-ce-19.3 | 19.3.3-r2 |
| Chainguard | gitlab-rails-ce-19.4 | 19.4.1-r2 |
| Chainguard | gitlab-rails-ce-fips-19.1 | 19.1.8-r9 |
| Chainguard | gitlab-rails-ce-fips-19.2 | 19.2.7-r5 |
| Chainguard | gitlab-rails-ce-fips-19.3 | 19.3.3-r5 |
| Chainguard | gitlab-rails-ce-fips-19.4 | 19.4.1-r5 |
| Chainguard | keep-ui | 0.54.3-r3 |
| Chainguard | keep-ui-fips | 0.54.3-r3 |
| Chainguard | nextcloud-server-32 | no fix |
| Chainguard | nextcloud-server-34 | 34.0.4-r3 |
| Chainguard | nextcloud-server-35 | 35.0.0-r2 |
| Chainguard | opensearch-dashboards-3 | 3.8.0-r6 |
| Chainguard | prism | 5.16.0-r11 |
| Chainguard | renovate | 44.119.1-r0 |
| Chainguard | renovate | 44.118.2-r0 |
| Chainguard | serve | 14.2.6-r7 |
| Chainguard | unleash | 8.2.0-r2 |
| Chainguard | unleash-proxy | 1.4.19-r11 |
| Chainguard | vitess-24 | 24.0.3-r10 |
| Chainguard | wazuh-dashboard | 4.14.8-r1 |
| Chainguard | wazuh-dashboard-fips | 4.14.8-r1 |
| Chainguard | wazuh-dashboard-security-plugin | 4.14.8-r1 |
| Chainguard | wazuh-dashboard-security-plugin-fips | 4.14.8-r1 |
| Chainguard | yaml-language-server | 1.24.0-r6 |
| Debian 13 | node-ajv | no fix |
| Debian 14 | node-ajv | 8.20.0~ds+~cs7.1.5-1 |
| Red Hat hummingbird 1 | grafana12.4 | 0:12.4.9-0.6.hum1 |
| Red Hat hummingbird 1 | grafana13.1 | 0:13.1.3-0.6.hum1 |
| Red Hat hummingbird 1 | grafana13.2 | 0:13.2.1-0.2.hum1 |
| Red Hat satellite 6.19 | foreman | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-cli | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-debug | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-dynflow-sidekiq | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-ec2 | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-journald | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-libvirt | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-openstack | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-pcp | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-postgresql | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-redis | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-service | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-telemetry | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | foreman-vmware | 0:3.18.0.14-1.el9sat |
| Red Hat satellite 6.19 | python3.12-dynaconf | 0:3.2.13-2.el9pc |
| Red Hat satellite 6.19 | python3.12-gitpython | 0:3.1.62-1.el9pc |
| Red Hat satellite 6.19 | python3.12-sqlparse | 0:0.6.0-1.el9pc |
| Red Hat satellite 6.19 | rubygem-foreman_remote_execution | 0:16.5.3-2.el9sat |
| Red Hat satellite 6.19 | rubygem-foreman_remote_execution-cockpit | 0:16.5.3-2.el9sat |
| Red Hat satellite 6.19 | rubygem-hammer_cli | 0:3.18.0-2.el9sat |
| Red Hat satellite 6.19 | rubygem-katello | 0:4.20.0.11-1.el9sat |
| Red Hat satellite 6.19 | yggdrasil-worker-forwarder | 0:0.1.0-2.1.el9sat |
| Red Hat satellite capsule 6.19 | foreman | 0:3.18.0.14-1.el9sat |
| Red Hat satellite capsule 6.19 | foreman-debug | 0:3.18.0.14-1.el9sat |
| Red Hat satellite capsule 6.19 | foreman-pcp | 0:3.18.0.14-1.el9sat |
| Red Hat satellite capsule 6.19 | python3.12-dynaconf | 0:3.2.13-2.el9pc |
| Red Hat satellite capsule 6.19 | python3.12-gitpython | 0:3.1.62-1.el9pc |
| Red Hat satellite capsule 6.19 | python3.12-sqlparse | 0:0.6.0-1.el9pc |
| Red Hat satellite utils 6.19 | foreman | 0:3.18.0.14-1.el9sat |
| Red Hat satellite utils 6.19 | foreman-cli | 0:3.18.0.14-1.el9sat |
| Red Hat satellite utils 6.19 | rubygem-hammer_cli | 0:3.18.0-2.el9sat |
| Ubuntu 18.04 LTS | node-ajv | no fix |
| Ubuntu 20.04 LTS | node-ajv | no fix |
| Ubuntu 22.04 LTS | node-ajv | no fix |
| Ubuntu 24.04 LTS | node-ajv | no fix |
| Ubuntu 26.04 LTS | node-ajv | no fix |
| Ubuntu 26.10 | node-ajv | no fix |
| Wolfi | opensearch-dashboards-3 | 3.8.0-r6 |
| Wolfi | prism | 5.16.0-r11 |
| Wolfi | renovate | 44.119.1-r0 |
| Wolfi | renovate | 44.118.2-r0 |
| Wolfi | serve | 14.2.6-r7 |
| Wolfi | vitess-24 | 24.0.3-r10 |
| Wolfi | yaml-language-server | 1.24.0-r6 |