Read the docs
TI-2026-25333 Aliases CVE-2026-32873GHSA-4w98-xf39-23gp

ewe: Loop with Unreachable Exit Condition ('Infinite Loop')

Priority HIGH 72CWE-825Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-835.

Summary

ewe is a Gleam web server. Versions 0.8.0 through 3.0.4 contain a bug in the handle_trailers function where rejected trailer headers (forbidden or undeclared) cause an infinite loop. When handle_trailers encounters such a trailer, three code paths (lines 520, 523, 526) recurse with the original buffer (rest) instead of advancing past the rejected header (Buffer(header_rest, 0)), causing decoder.decode_packet to re-parse the same header on every iteration. The resulting loop has no timeout or escape — the BEAM process permanently wedges at 100% CPU. Any application that calls ewe.read_body on chunked requests is affected, and this is exploitable by any unauthenticated remote client before control returns to application code, making an application-level workaround impossible. This issue is fixed in version 3.0.5.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00623 50th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed ewe (vshakitskiy): 3.0.5ewe (Hex): 3.0.5

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
vshakitskiyewe0.8.0 to before 3.0.53.0.5Patch availableCNA
—ewe (Hex)0.8.0 to before 3.0.53.0.5Patch availableGHSA-4w98-xf39-23gp
  • ewe Vendorvshakitskiy Affected 0.8.0 to before 3.0.5 Fixed in 3.0.5 Patch available CNA
  • ewe (Hex) Vendor— Affected 0.8.0 to before 3.0.5 Fixed in 3.0.5 Patch available GHSA-4w98-xf39-23gp

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:vshakitskiy:ewe:*:*:*:*:*:*:*:*0.8.0 to before 3.0.5Vulnerablevshakitskiy
  • cpe:2.3:a:vshakitskiy:ewe:*:*:*:*:*:*:*:* Versions 0.8.0 to before 3.0.5 Vulnerable ·vshakitskiy

Remediation

  • Fix · CNA ewe (vshakitskiy) Fixed in 3.0.5
  • Fix · GHSA-4w98-xf39-23gp ewe (Hex) Fixed in 3.0.5 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-32873
  2. 2026-10-03 Alias added: GHSA-4w98-xf39-23gp
  3. 2026-10-18 EPSS moved to the 50th–90th percentile
  4. 2026-10-25 EPSS moved to the below the 50th percentile
  5. 2026-11-06 EPSS moved to the 50th–90th percentile

References

  • TI-2026-26959 ewe Has Improper Neutralization of CRLF Sequences in HTTP Headers (HTTP Request/Response Splitting) CVSS 3.1MEDIUM 5.3
  • TI-2026-25340 ewe has an Overly Permissive List of Allowed Inputs CVSS 3.1MEDIUM 5.3

Sources