
Локальный инструмент проверки версии ядра, удалённый пробник поддержки MPTCP и интерактивный CLI для сканирования и проверки, предназначенный для оценки подверженности уязвимости use-after-free в IPv4 TCP ядра Linux (CVSS 9.8).
Инструменты для обнаружения подверженности CVE-2026-98432 — уязвимости use-after-free в IPv4 TCP ядра Linux (CVSS 9.8), затрагивающей ядра с 4.4 до стабильных веток до исправления.
| Файл | Назначение | Требования |
|---|---|---|
check-cve-2026-98432.sh | Локальная проверка версии ядра — подтверждает исправленность/уязвимость | Доступ к оболочке (SSH/консоль) |
probe-mptcp.py | Удалённая проверка поддержки MPTCP — обнаруживает продемонстрированный вектор эксплуатации | Python 3.9+, ядро Linux ≥ 5.6 на проверяющем хосте |
scan-and-probe.sh | Объединяет обнаружение портов через nmap с проверкой MPTCP | nmap + вышеуказанное |
chmod +x check-cve-2026-98432.sh
./check-cve-2026-98432.sh
Коды выхода: 0 — исправлено, 1 — уязвимо, 2 — требуется перезагрузка или ручная проверка.
Один хост, известные порты:
python3 probe-mptcp.py <HOST> <PORT> [PORT ...]
python3 probe-mptcp.py 192.168.1.1 22 443 5060
Один хост, автоматическое обнаружение всех открытых TCP-портов с помощью nmap:
python3 probe-mptcp.py <HOST> $(nmap -Pn --open -p- <HOST> -oG - | grep -oP '\d+/open/tcp' | cut -d/ -f1 | tr '\n' ' ')
Замените оба
<HOST>на IP-адрес цели.
Несколько хостов:
chmod +x scan-and-probe.sh
./scan-and-probe.sh <HOST1> <HOST2> <HOST3>
uname -r с первой исправленной версией для каждой стабильной ветки.net.mptcp.enabled и активные слушатели MPTCP).Открывает стандартное TCP-соединение с запросом MPTCP и проверяет, согласовал ли сервер MPTCP или откатился к обычному TCP.
PLAIN-TCP — сервер не согласовал MPTCP; продемонстрированный вектор получения root-доступа отсутствует.MPTCP-ACTIVE — сервер согласовал MPTCP; вектор подверженности присутствует.CLOSED — порт фильтруется или отклоняет соединения.Безопасно: без IP-опций, без повторных отправок/состояний гонки, без запуска эксплойта. Это обычное TCP-рукопожатие с флагом поддержки MPTCP.
Ограничение: PLAIN-TCP не означает, что система исправлена. Это означает, что продемонстрированный вектор закрыт. Лежащая в основе гонка существует в обычном IPv4 TCP — только версия ядра подтверждает наличие исправления.
| Ветка | Первая исправленная |
|---|---|
| 5.10.x | 5.10.272 |
| 5.15.x | 5.15.223 |
| 6.1.x | 6.1.190 |
| 6.6.x | 6.6.159 |
| 6.12.x | 6.12.113 |
| 6.18.x | 6.18.56 |
| 7.2.x | 7.2.10 |
| 7.3+ | Исправлено при выпуске |
sysctl -w net.mptcp.enabled=0
echo 'net.mptcp.enabled=0' > /etc/sysctl.d/90-disable-mptcp.conf
sysctl --system
Это отключает MPTCP на уровне всего ядра, закрывая продемонстрированный путь получения root-доступа. Перезагрузка не требуется; настройка сохраняется между перезагрузками. Большинство служб никогда не используют MPTCP, поэтому функциональное влияние отсутствует.
MIT