hono/jsx renders plain strings unescaped in boundary components, leading to XSS — GHSA-HXH3-VQPV-XPQV
GitHub · GitHub · GHSA-HXH3-VQPV-XPQV
ID
GHSA-HXH3-VQPV-XPQV
GHSA-HXH3-VQPV-XPQV
Date
Source
GitHub
GitHub
Vendor
GitHub
GitHub
Threat
medium
medium
CVSS
4.7
4.7
EPSS
0.00227
0.00227
Summary
### Summary `hono/jsx` does not HTML-escape a plain string placed directly as a child or `fallback` of `Suspense` or `ErrorBoundary`, as the only child of a `Context.Provider`, or as the root value of `renderToString()` / `renderToReadableStream()` from `hono/jsx/dom/server`. Such a string is emitted as markup instead of text. ### Details These paths stringify their input and treat the result as already-escaped…
Timeline
- Published by source
- 2026-09-30
Risk context
- Reported severity or threat level: medium.
- Reported CVSS score: 4.7 out of 10.
- Reported EPSS value: 0.00227.
- Review exposure for the affected product or family: npm: hono.
Product
npm: hono
What to do
General, cautious steps (verify details in the official source):
- Review exposure and plan remediation based on risk and environment.
- Identify affected product versions in your inventory and verify whether you are impacted.
- Apply vendor patches/updates or recommended mitigations as soon as available.
- Read the official advisory for exact affected versions and remediation steps.
Official advisory
Evidence and provenance
- Canonical advisory ID
- GHSA-HXH3-VQPV-XPQV
- Source
- GitHub
- Vendor
- GitHub
- Published by source
- 2026-09-30
- Last source activity
- 2026-09-30
- Additional identifiers
- CVE-2026-93981
- Curated by
- hlukh.ch
Related advisories and connections
These advisories are connected by shared CVE, product, vendor, source, or time signals.