GHSA-rmxm-3fg6-px4f

    Dashboard / Vulnerabilities / GHSA-rmxm-3fg6-px4f

    GHSA-rmxm-3fg6-px4f

    Published: 28 Oct 2026Last Modified: 28 Oct 2026

    Summary: @hono/node-server: `serveStatic` decodes the request path a second time, leading to bypass of middleware on static paths

    Details: ### Summary `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. ### Details 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. ### Impact 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.

    Affected packages

    Package

    Name: @hono/node-server

    Purl: pkg:npm/%40hono/node-server

    Affected ranges

    Type: SEMVER

    Events:

    Introduced- 1.19.10
    Fixed -2.1.3

    Affected versions

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High