Skip to main content

9Router EUVDEUVD-2026-44813

| CVE-2026-56678 MEDIUM
Improper Input Validation (CWE-20)
2026-07-15 GitHub_M
6.4
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
6.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
vuln.today AI
6.4 MEDIUM

Network-reachable endpoint, low complexity; PR:L because valid account required; S:C for out-of-scope credential exfiltration; no availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

3
Patch available
Jul 15, 2026 - 22:33 EUVD
Source Code Evidence Fetched
Jul 15, 2026 - 21:16 vuln.today
Analysis Generated
Jul 15, 2026 - 21:16 vuln.today

DescriptionCVE.org

9Router is an AI router & token saver. Prior to 0.5.6, the Kiro API-key validation endpoint POST /api/oauth/kiro/api-key builds an upstream URL using a user-controlled region value, allowing an authenticated attacker to supply a crafted region such as kiro-canary.local:8443

and cause 9Router to send the Kiro validation request to an attacker-controlled host while forwarding the submitted Kiro API key as an Authorization header. This issue is fixed in version 0.5.6.

AnalysisAI

Server-side request forgery (SSRF) in 9Router's Kiro API-key validation endpoint allows authenticated attackers to redirect outbound validation requests to an attacker-controlled host, exfiltrating the submitted Kiro API key via the Authorization header. Affected are all 9Router deployments prior to version 0.5.6 where the Kiro OAuth provider is configured. No public exploit code exists and the vulnerability is not listed in CISA KEV, but the attack is low-complexity once authenticated. Vendor-released patch is available in v0.5.6.

Technical ContextAI

9Router is a Next.js-based AI request router that proxies and multiplexes LLM API calls. The vulnerable endpoint at POST /api/oauth/kiro/api-key accepts a user-supplied region string and interpolates it directly into an upstream AWS OIDC URL of the form https://oidc.${region}.amazonaws.com/token without any allowlist validation. By supplying a crafted region value such as 'kiro-canary.local:8443#', the '#' URL fragment character causes the remainder of the legitimate hostname ('.amazonaws.com/token') to be treated as a fragment - effectively truncating the URL - and routing the HTTP request to the attacker-controlled host. This is a classic CWE-20 (Improper Input Validation) leading to SSRF. The affected CPE is cpe:2.3:a:decolua:9router:*:*:*:*:*:*:*:*. The scope change (S:C) in the CVSS vector reflects that the impact propagates to an out-of-scope system (the attacker's server receiving the credential).

RemediationAI

Upgrade to 9Router v0.5.6, which introduces an AWS region allowlist regex (/^[a-z]{2}-[a-z]+-\d{1,2}$/) via the assertValidAwsRegion() function applied across all region interpolation points in KiroService and related providers, preventing arbitrary host injection. The fix is confirmed in the tagged release at https://github.com/decolua/9router/releases/tag/v0.5.6 and commit https://github.com/decolua/9router/commit/126aa244c5b51b74ab8c7594e3418fcf4437bf6f. If immediate upgrade is not possible, operators can restrict access to the POST /api/oauth/kiro/api-key endpoint to trusted internal networks only via reverse-proxy ACLs; this eliminates remote exploitation but may break legitimate Kiro OAuth flows for external users. Disabling the Kiro OAuth provider entirely is a more disruptive but complete compensating control.

CVE-2026-59801 CRITICAL POC
9.3 Jul 13

Unauthenticated CRUD on the provider-management API in 9Router (through 0.4.41) lets remote attackers with no credential

CVE-2026-56677 HIGH POC
8.6 Aug 17

Server-Side Request Forgery (SSRF) in 9Router 0.5.4 and earlier allows unauthenticated remote attackers to probe interna

CVE-2026-63732 CRITICAL
9.4 Jul 23

Remote unauthenticated code execution in 9router 0.4.59 (by decolua) lets an attacker chain three flaws - a hardcoded de

CVE-2026-5842 MEDIUM POC
5.5 Apr 09

Remote authorization bypass in decolua 9router up to version 0.3.47 allows unauthenticated network attackers to access t

CVE-2026-62327 CRITICAL
9.3 Jul 13

Unauthenticated API key disclosure in 9Router (npm package '9router' by decolua) through version 0.4.41 lets any remote

CVE-2026-62312 HIGH
8.8 Jul 15

Authenticated remote code execution in 9Router before 0.5.2 lets a logged-in attacker run arbitrary OS commands on the h

CVE-2026-62328 HIGH
8.7 Jul 13

Unauthenticated information disclosure in 9Router (decolua/9router) through version 0.4.41 lets remote attackers read ev

CVE-2026-56679 HIGH
8.7 Jul 15

Authentication bypass in 9Router (AI router & token saver) prior to 0.5.4 lets any authenticated user disable applicatio

CVE-2026-55638 HIGH POC
8.6 Jul 10

Authorization-gate bypass in 9Router (decolua/9router) before 0.5.2 lets a remote unauthenticated attacker reach protect

CVE-2026-63313 HIGH
8.3 Jul 23

Server-side request forgery in 9Router before 0.4.72 lets an authenticated (PR:L) or locally-connected user abuse the /v

CVE-2026-56675 HIGH
8.3 Jul 10

Authentication bypass in 9Router (decolua/9router) versions prior to 0.5.2 lets remote unauthenticated attackers reach p

CVE-2026-55641 HIGH POC
8.2 Jul 10

Authentication bypass in 9Router (decolua/9router) before 0.5.2 lets a remote unauthenticated attacker forge a 'Host: lo

Share

EUVD-2026-44813 vulnerability details – vuln.today

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