Ad · Leaderboard 728×90

CVE-2026-104150

8.7High

Published 15 Oct 2026 · NVD status: Awaiting Analysis · AI triage by gemini-3.8-flash

8.7High
Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None
Impact
High impact on availability
Weakness
CWE-400, CWE-1333

Impact

Remote unauthenticated attackers can cause denial of service by blocking the Node.js event loop with crafted HTTP requests. They only need network access to any route utilizing the built-in slug matcher.

Root cause

The regular expression returned by router.matchers.slug() contains adjacent greedy repetitions with overlapping character classes, triggering catastrophic polynomial backtracking on malformed input.

Affected systems

AdonisJS HTTP Server (@adonisjs/http-server) prior to 8.2.2 and prior to 9.1.1

CVSS v4.0 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Fix & remediation

Upgrade @adonisjs/http-server to version 8.2.2 (for 8.x) or 9.1.1 (for 9.x). If patching cannot be done immediately, replace usage of router.matchers.slug() with custom, non-backtracking route parameter matchers.

shell
$ npm install @adonisjs/http-server@latest

AI-suggested. Run it in staging first and check it against the vendor advisory. Why?

Ad · In-content banner

NVD description

AdonisJS HTTP Server is a package for handling HTTP requests in the AdonisJS framework. Prior to 8.2.2 and 9.1.1, the regular expression returned by router.matchers.slug() contains adjacent greedy repetitions with overlapping character classes. When an application applies this matcher to an attacker-controlled route parameter, a long slug ending in a character rejected by the final assertion causes quadratic backtracking and excessive CPU use. Route matching occurs before route and group middleware, so authentication or rate-limiting middleware attached to the route may not prevent an unauthenticated request from blocking the Node.js event loop and stopping the worker from serving unrelated requests or health checks. This issue is fixed in versions 8.2.2 and 9.1.1.

References

Source: nvd.nist.gov/vuln/detail/CVE-2026-104150

Ad · Sticky 320×50 / 728×90