
Обнаруживает CVE-2026-98432 в работающем ядре Linux и применяет официальное исправленное ядро только на проверенных дистрибутивах (Debian 12/13, Amazon Linux 2/2023). Ubuntu/RHEL — только обнаружение; Rocky/Alma/Oracle/Fedora/SUSE/Arch/Alpine определяются, но не исправляются автоматически.
简体中文 | English
Проверяет, подвержено ли текущее работающее ядро Linux-сервера воздействию CVE-2026-98432, и устанавливает официальный исправленный пакет ядра на дистрибутивах, для которых выполнена адаптация и верификация. Инструмент охватывает идентификацию дистрибутива, сопоставление ядра с пакетом, определение статуса уязвимости, установку ядра и пост-установочную проверку; не изменяет конфигурацию бизнес-приложений и не выполняет автоматическую перезагрузку сервера.
Автоматическое исправление охватывает только Debian 12/13 и Amazon Linux 2/2023. Ubuntu, Red Hat Enterprise Linux и CloudLinux — только обнаружение: официальные исправленные пакеты CloudLinux уже выпущены, но связаны с поэтапным развёртыванием и правом на подписку, поэтому инструмент лишь указывает точную версию и канал. Остальные дистрибутивы — только идентификация и вывод информации, без перехода к установке. Подробный статус см. в матрице поддержки дистрибутивов.
Текущая версия v1.3.0, список изменений см. в CHANGELOG.md.
| Пункт | Содержание |
|---|---|
| Идентификатор | CVE-2026-98432 |
| Компонент | Подсистема IPv4 ядра Linux (tcp_v4_syn_recv_sock, tcp_v4_reqsk_destructor) |
| Тип | Использование после освобождения (use-after-free) |
| Условия срабатывания | При параллельной обработке повторно переданных TCP SYN или при миграции сокетов запросов с включённым tcp_migrate_req структуры inet_opt и ireq_opt могут быть освобождены до окончания льготного периода RCU |
| Влияние | Повреждение памяти ядра, может привести к отказу в обслуживании. Конкретная область влияния и условия эксплуатации определяются объявлениями каждого дистрибутива |
| Исправление в upstream | ipv4: free inet_opt and ireq_opt after an RCU grace period, исправление вошло в 7.2.10, 6.18.56, 6.12.113, 6.1.190 (commit 26d4c36d318c) |
| Дата публикации | 2026-10-15 |
Подвержен ли конкретный дистрибутив воздействию и какая версия является исправленной — определяется официальными объявлениями этого дистрибутива. Инструмент не выводит заключения на основе выводов других дистрибутивов, не определяет статус исправления дистрибутива по номеру версии upstream и не оценивает оценку CVSS и реальную сложность атаки.
ID, VERSION_ID, VERSION_CODENAME из /etc/os-release с наложением специфичной для дистрибутива информации (например, метки UEK у Oracle, номера версии Amazon Linux). ID_LIKE не используется для схлопывания идентичности: Ubuntu не считается Debian, Rocky Linux, AlmaLinux, Oracle Linux не считаются RHEL.uname -m (x86_64 → amd64, aarch64 → arm64) с последующей перекрёстной проверкой с архитектурой, сообщаемой менеджером пакетов; при несовпадении выносится UNKNOWN.--report формирует заключение обнаружения и его обоснование, --list-distros выводит матрицу поддержки.kernel-lts); идентификация поддерживает Rocky Linux, AlmaLinux, Oracle Linux, Fedora, openSUSE Leap, SUSE Linux Enterprise, Arch Linux, Alpine Linux. Если версия дистрибутива вне области адаптации, возвращается UNSUPPORTED.--list-distros может выполняться обычным пользователем.awk, sed, grep, tar, find; инструменты менеджера пакетов соответствующего дистрибутива (dpkg/apt-get/apt-cache, rpm/dnf/yum, apk, pacman, zypper); для загрузочного установщика дополнительно требуются curl и sha256sum (или shasum).curl -fsSL https://raw.githubusercontent.com/AronWang001/linux-cve-2026-98432-fix/v1.3.0/install.sh | sudo bash
install.sh — это загрузочный установщик, который сам по себе не изменяет систему: он скачивает архив исходного кода соответствующего тега во временный каталог, распаковывает его, считывает SHA256SUMS из Release, поочерёдно проверяет fix.sh, install.sh, lib/*.sh, adapters/*.sh и data/*.yml, и только после успешного прохождения всех проверок выполняет fix.sh с теми же аргументами. После завершения проверки отображается план исправлений, и установка ядра выполняется только после подтверждения вводом Y. Запрос подтверждения считывается из /dev/tty, поэтому интерактивное взаимодействие работает и при выполнении через конвейер; sudo может запросить пароль.
Проверка выполняется по принципу fail closed: отсутствие или пустота SHA256SUMS, неполный охват всех скриптов в манифесте, несовпадение хеша любого файла, наличие в архиве абсолютных путей или .., а также отсутствие в системе sha256sum и shasum — всё это приводит к остановке после распаковки или перед выполнением, и никакой код инструментов не запускается. SHA256SUMS и архив исходного кода происходят из одного репозитория и не имеют независимой цифровой подписи, поэтому это нельзя приравнивать к проверке подписи. Перед использованием в рабочей среде по-прежнему рекомендуется сначала скачать скрипт и самостоятельно его проверить.
curl -fsSL https://raw.githubusercontent.com/AronWang001/linux-cve-2026-98432-fix/v1.3.0/install.sh | sudo bash -s -- --check
Только чтение состояния системы, без обновления индекса пакетов, без установки пакетов, без изменения конфигурации. --check ограничивает этап обнаружения и исправления и не влияет на поведение загрузки самого install.sh. Если локальный индекс пакетов пуст, версия-кандидат будет отображаться как неизвестная, и необходимо сначала самостоятельно выполнить apt-get update или dnf makecache.
curl -fsSL https://raw.githubusercontent.com/AronWang001/linux-cve-2026-98432-fix/v1.3.0/install.sh | sudo bash -s -- --yes
--yes только пропускает запросы подтверждения, но не пропускает белый список дистрибутивов, проверку бюллетеней и проверку версий. Для дистрибутивов, не входящих в белый список, даже при указании --yes процесс установки не начнётся.
curl -fsSLO https://raw.githubusercontent.com/AronWang001/linux-cve-2026-98432-fix/v1.3.0/install.sh
less install.sh
sudo bash install.sh --check
sudo bash install.sh
fix.sh зависит от lib/, adapters/ и data/ в том же каталоге и не может использоваться отдельно: