Skip to main content

Hono CVE-2026-47676

| EUVDEUVD-2026-32924 MEDIUM
HTTP Request/Response Smuggling (CWE-444)
2026-05-28 GitHub_M GHSA-2gcr-mfcq-wcc3
5.3
CVSS 3.1 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
May 28, 2026 - 18:02 EUVD
Analysis Generated
May 28, 2026 - 17:24 vuln.today

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 8 npm packages depend on hono (8 direct, 0 indirect)

Ecosystem-wide dependent count for version 4.12.21.

DescriptionGitHub Advisory

Hono is a Web application framework that provides support for any JavaScript runtime. Prior to 4.12.21, app.mount() strips the mount prefix from the incoming request path using the raw URL pathname, while route matching is performed against the percent-decoded path. This inconsistency causes the prefix to be stripped at the wrong position when the path contains percent-encoded multi-byte characters, resulting in the mounted sub-application receiving an incorrect path. This vulnerability is fixed in 4.12.21.

AnalysisAI

Path prefix stripping in Hono's app.mount() API exposes mounted sub-applications to incorrect routing due to a raw-vs-decoded URL path inconsistency, potentially allowing unauthenticated remote attackers to reach unintended endpoints and disclose protected information. All Hono versions prior to 4.12.21 are affected across every supported JavaScript runtime. No public exploit or CISA KEV listing exists at time of analysis; however, the CVSS vector AV:N/AC:L/PR:N/UI:N and the 'Information Disclosure / Request Smuggling' classification make this a meaningful priority for any deployment that relies on mount-prefix path logic for access segregation.

Technical ContextAI

Hono is a lightweight, multi-runtime web framework for JavaScript (Cloudflare Workers, Deno, Bun, Node.js, and others). The vulnerability is rooted in CWE-444 - Inconsistent Interpretation of HTTP Requests - a class of flaw where different layers of the same stack parse the same input differently, enabling attackers to exploit the gap. Specifically, app.mount() strips the mount prefix from an incoming request path using the raw (percent-encoded) URL pathname, but the subsequent route matching step operates against the percent-decoded version of that path. When a URL contains percent-encoded multi-byte characters (e.g., multi-byte UTF-8 sequences represented as %XX%XX), the byte-length difference between the encoded and decoded forms causes the prefix to be stripped at the wrong character boundary. The sub-application consequently receives a malformed or shifted path that does not correspond to any route the developer intended to expose, potentially bypassing path-prefix-based access controls. The affected CPE is cpe:2.3:a:honojs:hono:*:*:*:*:*:*:*:*, covering all Hono versions prior to 4.12.21.

RemediationAI

Upgrade Hono to version 4.12.21 or later, which resolves the inconsistency between raw-pathname prefix stripping and percent-decoded route matching in app.mount(). This is a vendor-released patch confirmed at version 4.12.21 per the GitHub Security Advisory GHSA-2gcr-mfcq-wcc3 at https://github.com/honojs/hono/security/advisories/GHSA-2gcr-mfcq-wcc3. If immediate upgrade is blocked, a compensating control is to enforce URL path canonicalization at the reverse proxy or WAF layer - specifically, percent-decode and then re-encode all incoming paths to a canonical form before they reach the Hono process, which eliminates the raw/decoded discrepancy. Note that this may break applications intentionally handling raw percent-encoded paths. A second mitigation is to remove reliance on app.mount() path prefixes as a security boundary entirely: add explicit authentication or authorization middleware inside each mounted sub-application so that even if a path is misrouted, the sub-app independently enforces access control. This approach is the more architecturally sound long-term posture regardless of patch status.

More in Hono

View all
CVE-2024-48913 MEDIUM POC
5.9 Oct 15

Hono, a web framework, prior to version 4.6.5 is vulnerable to bypass of cross-site request forgery (CSRF) middleware by

CVE-2024-32869 MEDIUM POC
5.3 Apr 23

Hono is a Web application framework that provides support for any JavaScript runtime. Rated medium severity (CVSS 5.3),

CVE-2024-43787 MEDIUM POC
5.0 Aug 22

Hono is a Web application framework that provides support for any JavaScript runtime. Rated medium severity (CVSS 5.0),

CVE-2023-50710 MEDIUM POC
4.3 Dec 14

Hono is a web framework written in TypeScript. Rated medium severity (CVSS 4.3), this vulnerability is remotely exploita

CVE-2026-27700 HIGH
8.2 Feb 25

Hono is a Web application framework that provides support for any JavaScript runtime. [CVSS 8.2 HIGH]

CVE-2026-22818 HIGH
8.2 Jan 13

Hono versions before 4.11.4 allow JWT algorithm confusion attacks through improper algorithm validation in the JWK/JWKS

CVE-2026-22817 HIGH
8.2 Jan 13

Hono before version 4.11.4 contains a JWT algorithm confusion vulnerability in its JWK/JWKS verification middleware that

CVE-2026-29045 HIGH
7.5 Mar 04

Hono versions prior to 4.12.4 suffer from an authentication bypass in serveStatic when combined with route-based middlew

CVE-2020-27217 HIGH
7.5 Nov 13

In Eclipse Hono version 1.3.0 and 1.4.0 the AMQP protocol adapter does not verify the size of AMQP messages received fro

CVE-2025-71381 MEDIUM
6.9 Jun 30

Header injection in Hono's CORS middleware exposes applications to cache key pollution across versions before 4.10.3. Wh

CVE-2026-56762 MEDIUM
6.9 Jun 23

Missing cookie name validation on the write path in Hono's setCookie(), serialize(), and serializeSigned() functions all

CVE-2026-59896 MEDIUM
6.5 Jul 08

Server-side rendering in Hono's JSX module (versions 4.11.8 through before 4.12.27) fails to isolate context values per

Share

CVE-2026-47676 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy