Description
TanStack Router is a client-first, server-capable, fully type-safe router and full-stack framework for the web. From 1.143.12 until 1.169.39 for @tanstack/start-server-core, 1.168.60 for @tanstack/react-start, 1.168.57 for @tanstack/solid-start, and 1.168.56 for @tanstack/vue-start, an unauthenticated attacker can place non-public fields in a server-function request payload so that attacker-controlled middleware state reaches the error path and a response-shaped object is accepted as an HTTP response. A crafted server-function URL can therefore return attacker-controlled HTML from the application's origin; when a visitor opens the URL, the injected script can access same-origin data and issue requests with the visitor's authority. This issue is fixed in @tanstack/start-server-core 1.169.39, @tanstack/react-start 1.168.60, @tanstack/solid-start 1.168.57, and @tanstack/vue-start 1.168.56.
Published: 2026-10-13
Score: 9.3 Critical
EPSS: n/a
KEV: No
Impact: Unauthenticated Reflected Cross‑Site Scripting (XSS) with same‑origin authority
Action: Immediate Patch
AI Analysis

Impact

A vulnerability in TanStack Router allows an unauthenticated attacker to craft a server‑function URL that injects attacker‑controlled HTML into an HTTP response. The injected script runs under the application’s same‑origin privileges, enabling the attacker to read or modify local data, issue authenticated requests, and potentially hijack user sessions. The flaw arises from non‑public fields placed in a server‑function request payload that propagate through middleware to the error path, where they are unsanitized and returned to the client. This is a classic reflected XSS scenario (CWE‑79) with high confidentiality, integrity, and availability impact for any visitor to the crafted URL.

Affected Systems

Affected vendors include @tanstack for the React, Solid, and Vue start‑frameworks and the TanStack Router itself. Vulnerable product versions are @tanstack/start‑server‑core from 1.143.12 up to 1.169.39, @tanstack/react‑start up to 1.168.60, @tanstack/solid‑start up to 1.168.57, and @tanstack/vue‑start up to 1.168.56. Each product’s latest patched release (listed above) resolves the issue by sanitizing middleware state before it reaches the error handling path.

Risk and Exploitability

The CVSS score of 9.3 indicates a critical impact. EPSS data is not available, so the current exploit likelihood cannot be quantified, but the vulnerability is unprotected and can be abused without authentication. It is not listed in the CISA KEV catalog yet, but the high severity suggests that active exploitation is plausible if a malicious actor crafts a malicious URL and lures users to it. The attack vector is inferred to be through a crafted server‑function request URL, which the description explains can be manipulated by an attacker to serve malicious scripts from the application’s origin.

Generated by OpenCVE AI on October 13, 2026 at 18:28 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade @tanstack/start-server-core to version 1.169.39 or later
  • Upgrade @tanstack/react-start to version 1.168.60 or later
  • Upgrade @tanstack/solid-start to version 1.168.57 or later
  • Upgrade @tanstack/vue-start to version 1.168.56 or later

Generated by OpenCVE AI on October 13, 2026 at 18:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 13 Oct 2026 16:30:00 +0000

Type Values Removed Values Added
Description TanStack Router is a client-first, server-capable, fully type-safe router and full-stack framework for the web. From 1.143.12 until 1.169.39 for @tanstack/start-server-core, 1.168.60 for @tanstack/react-start, 1.168.57 for @tanstack/solid-start, and 1.168.56 for @tanstack/vue-start, an unauthenticated attacker can place non-public fields in a server-function request payload so that attacker-controlled middleware state reaches the error path and a response-shaped object is accepted as an HTTP response. A crafted server-function URL can therefore return attacker-controlled HTML from the application's origin; when a visitor opens the URL, the injected script can access same-origin data and issue requests with the visitor's authority. This issue is fixed in @tanstack/start-server-core 1.169.39, @tanstack/react-start 1.168.60, @tanstack/solid-start 1.168.57, and @tanstack/vue-start 1.168.56.
Title TanStack Router: Unauthenticated reflected XSS in TanStack Start server-function responses
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 9.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-13T16:13:13.105Z

Reserved: 2026-09-29T20:46:08.334Z

Link: CVE-2026-102989

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-13T17:17:14.797

Modified: 2026-10-13T17:17:14.797

Link: CVE-2026-102989

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-13T18:30:07Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')