CVE-2026-29085
Hono: SSE Control Field Injection via CR/LF in writeSSE()
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters. Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields. This issue has been patched in version 4.12.4.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
6.5
Hono: SSE Control Field Injection via CR/LF in writeSSE()
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters. Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields. This issue has been patched in version 4.12.4.
- Record
CVE-2026-29085- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
EUVDEUVD-2026-9507
6.5
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters. Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields. This issue has been patched in version 4.12.4.
- Record
EUVD-2026-9507- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-p6xx-57qc-3wxr
6.5
Hono Vulnerable to SSE Control Field Injection via CR/LF in writeSSE()
Summary
When using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters.
Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields.
Details
The SSE helper builds event frames by joining lines with \n. While multi-line data: fields are handled according to the SSE specification, the event, id, and retry fields previously allowed raw values without rejecting embedded CR/LF characters.
Including CR/LF in these control fields could allow unintended additional fields (such as data:, id:, or retry:) to be injected into the event stream.
The issue has been fixed by rejecting CR/LF characters in these fields.
Impact
An attacker could manipulate the structure of SSE event frames if an application passed user-controlled input directly into event, id, or retry.
Depending on application behavior, this could result in injected SSE fields or altered event stream handling. Applications that render e.data in an unsafe manner (for example, using innerHTML) could potentially expose themselves to client-side script injection.
This issue affects applications that rely on the SSE helper to enforce protocol-level constraints.
- Record
GHSA-p6xx-57qc-3wxr- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
NVD
6.5
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters. Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields. This issue has been patched in version 4.12.4.
- Record
CVE-2026-29085- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
OSV
6.5
Hono: SSE Control Field Injection via CR/LF in writeSSE()
Hono is a Web application framework that provides support for any JavaScript runtime. Prior to version 4.12.4, when using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters. Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields. This issue has been patched in version 4.12.4.
- Record
CVE-2026-29085- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
OSVGHSA-p6xx-57qc-3wxr
6.5
Hono Vulnerable to SSE Control Field Injection via CR/LF in writeSSE()
Summary
When using streamSSE() in Streaming Helper, the event, id, and retry fields were not validated for carriage return (\r) or newline (\n) characters.
Because the SSE protocol uses line breaks as field delimiters, this could allow injection of additional SSE fields within the same event frame if untrusted input was passed into these fields.
Details
The SSE helper builds event frames by joining lines with \n. While multi-line data: fields are handled according to the SSE specification, the event, id, and retry fields previously allowed raw values without rejecting embedded CR/LF characters.
Including CR/LF in these control fields could allow unintended additional fields (such as data:, id:, or retry:) to be injected into the event stream.
The issue has been fixed by rejecting CR/LF characters in these fields.
Impact
An attacker could manipulate the structure of SSE event frames if an application passed user-controlled input directly into event, id, or retry.
Depending on application behavior, this could result in injected SSE fields or altered event stream handling. Applications that render e.data in an unsafe manner (for example, using innerHTML) could potentially expose themselves to client-side script injection.
This issue affects applications that rely on the SSE helper to enforce protocol-level constraints.
- Record
GHSA-p6xx-57qc-3wxr- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-74
- Updated
- 2026-11-02
OSVCLSA-2026-1790597695 No score
TuxCare security update for hono (12 CVEs)
TuxCare rebuilt hono to address 12 CVEs. Fixed in 3.12.12-tuxcare.2.
- Record
CLSA-2026-1790597695- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2026-29085 No score
CVE-2026-29085 in @rootio/hono - Patched by Root
Root has patched CVE-2026-29085 in the @rootio/hono package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2026-29085- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
hononpm |
before 4.12.4 | 4.12.4 |
honoTuxCare:npm From an advisory covering 11 CVEs |
3.12.12-tuxcare.0 up to 3.12.12-tuxcare.2, plus listed versions 3.12.123.12.12-tuxcare.1 |
3.12.12-tuxcare.2 |
@rootio/honoRoot:npm |
before 4.11.7-root.io.1 | 4.11.7-root.io.14.11.7-root.io.24.11.7-root.io.34.11.7-root.io.44.11.7-root.io.54.11.7-root.io.6 |
honoRoot:npm |
before 4.11.7-aikido.5 | 4.11.7-aikido.54.11.7-aikido.6 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-29085 is a medium vulnerability (CVSS 6.5) in Hono, published March 4, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.28%, the 20th percentile. Fixed in hono 4.12.4.
References
github.com/honojs/hono/security/advisories/GHSA-p6xx-57qc-3wxr
github.com/honojs/hono/commit/f4123ed9ea3c7c52380cc99a079a4d773838846e
nvd.nist.gov/vuln/detail/CVE-2026-29085
github.com/advisories/GHSA-p6xx-57qc-3wxr
github.com/CVEProject/cvelistV5/tree/main/cves/2026/29xxx/CVE-2026-29085.json
github.com/honojs/hono