
PEACH
Un cadre d’isolation des locataires
CVE-2026-55685 is a Denial of Service vulnerability in the react-router npm package (Framework Mode) caused by inefficient route matching when processing unauthenticated requests to the manifest endpoint (/__manifest). It is a follow-up to GHSA-8x6r-g9mw-2r78, covering additional scenarios where crafted requests to the manifest endpoint generate excessive server load and degrade response times. Affected versions are react-router >= 7.0.0, < 7.18.0; the vulnerability does not affect applications using Declarative or Data Mode. It carries a CVSS v4.0 base score of 8.7 (High) (GitHub Advisory).
The root cause is classified under CWE-400 (Uncontrolled Resource Consumption) and CWE-407 (Inefficient Algorithmic Complexity). In Framework Mode, the /__manifest endpoint accepts a paths query parameter and performs route matching for each supplied path — including recompiling route path regular expressions on every request rather than using precomputed matchers. An unauthenticated attacker can craft targeted HTTP requests with deeply nested or numerous path segments, triggering worst-case algorithmic complexity in the route matching logic and causing significant CPU load on the server. The fix (commit 09e6020) precomputes route branch matchers at startup, enforces a URL length limit (URL_LIMIT = 7680 bytes) returning HTTP 400 for oversized requests, and adds ancestor-path deduplication via getPathsWithAncestors() (GitHub Advisory, Fix Commit).
Successful exploitation degrades server availability by consuming excessive CPU resources during route matching, slowing or blocking legitimate responses for all users of the affected application. The impact is limited to availability — there is no confidentiality or integrity impact, and subsequent systems are not affected. Only React Router Framework Mode applications (versions 7.0.0–7.17.x) are vulnerable; Declarative and Data Mode deployments are unaffected (GitHub Advisory).
/__manifest endpoint, which is publicly accessible without authentication./__manifest with a paths query parameter containing deeply nested or numerous path segments (e.g., /__manifest?paths=%2Fa%2Fb%2Fc%2Fd%2F...&version=<version>) designed to maximize route matching iterations./__manifest (or custom manifest path) from one or more source IPs, particularly with long or deeply nested paths query parameters exceeding normal application usage patterns./__manifest?paths=... with unusually long query strings or high request rates; HTTP 400 responses to oversized manifest requests (post-patch indicator of attempted exploitation).Upgrade react-router to version 7.18.0 or later, which precomputes route matchers, enforces a URL length limit (returning HTTP 400 for requests exceeding 7,680 characters), and deduplicates ancestor paths to eliminate the inefficient algorithmic behavior (GitHub Advisory, v7.18.0 Release). As a temporary workaround prior to patching, consider placing a reverse proxy or WAF in front of the application configured to rate-limit or block requests to the /__manifest endpoint from untrusted sources. Applications using Declarative or Data Mode do not require any action.
Netlify published a changelog entry on July 23, 2026 acknowledging the React Router security vulnerabilities, indicating platform-level awareness and response (Netlify Changelog). The vulnerability was reported by researcher dinhvaren and credited in the GitHub Advisory. No significant broader media coverage or notable social media discussion has been identified beyond the advisory and platform notifications.
Source: Ce rapport a été généré à l’aide de l’IA
Évaluation gratuite des vulnérabilités
Évaluez vos pratiques de sécurité cloud dans 9 domaines de sécurité pour évaluer votre niveau de risque et identifier les failles dans vos défenses.
Obtenez une démo personnalisée
"La meilleure expérience utilisateur que j’ai jamais vue, offre une visibilité totale sur les workloads cloud."
"Wiz fournit une interface unique pour voir ce qui se passe dans nos environnements cloud."
"Nous savons que si Wiz identifie quelque chose comme critique, c’est qu’il l’est réellement."