---
id: CVE-2026-73256
title: Mongoose is an embedded web server and network library
summary: >-
  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 h…
severity: critical
cvss: 9.1
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N'
cwe:
  - CWE-444
published: '2026-08-20'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T21:19:49.197'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-73256'
references:
  - url: >-
      https://github.com/cesanta/mongoose/commit/a9df523f76f43a38bd53b4232b9cfd4c16869e71
    label: security-advisories@github.com
  - url: 'https://github.com/cesanta/mongoose/pull/3611'
    label: security-advisories@github.com
  - url: 'https://github.com/cesanta/mongoose/releases/tag/7.22'
    label: security-advisories@github.com
  - url: >-
      https://github.com/cesanta/mongoose/security/advisories/GHSA-mgp5-rjrv-h5j3
    label: security-advisories@github.com
tags:
  - nvd
epss: 0.00397
epssPercentile: 0.33767
ingestedAt: '2026-09-09T21:22:45.545Z'
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
