Description
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.
Published: 2026-05-28
Score: 5.3 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Hono framework, prior to version 4.12.21, removes the mount prefix from incoming request paths using the raw URL pathname, while route matching is performed against the percent‑decoded path. When a request contains percent‑encoded multi‑byte characters in the mount prefix, the prefix is stripped at an incorrect position, causing the mounted sub‑application to receive a malformed or unintended path. This inconsistency can lead to logic errors or unintended behavior in the sub‑application, because the handler receives a URL that does not correspond to the intended resource. Based on the description, it is inferred that an attacker can trigger the flaw by sending HTTP requests that contain percent‑encoded multi‑byte characters in the mount path, resulting in incorrect routing.

Affected Systems

Deployments of the honojs Hono web framework with versions older than 4.12.21 that use the app.mount() function to mount sub‑applications and that accept percent‑encoded URLs are affected. Any application that relies on Hono for request routing and that includes encoded characters in mount points is vulnerable.

Risk and Exploitability

The CVSS score of 5.3 indicates moderate severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog. Attackers can trigger the flaw by sending HTTP requests that contain percent‑encoded multi‑byte characters in the mount path; the vulnerability resides solely on the server side, so a remote attacker can exploit it without additional privileges. Given the lack of exploitation data, the likely risk is upper‑medium, but the impact is limited to incorrect routing rather than direct data loss or code execution.

Generated by OpenCVE AI on May 28, 2026 at 19:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Hono framework to version 4.12.21 or later, where the mount‑prefix bug is fixed.
  • Ensure that any mount prefixes used in the application do not contain percent‑encoded sequences, or normalize incoming URLs before route handling to prevent improper stripping.
  • If upgrading is delayed, configure the application to reject or sanitise URLs that include percent‑encoded multi‑byte characters in the mount path, avoiding the unsafe parsing scenario.

Generated by OpenCVE AI on May 28, 2026 at 19:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 28 May 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 28 May 2026 17:00:00 +0000

Type Values Removed Values Added
Description 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.
Title Hono: app.mount() strips mount prefix using undecoded path, causing incorrect routing for percent-encoded paths
Weaknesses CWE-444
CWE-693
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-05-28T19:13:28.934Z

Reserved: 2026-05-19T21:10:38.798Z

Link: CVE-2026-47676

cve-icon Vulnrichment

Updated: 2026-05-28T19:13:22.352Z

cve-icon NVD

Status : Received

Published: 2026-05-28T17:16:32.697

Modified: 2026-05-28T17:16:32.697

Link: CVE-2026-47676

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-05-28T19:30:16Z

Weaknesses