Denial of Service Vulnerability in find-my-way Node.js Router
A remotely triggerable Denial of Service (DoS) vulnerability exists in the 'find-my-way' router when used with Node.js HTTP/2 servers. Malicious HTTP/2 method values, such as 'constructor' or '__proto__', can be passed to the 'lookup()' function, which then indexes these values against internal data structures. This leads to a crash when the code attempts to access properties of these unexpected values, such as 'currentNode.prefix.length', causing the server to become unavailable. Users are advised to upgrade to version 9.7.0 or validate HTTP methods before processing.
A high-severity Denial of Service (DoS) vulnerability, identified as CVE-2026-47219, affects the find-my-way Node.js router versions up to 9.6.0 when used in conjunction with HTTP/2 servers. This vulnerability allows remote attackers to trigger a server crash by sending HTTP/2 requests with specially crafted method names. The find-my-way router, commonly used in Node.js applications, misinterprets certain HTTP method values (e.g., constructor, __proto__, toString) due to a flaw in its lookup() and find() functions. This leads to an attempt to access properties on unintended JavaScript objects, causing the application to terminate unexpectedly. This vulnerability poses a significant risk to the availability of affected web services, making them susceptible to remote DoS attacks.
Attack Chain
- An attacker sends a specially crafted HTTP/2 request to a Node.js server running
find-my-wayversions up to 9.6.0. - The request includes a malicious HTTP method name, such as
constructoror__proto__, within the HTTP/2 method field. - The
find-my-wayrouter receives this request and processes thereq.methodvalue using its internallookup()andfind()functions. - The
find()function attempts to use the malicious method string (e.g.,constructor) to indexthis.trees[method]. - Due to JavaScript's prototype chain behavior, this lookup resolves to an unexpected inherited object property instead of an intended router node.
- The router code then attempts to access properties, such as
currentNode.prefix.length, on this non-router object. - This action results in an unhandled exception and crashes the Node.js application, leading to a Denial of Service.
Impact
Successful exploitation of CVE-2026-47219 leads to a complete Denial of Service for the affected Node.js HTTP/2 server. Each malicious request can cause the application to crash, rendering the service unavailable to legitimate users. There is no information regarding the number of specific victims or sectors targeted, but any organization using find-my-way with Node.js HTTP/2 is potentially vulnerable. The primary consequence is the disruption of service, which can lead to reputational damage, financial loss, and interruption of critical operations for businesses reliant on these applications.
Recommendation
- Upgrade all instances of the
find-my-waypackage to version 9.7.0 or higher to mitigate CVE-2026-47219. - Deploy the Sigma rule included in this brief to your SIEM and monitor web server logs for anomalous HTTP method names to detect attempts at exploiting CVE-2026-47219.
- As a temporary workaround, validate HTTP methods before processing them with
find-my-wayif immediate upgrade to version 9.7.0 is not feasible.
Detection coverage 1
Detects CVE-2026-47219 Exploitation - find-my-way DoS via Malicious HTTP Method
highDetects CVE-2026-47219 exploitation - HTTP/2 requests using unusual method names like 'constructor' or '__proto__' to trigger a Denial of Service in the 'find-my-way' Node.js router.
Detection queries are available on the platform. Get full rules →