← Blog
🛡️ Vulnérabilité21 octobre 2026

CVE-2026-102989 : XSS critique sans authentification dans TanStack Start

Vulnérabilité critique (CVSS 9.3) de type XSS réfléchi dans TanStack Start, sans authentification. Ce qu'elle est, qui elle affecte et comment s'en protéger.

OCIRIA security team

CVE-2026-102989 : XSS critique sans authentification dans TanStack Start

En bref

Une vulnérabilité critique a été publiée, identifiée comme CVE-2026-102989, avec un score CVSS de 9.3 sur 10 [1], qui affecte les applications web construites avec TanStack Start. La faille permet à un attaquant, sans avoir besoin d'identifiants ni de compte utilisateur, de faire en sorte que l'application renvoie une page avec un contenu manipulé depuis le domaine même de l'entreprise, ce qui peut entraîner un vol de données ou des actions non autorisées au nom de la victime. Si votre équipe de développement utilise ce framework, la recommandation immédiate est de mettre à jour vers les versions corrigées et de vérifier quelles applications en production l'utilisent.

Qu'est-ce que c'est et pourquoi c'est important

TanStack Start est un framework pour construire des applications web qui combinent logique client et serveur, disponible en variantes pour React, Solid et Vue. La vulnérabilité réside dans la manière dont les « fonctions serveur » (server functions) traitent les requêtes : un attaquant peut inclure dans la requête des champs qui ne devraient pas pouvoir être manipulés depuis l'extérieur, de sorte que l'état interne de l'application finisse par accepter un objet ayant la forme d'une réponse HTTP comme s'il s'agissait d'une réponse légitime [1]. Le résultat pratique est qu'une URL spécialement conçue peut faire en sorte que l'application renvoie du HTML contrôlé par l'attaquant, incluant du code JavaScript, servi depuis le domaine réel de l'entreprise.

Selon l'analyse de l'équipe d'OCIRIA, il s'agit d'une injection XSS (cross-site scripting) réfléchie qui ne nécessite pas d'authentification préalable de la part de l'attaquant, ce qui la rend particulièrement délicate : il suffit qu'un utilisateur légitime clique sur un lien manipulé pour que le script s'exécute dans son navigateur, avec accès aux données de la même origine et capacité à effectuer des requêtes avec l'identité de cette personne.

La vulnérabilité a été publiée le 13 octobre 2026 [1] et est qualifiée de « critique » selon les critères du NVD [1]. À la date de ce post, elle ne figure pas dans le catalogue des vulnérabilités activement exploitées (KEV) de CISA [2], ce qui indique qu'il n'existe pas de preuve publique d'une exploitation massive confirmée, bien que cela puisse changer et ne doive pas être interprété comme une absence de risque.

Qui est concerné

Le problème affecte les paquets suivants de l'écosystème TanStack Start, dans les plages de versions indiquées avant leur correction [3] :

  • @tanstack/start-server-core : de 1.143.12 à 1.169.39
  • @tanstack/react-start : jusqu'à 1.168.60
  • @tanstack/solid-start : jusqu'à 1.168.57
  • @tanstack/vue-start : jusqu'à 1.168.56

Toute organisation disposant d'applications web propres ou confiées à des tiers construites sur l'un de ces paquets est potentiellement exposée, indépendamment de la taille de l'entreprise ou du secteur. Il ne s'agit pas d'un produit commercial précis d'un fournisseur, mais d'un composant d'infrastructure de développement qui peut être intégré dans des portails clients, des intranets, des panneaux d'administration ou des applications mobiles avec backend web.

Comment savoir si vous êtes vulnérable

La première étape consiste à demander à ceux qui développent ou maintiennent vos applications web s'ils utilisent TanStack Start et, si oui, quelle version des paquets affectés est installée. Vérifier le fichier de dépendances (package.json ou le lockfile correspondant) suffit généralement pour identifier la version exacte.

Il est également recommandé de vérifier quelles applications et sous-domaines de l'entreprise sont exposés publiquement sur internet, car l'inventaire complet des actifs numériques n'est pas toujours documenté à jour, en particulier dans les organisations comptant plusieurs équipes de développement ou prestataires externes. Connaître la surface d'exposition réelle est le point de départ pour prioriser ce qu'il faut examiner en premier.

Comment vous protéger

1. Identifiez si une application de l'entreprise utilise TanStack Start et dans quelle version.

2. Mettez à jour vers les versions corrigées dès que possible : @tanstack/start-server-core 1.169.39, @tanstack/react-start 1.168.60, @tanstack/solid-start 1.168.57 ou @tanstack/vue-start 1.168.56, selon le paquet que vous utilisez [3].

3. Si vous ne pouvez pas mettre à jour immédiatement, demandez à votre équipe technique ou à votre prestataire de revoir la logique de validation des fonctions serveur comme mesure temporaire.

4. Auditez les applications en production après la mise à jour pour confirmer que le comportement est celui attendu.

5. Vérifiez périodiquement quelles technologies et versions utilisent vos applications exposées, pas seulement lors d'une alerte ponctuelle.

FAQ

Dois-je avoir un compte ou des identifiants compromis pour être victime de cette attaque ?

Non. La faille ne nécessite pas d'authentification de la part de l'attaquant pour construire l'URL malveillante ; la victime a seulement besoin de la visiter [1].

Cette vulnérabilité est-elle activement exploitée ?

À ce jour, elle n'apparaît pas dans le catalogue KEV de CISA, qui recense les vulnérabilités avec exploitation confirmée [2]. Cela ne garantit pas qu'elle ne sera pas exploitée à l'avenir, c'est pourquoi il est recommandé d'agir avec la même priorité que face à toute faille critique.

Cela affecte-t-il uniquement ceux qui utilisent React ?

Non. Cela affecte également les variantes Solid et Vue du framework, en plus du paquet central du serveur [3].

Sources

  • [1] https://nvd.nist.gov/vuln/detail/CVE-2026-102989
  • [2] https://raw.githubusercontent.com/cisagov/kev-data/develop/known_exploited_vulnerabilities.json
  • [3] https://github.com/advisories/GHSA-qx66-fv34-fjm8
OCIRIA security team Threat monitoring & response · data from our real-time radar Live radar