CVE-2026-73256

Mongoose: HTTP/1.0 detection off-by-one enables request smuggling via chunked TE

Published Aug 20, 2026 CVSS 3.1 · 9.1 Critical EPSS < 1% KEV · Not listed
Description
Mongoose is an embedded web server and network library. Prior to 7.22, a remote unauthenticated attacker can exploit an HTTP/1.0 reverse-proxy deployment by sending a request with Transfer-Encoding: chunked and conflicting framing. The http_cb() function in src/http.c tests hm.proto.len with an impossible greater-than-eight condition even though mg_http_parse() requires an eight-byte protocol string, so is_http_1_0 is never set. Mongoose consequently processes chunked encoding that an HTTP/1.0 proxy can ignore, enabling request smuggling and unauthorized access or state changes. This issue is fixed in version 7.22.

Analysis

AI-generated

Technical impact

Mongoose, an embedded web server, incorrectly handled HTTP/1.0 requests before version 7.22. An unauthenticated attacker can send a specially crafted Transfer‑Encoding: chunked request that causes the server to treat the traffic as HTTP/1.1, while an HTTP/1.0 reverse proxy ignores the TE header. This off‑by‑one flaw allows the request to be smuggled past the proxy and executed on the back‑end, granting the attacker unauthorized actions such as data modification or session hijacking. The weakness is a request smuggling flaw (CWE‑444).

Affected Systems

Cesanta Mongoose web server versions prior to 7.22 are affected. The fix was introduced in release 7.22, and any deployment using an older version of Mongoose remains vulnerable.

Risk and Exploitability

The CVSS score is 9.1, reflecting a critical severity. EPSS information is not available, but the flaw requires only an unauthenticated, remote attacker to send a crafted request to the Mongoose instance, typically exposed on a standard HTTP port behind an HTTP/1.0 reverse proxy. The vulnerability is not yet listed in the CISA KEV catalog, yet its high CVSS and the straightforward exploit path mean that an attacker could readily cause unauthorized state changes or data corruption. The likely attack vector is a remote request sent through a proxy that strips Transfer‑Encoding headers in HTTP/1.0 traffic.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Mongoose to version 7.22 or later.
  • Configure any HTTP/1.0 reverse proxy to reject Transfer‑Encoding: chunked requests.
  • Restrict direct exposure of Mongoose instances to minimize attack surface.

Generated by OpenCVE AI on August 20, 2026 at 19:43 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
CPEs cpe:2.3:a:cesanta:mongoose:*:*:*:*:*:*:*:*
Type Values Removed Values Added
Metrics ssvc

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

Type Values Removed Values Added
First Time appeared Cesanta
Cesanta mongoose
Vendors & Products Cesanta
Cesanta mongoose
Type Values Removed Values Added
Description Mongoose is an embedded web server and network library. Prior to 7.22, a remote unauthenticated attacker can exploit an HTTP/1.0 reverse-proxy deployment by sending a request with Transfer-Encoding: chunked and conflicting framing. The http_cb() function in src/http.c tests hm.proto.len with an impossible greater-than-eight condition even though mg_http_parse() requires an eight-byte protocol string, so is_http_1_0 is never set. Mongoose consequently processes chunked encoding that an HTTP/1.0 proxy can ignore, enabling request smuggling and unauthorized access or state changes. This issue is fixed in version 7.22.
Title Mongoose: HTTP/1.0 detection off-by-one enables request smuggling via chunked TE
Weaknesses CWE-444
References
Metrics cvssV3_1

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

Weaknesses
  • CWE-444

    Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Aug 21, 2026, 9:46 PM
Reserved
Aug 11, 2026, 5:18 PM
Status
Analyzed
Published
Aug 20, 2026, 6:16 PM
Modified
Oct 18, 2026, 8:10 PM