Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend concurrent HTTP requests to Hono SSR endpoint
-
DeliveryAsync JSX component yields at await boundary
-
ExploitEvent loop executes second request's context write
-
ExecutionResumed first component reads second request's context
-
ImpactAttacker or second user receives cross-user sensitive data in response
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the target application to run Hono versions 4.11.8 through before 4.12.27 with server-side rendering enabled via hono/jsx, and to use at least one async JSX component (containing an await expression) that reads from context via createContext, useContext, jsxRenderer, or useRequestContext. The race condition additionally requires that at least two requests be executing concurrently in the same runtime event loop at the moment the async component yields - meaning single-request-at-a-time or purely synchronous SSR deployments are not practically vulnerable. Applications that use Hono only for API routing without JSX SSR, or that use only synchronous components, are not affected. Client-side-only Hono deployments are not vulnerable. The CVSS PR:N vector confirms no authentication is required from the attacker's side to send HTTP requests; exploitation does not require the attacker to hold a valid session, only to trigger concurrent load. |
| Impact | The NVD CVSS 6.5 (Medium) with vector AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N is consistent with the described vulnerability class. AC:H is appropriate because the race condition can only be triggered when two or more requests are concurrently executing async SSR components - a timing-dependent condition. However, in high-concurrency production deployments (edge functions serving many users simultaneously), the probability of hitting this window increases substantially and is not purely theoretical. C:H is well-justified: Hono context APIs are the idiomatic way to propagate request-scoped data, and developers commonly store authentication results, user profile data, and session state in these contexts. I:L reflects the possibility that a request receives and renders another user's context values, corrupting the integrity of the response it delivers. No EPSS data was provided in available intelligence; KEV status is not confirmed. This should be treated as a genuine priority for any Hono application performing SSR with async components and sensitive context data, particularly deployments on edge runtimes where request concurrency is high by design. |
| Exploit ScenarioDerived | An attacker or non-malicious user sends a high volume of concurrent authenticated requests to a Hono SSR application. Under sufficient concurrency, a request handler resumes after an await in an async JSX component and reads context data that was written by a concurrently executing request belonging to a different user, causing a response to be rendered with another user's session or profile data. No public exploit code has been identified, but the race is mechanically straightforward to trigger under load testing conditions. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 08, 2026
Server-side rendering in Hono's JSX module (versions 4.11.8 through before 4.12.27) fails to isolate context values per request, enabling cross-request data leakage under concurrent load. When async components yield at an await boundary, the shared context store can be overwritten by a concurrent in-flight request, causing createContext, useContext, jsxRenderer, or useRequestContext data from one user's session to bleed into another user's response. No public exploit has been identified at time of analysis, but the C:H CVSS impact rating reflects that leaked context values frequently carry sensitive per-user material such as authentication state, session tokens, or profile data.
RemediationAI
Upgrade Hono to version 4.12.27 or later, which resolves the per-request context isolation issue. The fix commit is available at https://github.com/honojs/hono/commit/fab3b13639339cbd5ba1166a5b23d9ac30c5f64f and the release is tagged at https://github.com/honojs/hono/releases/tag/v4.12.27. If an immediate upgrade is not feasible, a partial compensating control is to avoid storing sensitive data (session tokens, authentication results, PII) in Hono context APIs within async SSR components and instead pass such data as explicit component props, which are scoped to the component tree and not subject to the shared-context race. This workaround requires code refactoring and does not eliminate the underlying vulnerability, only reduces the blast radius. Disabling SSR entirely in favor of client-side rendering is a further option but carries significant SEO and performance trade-offs. Vendor-released patch version 4.12.27 is the recommended and definitive fix.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Hono is a lightweight, multi-runtime JavaScript/TypeScript web framework targeting Cloudflare Workers, Deno Deploy, Bun, and Node.js. The vulnerability is rooted in hono/jsx's server-side rendering pipeline, where context is managed through React-like APIs (createContext, useContext, jsxRenderer, useRequestContext). JavaScript's cooperative async model means an awaited expression yields the event loop, allowing another coroutine - here, a concurrent HTTP request handler - to execute and mutate shared state. If the context store is allocated globally or scoped to the renderer instance rather than per-request, the resumed component reads a now-corrupted context. CWE-362 (Concurrent Execution Using Shared Resource with Improper Synchronization) precisely captures this: two execution flows compete over a shared context object without synchronization primitives. The affected CPE is cpe:2.3:a:honojs:hono:*:*:*:*:*:*:*:*, covering all Hono releases in the vulnerable range regardless of runtime target.
Know when Hono gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N
Race condition requires concurrent async requests (AC:H); no attacker credentials needed (PR:N); context leakage yields high confidentiality impact and low integrity impact across user boundaries.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Hono is a Web application framework that provides support for any JavaScript runtime. From 4.11.8 before 4.12.27, hono/jsx did not isolate context values per request during server-side rendering, allowing createContext, useContext, jsxRenderer, or useRequestContext data from a different in-flight request to be used after an await in an async component. This issue is fixed in version 4.12.27.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).
Improper authorization in Hono's JWT Auth Middleware (hono/jwt in the npm package 'hono', versions 1.1.0 through 4.10.1)
The adapter @hono/node-server allows you to run your Hono application on Node.js. Rated high severity (CVSS 7.5), this v
Hono, a web framework, prior to version 4.6.5 is vulnerable to bypass of cross-site request forgery (CSRF) middleware by
Quadratic-complexity denial of service in Hono's `languageDetector` middleware (versions 4.12.0-4.12.33) allows unauthen
Path prefix stripping in Hono's app.mount() API exposes mounted sub-applications to incorrect routing due to a raw-vs-de
Hono is a Web application framework that provides support for any JavaScript runtime. Rated medium severity (CVSS 5.3),
@hono/node-server is an adapter that allows users to run Hono applications on Node.js. Rated medium severity (CVSS 5.3),
Hono is a Web application framework that provides support for any JavaScript runtime. Rated medium severity (CVSS 5.0),
Cross-user HTML disclosure in Hono's server-side rendering affects all applications using hono/jsx with memo()-wrapped c
Hono is a web framework written in TypeScript. Rated medium severity (CVSS 4.3), this vulnerability is remotely exploita
Hono is a Web application framework that provides support for any JavaScript runtime. [CVSS 8.2 HIGH]
Hono versions before 4.11.4 allow JWT algorithm confusion attacks through improper algorithm validation in the JWK/JWKS
EUVD-2026-42326
GHSA-hvrm-45r6-mjfj
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB