GitHub Advisoryadvisory · npm
GHSA-qp7p-654g-cw7p Hono has CSS Declaration Injection via Style Object Values in JSX SSR
MEDIUM
Official page ↗
- Aliases
- CVE-2026-44458
- Ecosystem
- npm
- Packages
- hono
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
- Weaknesses
- CWE-116, CWE-74
- Reviewed
- 2026-05-09
Affected packages
• npm hono: < 4.12.18 → fixed in 4.12.18
Description
Summary
The JSX renderer escapes `style` attribute object values for HTML but not for CSS. Untrusted input in a `style` object value or property name can therefore inject additional CSS declarations into the rendered `style` attribute. The impact is limited to CSS and does not allow JavaScript execution or HTML attribute breakout.
Details
`style` object values are serialized into a CSS declaration list and escaped for HTML attribute context only. Characters that act as CSS declaration boundaries — such as `;`, comment markers, quoted strings, and block delimiters — are valid in HTML attribute content and can extend a value beyond its assigned property.
This issue arises when untrusted input is interpolated into a JSX `style` object and rendered server-side.
Impact
An attacker who can control the value or property name of a `style` object may inject arbitrary CSS declarations. This may lead to:
• Visual manipulation of the page, including full-viewport overlays usable for phishing
• Outbound requests to attacker-controlled hosts via CSS resource references such as `url(...)`
• Hijacking of UI affordances through layout, positioning, or visibility changes
This issue affects applications that render JSX on the server with `style` object values or property names derived from untrusted input.
Related
Alias · CVE (1)
- CVE-2026-44458 Hono is a Web application framework that provides support for any JavaScript runtime. vulnerability