Description
Hono before 4.10.2 (fixed in 4.10.3) contains a flaw in its CORS middleware: when the origin is not set to "*", the middleware copies the Vary header from the incoming request into the response. Because Vary is a response header that should be managed by the server, an attacker can supply arbitrary Vary values that are reflected into the response, potentially causing cache key pollution and inconsistent CORS enforcement in environments that rely on shared caches or proxies.
Published: 2026-06-30
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Hono’s CORS middleware mistakenly copies a request’s Vary header into the response when the Origin is not set to '*', allowing an attacker to inject arbitrary Vary values that are reflected back. This Vary header injection is identified as CWE‑113 and can lead to cache key pollution and inconsistent enforcement of CORS rules, creating conditions where cross‑origin requests may be incorrectly allowed or blocked.

Affected Systems

The flaw exists in all Hono releases prior to 4.10.2; it was addressed in version 4.10.3. Deployments of the Hono framework on Node.js that depend on CORS handling and rely on shared edge caches or reverse proxies are susceptible.

Risk and Exploitability

With a CVSS score of 6.9 and no EPSS data, the vulnerability represents a moderate risk. Exploitation requires only an HTTP request that includes a crafted Vary header and an Origin not equal to '*'; no authentication is needed. As the vulnerability impacts cache integrity and CORS behavior, attackers could manipulate cache entries or create misleading CORS responses, making remediation important even if a high‑likelihood exploit is not documented.

Generated by OpenCVE AI on June 30, 2026 at 23:52 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Hono framework to version 4.10.3 or later, which removes the Vary header injection flaw (CWE‑113).
  • Reconfigure the CORS middleware to use a wildcard '*' for the Origin header or modify it so that it never forwards the Vary header from the request, thereby eliminating the header injection vulnerability identified as CWE‑113.
  • Review and correct any shared cache or proxy configuration to purge potentially polluted entries and enforce appropriate cache‑control headers on Hono endpoints.

Generated by OpenCVE AI on June 30, 2026 at 23:52 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 01 Jul 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 30 Jun 2026 22:45:00 +0000

Type Values Removed Values Added
Description Hono before 4.10.2 (fixed in 4.10.3) contains a flaw in its CORS middleware: when the origin is not set to "*", the middleware copies the Vary header from the incoming request into the response. Because Vary is a response header that should be managed by the server, an attacker can supply arbitrary Vary values that are reflected into the response, potentially causing cache key pollution and inconsistent CORS enforcement in environments that rely on shared caches or proxies.
Title Hono - Vary Header Injection in CORS Middleware
First Time appeared Hono
Hono hono
Weaknesses CWE-113
CPEs cpe:2.3:a:hono:hono:*:*:*:*:*:node.js:*:*
Vendors & Products Hono
Hono hono
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N'}

cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-01T13:19:21.892Z

Reserved: 2026-06-20T13:11:44.728Z

Link: CVE-2025-71381

cve-icon Vulnrichment

Updated: 2026-07-01T13:19:16.729Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-01T04:15:16Z

Weaknesses
  • CWE-113

    Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting')