Katalog CVE

CVE-2026-56681

WysokieCVSS 7.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Streszczenie

9Router to router AI i oszczędzacz tokenów. Przed wersją 0.5.6 wdrożenia 9Router, które pozwalają żądaniom dotrzeć do Next.js bez sanityzującego wrappera custom-server.js, ufają nagłówkowi X-9r-Real-Ip dostarczonemu przez klienta w src/dashboardGuard.js, gdy isLocalRequest decyduje, czy canAccessPublicLlmApi może pominąć walidację klucza API dla tras /api/v1/*. Zdalny nieuwierzytelniony atakujący może ustawić X-9r-Real-Ip na 127.0.0.1 i zostać sklasyfikowany jako klient lokalny, w tym na zweryfikowanej trasie GET /api/v1/models. Problem naprawiono w wersji 0.5.6.

Ocena ryzyka

Atakujący może nieautoryzowanie korzystać ze skonfigurowanych dostawców LLM właściciela instancji, zużywać płatne kredyty oraz enumerować skonfigurowanych dostawców i modele. Może to prowadzić do strat finansowych i ujawnienia informacji.

Rekomendacja

Zaktualizuj 9Router do wersji 0.5.6 lub nowszej. Upewnij się, że żądania przechodzą przez sanityzujący wrapper custom-server.js i nie ufaj nagłówkom klienta do klasyfikacji lokalności.

Inne podatności w 9Router

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

9Router is an AI router & token saver. Prior to 0.5.6, 9Router deployments that allow requests to reach Next.js without the sanitizing custom-server.js wrapper trust the client-supplied X-9r-Real-Ip header in src/dashboardGuard.js when isLocalRequest decides whether canAccessPublicLlmApi may skip API-key validation for /api/v1/* routes. A remote unauthenticated attacker can set X-9r-Real-Ip to 127.0.0.1 and be classified as a local client, including on the verified GET /api/v1/models route. This permits unauthorized use of the instance owner's configured LLM providers, consumption of paid credits, and enumeration of configured providers and models. This issue is fixed in version 0.5.6.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS