CVE-2026-93981 json
hono/jsx before 4.13.7 Cross-Site Scripting via Unescaped Strings
published 2mo ago modified last mo. also EUVD-2026-83586 , GHSA-hxh3-vqpv-xpqv
- cvss
- 4.7
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 13%
- public exploits
- 0
- none known
Summary
hono before 4.13.7 fails to HTML-escape plain strings rendered by hono/jsx as a child or fallback of Suspense, as a string child of ErrorBoundary alongside an asynchronous sibling, as the single child of a Context.Provider, or as the root value passed to renderToString() or renderToReadableStream() from hono/jsx/dom/server. These paths stringify their input and treat the result as already-escaped markup, so an attacker who controls such a string during server-side rendering can inject arbitrary HTML and execute script under the application's origin.
Patch / fix
- npm hono 4.13.7
- honojs hono 4.13.7
- grafana13.1 hummingbird 1 13.1.6-0.6.hum1
- grafana12.4 hummingbird 1 12.4.10-0.10.hum1
- grafana13.1 hummingbird 1 13.1.6-0.5.hum1
- grafana13.2 hummingbird 1 13.2.1-0.7.hum1
red hat advisories RHSA-2026:74869RHSA-2026:73654RHSA-2026:73655RHSA-2026:71906
Is CVE-2026-93981 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-93981 updated cvss 4.7
hono: hono/jsx: Cross-Site Scripting via Unescaped Strings
-
Red Hat Migration Toolkit for Applications 8 mta/mta-solution-server-rhel9 Red Hat Ansible Automation Platform 2 ansible-automation-platform-27/mcp-server-rhel9, ansible-automation-platform-tech-preview/mcp-server-rhel9 Red Hat Enterprise Linux 10 grafana 12.4.3-2.el10 Red Hat OpenShift AI (RHOAI) rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9 Red Hat OpenShift Dev Spaces devspaces/code-rhel9affected: workaround, no fix available “Fix deferred”
-
Red Hat Hardened Images grafana13.1 13.1.6-0.5.hum1, grafana13.1 13.1.6-0.6.hum1, grafana13.2 13.2.1-0.7.hum1, grafana12.4 12.4.10-0.10.hum1fixed: vendor fix RHSA-2026:73654
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.23% chance of exploitation in the next 30 days, higher than 13% of all scored CVEs (FIRST EPSS, 2026-11-11).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 2.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N |
| CNA | 3.1 | 4.7 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N |
| GitHub | 3.1 | 4.7 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N |
| CNA | 4.0 | 2.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | hono | <4.13.7 |
4.13.7 |
Affected products
- honojs hono
Classification
- Weakness
-
- CWE-79 Improper Neutralization of Input During Web Page Generation
References
-
github.com
/honojs/hono/commit/2b8ed402cdab6dfc5e829b480806dcd8db94161e
web
-
github.com
/honojs/hono/security/advisories/GHSA-hxh3-vqpv-xpqv
vendor-advisory, web, advisory
-
vulncheck.com
/advisories/hono-jsx-before-4.13.7-cross-site-scripting-via-unescaped-strings
third-party-advisory, web
-
nvd.nist.gov
/vuln/detail/CVE-2026-93981
advisory
-
github.com
/honojs/hono
package
-
github.com
/honojs/hono/releases/tag/v4.13.7
web
Sources
- CVE List CVE-2026-93981
- GitHub Advisory GHSA-hxh3-vqpv-xpqv
- NVD CVE-2026-93981
- Maintainer advisory GHSA-hxh3-vqpv-xpqv
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of honojs/hono published their own advisory on GitHub. Reviewed sources take precedence over it.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.