Обнаружена (опять) весьма неприятная уязвимость (CVE-2026-98432 — CVSS 9.8): race condition / use-after-free в обработке TCP/IPv4, присутствующая в ядре аж с версии 4.4.
Anthropic с помощью экспериментальной модели Claude собрала полноценный zero-click exploit: удалённое выполнение произвольных команд от root без аутентификации. Для демонстрации использовался MPTCP listener. Эксплуатация заняла около 53 минут: обход KASLR, затем перехват управления ядром.
Причин для паники нет есть: начиная с Go 1.24, MPTCP включается по умолчанию для TCP listeners на Linux. То есть приложение может использовать MPTCP, даже не подозревая об этом. Команда Go уже выпустила security advisory.
Проверить слушателей можно через ss -Mntlp. Временно отключить MPTCP для Go-приложений — GODEBUG=multipathtcp=0. Можно и
sysctl -w net.mptcp.enabled=0
но нужно учесть, что повлияет только на создание новых MPTCP-сокетов и Sysctl per-netns: в контейнерах/подах со своим netns остаётся значение по умолчанию 1!
Сама дыра находится в TCP/IPv4, а не в MPTCP. Так что выключение MPTCP устраняет лишь продемонстрированный сценарий атаки, настоящее решение — обновление ядра.
Исправления уже есть в upstream и stable branches, но на 30 октября Ubuntu и RHEL ещё не выпустили исправленные пакеты ядер.
И да — сейчас много сетевого софта пишется на Go — даже node_exporter:
KBH-forever% ss -Mntlp src :9100 | catNetid State Recv-Q Send-Q Local Address:Port Peer Address:PortProcesstcp LISTEN 0 4096 *:9100 *:* users:(("node_exporter",pid=…,fd=3))mptcp LISTEN 0 4096 *:9100 *:* users:(("node_exporter",pid=…,fd=3))
Источник: habr.com