Home

Description

ewe is a Gleam web server. ewe is a Gleam web server. Versions 0.6.0 through 3.0.4 are vulnerable to authentication bypass or spoofed proxy-trust headers. Chunked transfer encoding trailer handling merges declared trailer fields into req.headers after body parsing, but the denylist only blocks 9 header names. A malicious client can exploit this by declaring these headers in the Trailer field and appending them after the final chunk, causing request.set_header to overwrite legitimate values (e.g., those set by a reverse proxy). This enables attackers to forge authentication credentials, hijack sessions, bypass IP-based rate limiting, or spoof proxy-trust headers in any downstream middleware that reads headers after ewe.read_body is called. This issue has been fixed in version 3.0.5.

PUBLISHED Reserved 2026-03-16 | Published 2026-03-20 | Updated 2026-03-20 | Assigner GitHub_M




MEDIUM: 5.3CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Problem types

CWE-183: Permissive List of Allowed Inputs

Product status

>= 0.6.0, < 3.0.5
affected

References

github.com/...iy/ewe/security/advisories/GHSA-9w88-79f8-m3vp

github.com/...ommit/07dcfd2135fc95f38c17a9d030de3d7efee1ee39

github.com/...ommit/94ab6e7bf7293e987ae98b4daa51ea131c2671ba

github.com/vshakitskiy/ewe/releases/tag/v3.0.5

cve.org (CVE-2026-32881)

nvd.nist.gov (CVE-2026-32881)

Download JSON