Live › vulnerability › CVE-2026-118663
Go to dashboardThe serveStatic helper in @hono/node-server decodes the request path a second time after routing, so a crafted percent-encoded path can be routed as one path and served as another. An unauthenticated attacker can reach a static file without the middleware mounted on its prefix (such as an auth check) running.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-28 21:07 UTC, 0h before NVD. All times on this page are UTC.
Applications using @hono/node-server's serveStatic that mount middleware, such as authentication checks, on part of the directory it serves. Applications that serve only public files are not affected, and the file still resolves inside the configured root, so this is not a traversal outside it.
| Product | Ecosystem | Affected | Fixed in |
|---|---|---|---|
| @hono/node-server | npm | >= 1.19.10, < 2.1.3 | 2.1.3 |
npm ls @hono/node-server to find the installed version and whether it is between 1.19.10 and 2.1.3.serveStatic and check whether any middleware is mounted on a prefix that serveStatic also serves.@hono/node-server to 2.1.3.Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
serveStatic decodes the request path a second time after Hono has already decoded it for routing. A crafted request can be routed as one path and served as another, so middleware mounted on a static prefix does not run for a file under that prefix.
Hono decodes the request path once before routing. serveStatic decoded it again before resolving the file. With a malformed percent-encoded sequence, the first decode leaves part of the path encoded, the router matches the encoded form, and the second decode resolves the real directory. The file is still resolved inside the configured root; this is not a traversal outside it.
An unauthenticated attacker may reach static files without the middleware on their prefix running, for example an authentication check. This affects applications that mount middleware on part of the directory served by serveStatic. Applications that serve only public files are not affected.
This page as .md · .json · in your agent: get_signal("CVE-2026-118663")
GitHub Advisory Database, CC-BY 4.0 · NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.