CVE-2026-59896: hono/jsx does not isolate context per request, leading to cross-request data disclosure

Published Jul 8, 2026
·
Updated

Summary

hono/jsx did not isolate context values per request during server-side rendering. While an async component was suspended on await, its provided context value stayed observable to other requests rendering concurrently, so useContext() could return a value from a different in-flight request.

Details

During server-side rendering, context values were kept in a process-wide structure rather than scoped to each request's render. While an async component awaited, another request entering the same provider could observe or replace the value; when the first render resumed, it could read the other request's context.

This affects the usual ways request-scoped data is passed through a server-rendered JSX tree:

- createContext() / useContext() - the jsxRenderer middleware and useRequestContext()

It arises only when context is read after an await inside an async component while requests render concurrently. Reading context synchronously (before any await), purely synchronous rendering, and client-side (DOM) rendering are not affected.

Impact

Under concurrent requests, a response could be rendered with another request's context. A user may receive HTML rendered for a different user, and an authorization check performed after an await may be evaluated against another user's data.

This may lead to:

- disclosure of rendered output intended for another user - authorization decisions made with the wrong request's context - cross-request mixing of session or other request-scoped state

Other sources

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.

MITRE

Affected Software

3 affected componentsFixes available
npm/hono/jsx>=4.11.8<4.12.27
Hono Hono Node.js>=4.11.8<4.12.27
npm/hono>=4.11.8<4.12.27
4.12.27

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade npm/hono to a version that resolves this vulnerability.

    Fixed in 4.12.27
  2. Upgrade

    Upgrade hono/jsx to a version that resolves this vulnerability.

    Fixed in 4.12.27

Event History

Jul 8, 2026
CVE Published
via MITRE·04:08 PM
Data Sourced
via MITRE·04:08 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·05:17 PM
RemedyDescriptionSeverityWeaknessAffected Software
Jul 21, 2026
Advisory Published
via GitHub·06:34 PM
Data Sourced
via GitHub·06:34 PM
DescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-59896?

CVE-2026-59896 has a medium severity rating of 6.5.

2

What kind of vulnerability is CVE-2026-59896?

CVE-2026-59896 is a cross-request data disclosure vulnerability due to inadequate context isolation.

3

How do I fix CVE-2026-59896?

To fix CVE-2026-59896, upgrade to hono/jsx version 4.12.27 or later.

4

What software is affected by CVE-2026-59896?

CVE-2026-59896 affects the hono/jsx package used in JavaScript applications.

5

How does CVE-2026-59896 impact application security?

CVE-2026-59896 can lead to data disclosure between requests, compromising user privacy.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203