
CVE-2026-31431
Удивительно простое, но смертоносное локальное повышение привилегий в ядре Linux
CVE-2026-31431 (также известная как "Сбой копирования") — это уязвимость локального повышения привилегий в криптографической подсистеме ядра Linux, затрагивающая интерфейс algif_aead.
Непривилегированный локальный пользователь может использовать эту ошибку для выполнения контролируемой записи 4 байт в страничный кэш любого читаемого файла в системе, включая setuid-бинарники, что в конечном итоге позволяет выполнить произвольный код с правами root.
Уязвимость была внесена в 2017 году коммитом 72548b093ee3 ("crypto: algif_aead - support in-place operations").
Ядро ошибочно предполагало, что AEAD-запросы могут безопасно выполняться на месте (req->src == req->dst). Однако при использовании сокетов AF_ALG с splice() из обычных файлов исходный и целевой буферы часто находятся в разных областях памяти.
Это несоответствие приводило к логической ошибке, допускающей контролируемое повреждение памяти в страничном кэше.
Эксплуатация тривиальна. PoC на Python примерно из 10 строк надёжно получает root на незапатченных системах.
| Метрика | Значение |
|---|---|
| Оценка CVSS v3 | 7.8 (высокая) |
| Оценка Red Hat | Важная |
a664bf3 (или эквивалентных бэкпортов)Рекомендуемые действия: обновите ядро немедленно.
Официальное исправление отменяет проблемную оптимизацию выполнения на месте в crypto/algif_aead.c.
# Ubuntu / Debian
sudo apt update && sudo apt upgrade -y
# RHEL / Fedora / Rocky / Alma
sudo dnf update kernel -y
# Check kernel version
uname -r
Временное решение (если немедленное обновление невозможно):
AF_ALG через seccomp или AppArmor/SELinuxПубличные эксплойты уже доступны, включая очень небольшой и надёжный proof-of-concept на Python.
⚠️ Предупреждение: системы, оставленные без обновлений после раскрытия информации, крайне уязвимы.
Берегите себя. Обновляйтесь вовремя. Обновляйтесь часто.
Сделано с ❤️ для сообщества Linux
| Оценка Ubuntu | Высокая |
| Тип атаки | Локальное повышение привилегий |