Description
Ech0 before 5.0.1 does not impose any size or shape limit on the Accept-Language header processed by its i18n middleware, which runs on every HTTP request. The header is passed unfiltered to go-i18n's NewLocalizer, which internally calls golang.org/x/text/language.ParseAcceptLanguage. The CVE-2022-32149 mitigation in x/text caps '-' characters but not '_' characters, which the parser aliases to '-', allowing quadratic-time parsing to be triggered with a large header (up to Go's default 1 MiB) built from underscore separators. An unauthenticated attacker can send such requests to consume roughly 1.5 seconds of CPU each, and concurrent requests can saturate a multi-core server (denial of service).
Published: 2026-08-25
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

This vulnerability allows an unauthenticated attacker to trigger a quadratic‑time processing path in Ech0's i18n middleware by sending an excessively large Accept‑Language header. The header is passed unfiltered to the go‑i18n library, which parses language tags recursively; a header built from underscore separators can grow to the Go default 1MiB size and cause the parser to consume roughly 1.5 seconds of CPU per request. Because the middleware runs on every HTTP request, repeated requests can overconsume server resources, leading to denial of service. This represents a classic lack of input validation flaw (CWE‑400).

Affected Systems

All installations of Ech0 prior to version 5.0.1 are susceptible to the issue. The CVE impacts every instance of the Ech0 application that processes the Accept‑Language header through its i18n middleware, regardless of deployment architecture.

Risk and Exploitability

The vulnerability carries a CVSS score of 8.7, indicating high severity, and has no recorded exploit probability in EPSS data; it is also not listed in the CISA KEV catalog. Attackers need only be able to send HTTP requests to reach the target, so unauthenticated exploitation is possible. By sending Accept‑Language headers up to 1 MiB in size, an attacker can consume about 1.5 seconds of CPU per request, and concurrent traffic can saturate a multi‑core server, effectively blocking legitimate traffic. The likely attack vector is through crafted HTTP requests sent directly to the application or via a relay such as a load balancer.

Generated by OpenCVE AI on August 25, 2026 at 12:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Ech0 application to version 5.0.1 or later, which implements size limits on the Accept‑Language header.
  • If an immediate upgrade is not possible, disable or remove the i18n middleware from the request pipeline to prevent the vulnerable parsing logic from executing.
  • Configure any reverse proxy or load balancer to enforce maximum HTTP header size limits, ensuring that Accept‑Language headers cannot exceed 1 MiB.

Generated by OpenCVE AI on August 25, 2026 at 12:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 25 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
Description Ech0 before 5.0.1 does not impose any size or shape limit on the Accept-Language header processed by its i18n middleware, which runs on every HTTP request. The header is passed unfiltered to go-i18n's NewLocalizer, which internally calls golang.org/x/text/language.ParseAcceptLanguage. The CVE-2022-32149 mitigation in x/text caps '-' characters but not '_' characters, which the parser aliases to '-', allowing quadratic-time parsing to be triggered with a large header (up to Go's default 1 MiB) built from underscore separators. An unauthenticated attacker can send such requests to consume roughly 1.5 seconds of CPU each, and concurrent requests can saturate a multi-core server (denial of service).
Title Ech0 before 5.0.1 Denial of Service via Accept-Language
First Time appeared Ech0
Ech0 ech0
Weaknesses CWE-400
CPEs cpe:2.3:a:ech0:ech0:*:*:*:*:*:*:*:*
Vendors & Products Ech0
Ech0 ech0
References
Metrics cvssV3_1

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

cvssV4_0

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


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-25T11:33:23.319Z

Reserved: 2026-08-25T11:09:11.171Z

Link: CVE-2026-79658

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-25T12:16:29.123

Modified: 2026-08-25T12:16:29.123

Link: CVE-2026-79658

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T12:30:17Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption