CVE-2026-56676: decolua 9router SSRF via DNS rebinding in image prefetch

CVE-2026-56676 · Severity: high · CVSS 7.4 · Published 2026-07-10

9Router is an AI routing tool used to manage and optimize requests to various Large Language Models. A security flaw allows authenticated users to bypass network protections and force the router to send requests to internal company servers or private cloud services. This could lead to the exposure of sensitive internal data, unauthorized access to administrative panels, or disruption of internal operations.

Technologies: 9router (npm). Vendors: npm.

Quick answers

Is CVE-2026-56676 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-56676 being exploited in the wild.
How severe is CVE-2026-56676?
High severity, with a CVSS score of 7.4, published 10 July 2026.
Which products and versions are affected?
9router (npm) <= 0.4.80, SEMVER:introduced=0,fixed=0.5.2.
Is there a fix for CVE-2026-56676?
Yes. 9router (npm): upgrade to 0.5.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-56676 attacked?
It is attacked over the network, in a network appliance.
Am I affected by CVE-2026-56676?
Check whether you run 9router (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • 9router (npm): upgrade to 0.5.2 or later
    npm install 9router@0.5.2

Technical details

A Server-Side Request Forgery (SSRF) vulnerability exists in 9Router due to a Time-of-Check Time-of-Use (TOCTOU) flaw in how image URLs are validated. The component 'open-sse/translator/concerns/image.js' resolves a hostname to verify it is a public IP, but then performs a second, independent DNS resolution when actually fetching the image. An attacker can use a DNS rebinding attack—where the first resolution returns a public IP and the second returns a private/internal IP—to bypass the 'public-host' guard. This allows an authenticated attacker using a vision-capable model to make requests to internal Docker services, cloud metadata endpoints, or private administrative interfaces. The issue is fixed in version 0.5.2 by pinning the resolved IP address.

Affected products

  • decolua 9router < 0.5.2

Identifiers

  • CVE-2026-56676
  • GHSA-cmhj-wh2f-9cgx

Timeline

  • 2026-06-17: patched: Version 0.5.2 released
  • 2026-07-07: advisory: GitHub Security Advisory published
  • 2026-07-10: disclosed: CVE published to NVD

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.