Зміст

    Критична вразливість CVE-2026-31431

    01.05.2026

    Звертаємо увагу на критичну вразливість CVE-2026-31431 (Copy Fail), яка дозволяє непривілейованому користувачеві отримати права суперкористувача (root).

    Проблема пов’язана з логічною помилкою в криптографічному API ядра Linux (AF_ALG). Вона виникла після оптимізації, доданої у 2017 році, під час якої було усунуто зайве буферизування за рахунок виконання операцій блокового шифрування AEAD (Authenticated Encryption with Associated Data) «на місці» (in-place).

    Ми вже впровадили патчі в усі дистрибутиви ОС, доступні у нас для автоматичного встановлення на VPS та Dedicated, тому для нових встановлень додаткові дії не потрібні.

    З огляду на те, що ця вразливість стосується більшості популярних дистрибутивів Linux, рекомендуємо якомога швидше вжити заходів для захисту ваших систем на VPS та на виділених серверах.

    Ubuntu та Debian

    В якості тимчасового рішення без перезавантаження можна вимкнути вразливий модуль:

    echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
    rmmod algif_aead

    Альтернативний спосіб — додати такий параметр завантаження ядра:

    initcall_blacklist=algif_aead_init

    Для цього виконайте наступне:

    1. Відкрийте файл /etc/default/grub.
    2. Додайте параметр у GRUB_CMDLINE_LINUX_DEFAULT. Наприклад, якщо рядок виглядає так: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash", то доповніть його параметром initcall_blacklist=algif_aead_init, щоб він у результаті виглядав як GRUB_CMDLINE_LINUX_DEFAULT="quiet splash initcall_blacklist=algif_aead_init".
    3. Оновіть конфігурацію GRUB за допомогою команди update-grub.
    4. При успішному оновленні GRUB перезавантажте систему командою reboot. Якщо оновлення GRUB завершилося з помилкою, виправте її в конфігурації.

    З появою нової версії ядра з виправленням рекомендуємо оновити систему до неї.

    Сторінка для відстеження статусу вразливості в Ubuntu: https://ubuntu.com/security/CVE-2026-31431#references

    Сторінка для відстеження статусу вразливості в Debian: https://security-tracker.debian.org/tracker/CVE-2026-31431

    RHEL (CentOS, AlmaLinux, Rocky Linux та ін.)

    Використовуйте наступний спосіб:

    sudo grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
    sudo reboot

    З появою нової версії ядра з виправленням рекомендуємо оновити систему до неї.

    Сторінка для відстеження статусу вразливості: https://access.redhat.com/security/cve/cve-2026-31431

    ArchLinux

    1. Відкрийте файл /etc/default/grub.
    2. Додайте параметр у GRUB_CMDLINE_LINUX_DEFAULT. Наприклад, якщо рядок виглядає як GRUB_CMDLINE_LINUX_DEFAULT="quiet splash", то доповніть його параметром initcall_blacklist=algif_aead_init, щоб він у результаті виглядав як GRUB_CMDLINE_LINUX_DEFAULT="quiet splash initcall_blacklist=algif_aead_init".
    3. Оновіть конфігурацію GRUB командою grub-mkconfig -o /boot/grub/grub.cfg.
    4. При успішному оновленні GRUB перезавантажте систему командою reboot. Якщо оновлення GRUB завершилося з помилкою, виправте її в конфігурації.

    З появою нової версії ядра з виправленням рекомендуємо оновити систему до неї.

    Сторінка для відстеження статусу вразливості: https://security.archlinux.org/CVE-2026-31431

    openSUSE

    На момент написання статті виправлення цієї уразливості ще немає, але можна також вимкнути завантаження модуля.

    З появою нової версії ядра з виправленням рекомендуємо оновити систему до неї.

    Сторінка для відстеження статусу вразливості: https://www.suse.com/security/cve/CVE-2026-31431.html

    Інші дистрибутиви

    Для інших дистрибутивів принцип аналогічний — можна вказати initcall_blacklist=algif_aead_init у параметрах завантаження ядра або дочекатися офіційного оновлення з виправленнями.