Skip to main content
research · coordinated disclosure

$ cat research/9router-api-security.md

9Router API Security Research

One coordinated open-source review resulting in three CVE IDs. The work focused on authentication boundaries, authorization checks, secret handling, and privacy risks in AI request data.

Published July 13, 2026Through version 0.4.41Ngô Tấn Tài (@newnol)
3
CVE IDs
2
Critical
1
High
9.3
Highest CVSS v4

Research approach

  1. 1Mapped dashboard API routes and identified operations handling provider credentials, usage data, and request history.
  2. 2Reviewed server-side route handlers for authentication, authorization, ownership checks, and secret masking.
  3. 3Reproduced findings in a controlled local environment and documented impact without targeting third-party deployments.
  4. 4Coordinated publication through the project security advisory and public CVE records.

Scope and focus

Source-code review
API authentication boundaries
Authorization and tenant isolation
Sensitive-data exposure
Responsible disclosure

$ ls findings/

Assigned CVE findings

These records belong to the same coordinated research case. Each card links to the public NVD entry and the upstream GitHub Security Advisory.

CVE-2026-59801

Unauthenticated provider-management API access

/api/providers/*

Critical · CVSS 4.0 9.3

Summary

Provider-management routes accepted requests without authentication, allowing remote users to enumerate, create, modify, or delete provider connections.

Impact

An attacker could expose partial credentials and OAuth metadata, redirect AI traffic through attacker-controlled providers, alter existing connections, or delete providers and cause service disruption.

Root cause

Sensitive Next.js API routes performed provider CRUD operations without centralized server-side authentication and authorization checks.

affected

9Router <= 0.4.41

weakness

CWE-306

Recommended remediation

  • Require authentication and authorization for every provider-management operation.
  • Return only the minimum provider metadata needed by the dashboard.
  • Audit provider changes and apply least-privilege access controls.
CVE-2026-62327

Plaintext AI provider API-key exposure

/api/usage/stats

Critical · CVSS 4.0 9.3

Summary

An unauthenticated usage endpoint returned complete provider API keys together with usage and billing metadata.

Impact

Exposed keys could be reused against connected AI providers, leading to unauthorized consumption, billing fraud, and quota exhaustion.

Root cause

The usage API lacked authentication and returned full secret values instead of masked identifiers.

affected

9Router <= 0.4.41

weakness

CWE-306 · CWE-522

Recommended remediation

  • Protect all usage endpoints with server-side authentication.
  • Never include full API keys or OAuth secrets in API responses.
  • Rotate credentials that may have been exposed and retain only masked key fingerprints.
CVE-2026-62328

AI request-log and conversation-history disclosure

/api/usage/request-logs and /api/usage/request-details/*

High · CVSS 4.0 8.7

Summary

Unprotected usage routes exposed request metadata and complete AI conversation histories to unauthenticated users.

Impact

The disclosed records could contain system prompts, user messages, assistant responses, tool calls, and user email addresses.

Root cause

Request-log and request-detail handlers lacked authentication and ownership checks before returning sensitive session data.

affected

9Router <= 0.4.41

weakness

CWE-359 · CWE-862

Recommended remediation

  • Require authentication for all request-history endpoints.
  • Enforce per-user or per-tenant ownership checks before returning records.
  • Minimize retained conversation content and redact sensitive fields in logs.

Shared root cause

Sensitive Next.js API handlers did not consistently enforce server-side authentication, authorization, ownership checks, and secret masking. The findings demonstrate why dashboard protection alone is not a security boundary when API routes remain directly reachable.

The durable fix is centralized authentication for sensitive API namespaces, explicit resource authorization, tenant isolation, and response minimization for credentials and conversation data.

Responsible research

The research shown here concerns open-source software and was reproduced in a controlled environment. No third-party deployment, private credential, or user conversation is included on this site.

Public content is limited to impact, root cause, defensive remediation, and links to already published advisory records.

public references

Upstream advisory

The coordinated case is published as GHSA-vjc7-jrh9-9j86 and credits newnol as the reporter. Individual CVE cards above link to the corresponding NVD records.

Open GHSA-vjc7-jrh9-9j86