Description
Mongoose is an embedded web server and network library. Prior to 7.23, the built-in TCP/IP stack enabled by MG_ENABLE_TCPIP in src/net_builtin.c does not reject a TCP option whose declared opts[1] length exceeds the remaining option bytes. In handle_opt(), a NOP followed by a truncated MSS option causes opts[3] to be read outside the declared options area and used as the low byte of dmss. An unauthenticated remote peer can corrupt the per-connection MSS value so later mg_send() calls transmit truncated or zero-length application payloads while the TCP connection otherwise appears healthy. This issue is fixed in version 7.23.
Published: 2026-10-14
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via corrupted MSS leading to truncated or silent traffic
Action: Apply Patch
AI Analysis

Impact

The vulnerability arises from missing bounds checking in Mongoose’s handle_opt function. A TCP option whose length field exceeds the declared option bytes causes the code to read a byte beyond the allowed area and use that value as the low byte of the TCP Maximum Segment Size. An unauthenticated remote party can craft such malformed packets, corrupt the per‑connection MSS, and subsequently cause mg_send calls to transmit truncated or zero‑length application payloads while the connection otherwise appears healthy. This flaw does not give an attacker code execution but results in data loss or service interruption.

Affected Systems

The issue affects the Cesanta Mongoose embedded web server and network library prior to version 7.23 when the built‑in TCP/IP stack is enabled via MG_ENABLE_TCPIP in src/net_builtin.c. Devices or applications using Cesanta Mongoose 7.22 or earlier are vulnerable.

Risk and Exploitability

With a CVSS score of 7.5, the flaw is considered high severity. EPSS data is not available and the vulnerability is not listed in the CISA KEV catalog, suggesting a moderate exploitation probability. The attack vector is purely remote: an attacker only needs to send a specially crafted TCP packet from outside the network to the target. Successful exploitation results in denial of service or partial data loss of the affected connections. No privileged access is required, and the exploitation is straightforward given the missing bounds check.

Generated by OpenCVE AI on October 15, 2026 at 14:05 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Mongoose library to 7.23 or later, which removes the bounds check flaw and corrects MSS handling.
  • If an upgrade is not immediately possible, disable the built‑in TCP/IP stack by removing or setting MG_ENABLE_TCPIP to 0 during compilation, forcing the application to use an external network stack.
  • Verify that no connections are using the internal TCP stack by inspecting configuration and monitoring traffic for truncated payloads after changes.

Generated by OpenCVE AI on October 15, 2026 at 14:05 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 29 Oct 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 23 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
First Time appeared Cesanta
Cesanta mongoose
Vendors & Products Cesanta
Cesanta mongoose

Wed, 14 Oct 2026 18:45:00 +0000

Type Values Removed Values Added
Description Mongoose is an embedded web server and network library. Prior to 7.23, the built-in TCP/IP stack enabled by MG_ENABLE_TCPIP in src/net_builtin.c does not reject a TCP option whose declared opts[1] length exceeds the remaining option bytes. In handle_opt(), a NOP followed by a truncated MSS option causes opts[3] to be read outside the declared options area and used as the low byte of dmss. An unauthenticated remote peer can corrupt the per-connection MSS value so later mg_send() calls transmit truncated or zero-length application payloads while the TCP connection otherwise appears healthy. This issue is fixed in version 7.23.
Title Mongoose: handle_opt() missing opts[1] > len check — 1-byte OOB read corrupts TCP MSS, silences mg_send() per connection
Weaknesses CWE-125
CWE-20
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'}


Subscriptions

Cesanta Mongoose
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-29T13:46:18.474Z

Reserved: 2026-08-11T17:18:01.598Z

Link: CVE-2026-73261

cve-icon Vulnrichment

Updated: 2026-10-29T13:45:53.431Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T19:17:19.990

Modified: 2026-10-29T14:17:59.130

Link: CVE-2026-73261

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T22:45:13Z

Weaknesses