Skip to content
OpenAdvisories
High · 7.5 CVE-2026-73261 EUVD-2026-101598

Mongoose: handle_opt() missing opts[1] > len check — 1-byte OOB read corrupts TCP MSS, silences mg_send() per connection

Published Oct 14, 2026 · Updated Oct 29, 2026 · Assigned by GitHub_M

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.

Affected products

VendorProductAffectedFixed
cesanta mongoose < 7.23 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 mongoose 7.23+ds-1 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 mongoose No fix yet —

References