Vulnerability in @adonisjs/http-server (CVE-2026-104150)
Summary
Vulnerability in @adonisjs/http-server (CVE-2026-104150). Risk of unauthorized operations or information disclosure. Mitigation: upgrade to 8.2.2 or later.
Original description
The description as published by the source.
Description
A Regular Expression Denial of Service vulnerability in the built-in AdonisJS slug route matcher may allow a remote attacker to block the Node.js event loop using a specially crafted URL.
This affects applications using router.matchers.slug() on a route parameter reachable by an attacker.
Details
The regular expression used by router.matchers.slug() contains adjacent greedy quantifiers with overlapping character classes:
/^[^\s-_](?!.*?[-_]{2,})([a-z0-9-\\]{1,})[^\s]*[^-_\s]$/
When the matcher receives a long string ending with a character rejected by the final assertion, the regular expression engine must evaluate many possible ways of dividing the input between the overlapping quantifiers before determining that it does not match.
This results in quadratic execution time. Testing measured an approximate complexity of O(n^1.98).
Route matchers are evaluated against attacker-controlled URL segments during routing. Therefore, an unauthenticated attacker can trigger the vulnerable expression by sending a request to a route configured as follows:
router
.get('/posts/:slug', handler)
.where('slug', router.matchers.slug())
Routing occurs before route and group middleware. As a result, authentication or rate-limiting middleware attached to the affected route may not prevent exploitation.
The vulnerability is limited to routes that explicitly use the built-in slug matcher.
Impact
Exploitation requires an applicati…
Source: GitHub Security Advisories (Global) NVD GitHub Advisory
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-104150 has been found in @adonisjs/http-server.
Risk of unauthorized operations or information disclosure. CVSS score: 7.5/10.
What to do: upgrade @adonisjs/http-server to 8.2.2 or later.
If unsure, ask your IT team or search "@adonisjs/http-server CVE-2026-104150" on the vendor's site.
CVE-2026-104150 (@adonisjs/http-server) — CWE-400 / CVSS v3 7.5
Attack vector: remote (network-reachable) / unauthenticated / no user interaction
Patched: 8.2.2 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
A vulnerability (CWE-400) exists in @adonisjs/http-server.
Check the vendor advisory for the affected versions of @adonisjs/http-server.
Severity: High (CVSS 7.5/10). Risk of unauthorized operations or information disclosure.
Update to 8.2.2.
Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r '@adonisjs/http-server' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r '@adonisjs/http-server' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
@adonisjs/http-serverを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade @adonisjs/http-server to 8.2.2ステージング環境で 8.2.2 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。