Key details

  1. Go Security Team advisory issued October 29, 2026; Anthropic disclosure October 27.
  2. CVE-2026-98432 affects Linux IPv4 TCP connection handling; root cause not specific to MPTCP.
  3. Go 1.24+ enables MPTCP by default on Linux listen sockets.
  4. Anthropic reports lab-only remote root on MPTCP listener; no in-the-wild exploitation established.
  5. Upstream kernel fix exists; distro patch timing and scoring vary.
  6. GODEBUG=multipathtcp=0 is a fragile interim mitigation, not a kernel patch.
  7. Go proposal #82717 remains under discussion.

What builders should take away

  1. Inventory exposed Linux servers running Go 1.24+ and any other MPTCP listeners.
  2. Check your distribution's current CVE-2026-98432 advisory, install a fixed kernel and reboot.
  3. Verify the running kernel and any custom kernel/container host separation; containers share host kernel.
  4. Use the documented Go MPTCP opt-out only as a temporary defence while patching; audit explicit per-socket settings.
  5. Do not interpret Anthropic's lab proof of concept as evidence of active exploitation.

What changed

On October 29, 2026, the Go Security Team issued an advisory for Linux kernel CVE-2026-98432, a race-related use-after-free in IPv4 TCP connection handling. Go 1.24 and newer enable Multipath TCP (MPTCP) on Linux listening sockets by default, creating a configuration matching the proof-of-concept described by Anthropic on October 27. Anthropic reports its unreleased research model developed a zero-click remote-root exploit in a controlled lab against an MPTCP listener; the kernel flaw has upstream fixes, but downstream distribution availability varies. Go maintainers have not announced a default change; discussion is ongoing in issue #82717.

Why it matters

A developer may deploy an ordinary Go HTTP service without consciously opting into MPTCP, while the underlying Linux kernel supplies the vulnerable TCP implementation. Rebuilding a Go binary or updating Go modules does not patch the kernel. Operators need to inventory internet-facing Linux listeners, verify fixed packages from their actual distribution and reboot into the patched kernel. There is no established exploitation in the wild from the sources inspected, and the demonstrated exploit should not be treated as proof that every TCP listener is practically exploitable.

The underlying defect is in Linux, not Go

The kernel bug is an IPv4 TCP use-after-free during connection setup. The Linux kernel CVE team rates it critical, while distribution-specific severity assessments differ. Anthropic reports a working remote-root chain on a server with an MPTCP listener. The exploit was a lab demonstration, not a documented live compromise. Other paths may exist because the underlying race is not specific to MPTCP.

Why ordinary Go services can be exposed

Go 1.24 made MPTCP the default for Linux listening sockets. Applications using net.Listen or server frameworks can therefore expose MPTCP without explicitly requesting it, depending on kernel support. The Go security team and maintainers acknowledged the concern on October 29. A proposal to disable the default remains under discussion; no change should be assumed.

Kernel patching is the primary remediation

Upstream fixed the defect and backported it to maintained stable branches. Distribution kernels use their own backport and package numbering: do not decide safety solely from the upstream version string. As of October 29–30, reporting based on vendor trackers found Debian fixes available while several Ubuntu and Red Hat families still listed affected streams pending; check live vendor advisories before acting. Install the fixed distribution kernel and reboot, then verify the running kernel.

MPTCP can be disabled temporarily, but that is not a fix

The Go advisory documents GODEBUG=multipathtcp=0 for a running program or a godebug multipathtcp=0 directive in go.mod for the main module. Per-socket APIs can override this setting. The team explicitly calls application-level disabling fragile: one missed listener leaves exposure, and non-MPTCP attack paths cannot be ruled out. Treat it as an interim risk-reduction measure, not a substitute for kernel remediation.

Evidence and limits

Anthropic's exploit timings and impact are vendor-reported lab results; the exploit code is not public in the cited disclosure. Independent coverage cross-checked the kernel CVE and distribution trackers, but did not independently reproduce remote-root exploitation. The Go team considers it premature to change language defaults solely because of this kernel issue. No confirmed widespread exploitation was established.

What to watch next

  • Vendor kernel packages and fixed status for Ubuntu, RHEL/AlmaLinux and other distributions.
  • Any confirmed real-world exploitation or public independent reproduction.
  • Go issue #82717 outcome and whether a future release changes MPTCP defaults.
  • Further evidence about non-MPTCP exploitability.

Still unclear

  • Distribution security statuses can change quickly after this research.
  • The demonstrated root exploit has not been independently reproduced in cited reporting.
  • Non-MPTCP paths are plausible but unconfirmed; disabling MPTCP cannot guarantee safety.

Sources

Direct reading behind this dossier.

4 sources

Discussion

Discussion is reader-contributed. Comments are not part of the BTN dossier or its editorial evidence.

0 visible comments

Join the discussion

Keep comments useful and relevant. Reader contributions may be moderated and are not BTN editorial evidence.

Sign in to comment