Не стали вас беспокоить в праздничную пятницу в погони за хайпом, а сейчас расскажем.
⚪️ Суть уязвимости CVE-2026-31431:
Любой непривилегированный пользователь может с помощью цепочки AF_ALG → splice() записать контролируемые 4 байта в страничный кэш любого читаемого файла, в который у него есть доступ на чтение. Обычной целью становится setuid-бинарник /usr/bin/su, модификация которого в памяти даёт root-шелл.
Изменения происходят только в памяти (in-memory), не затрагивая диск. Проверки целостности вроде checksum будут молчать
⚪️ Как влияет на облака и Kubernetes:
- Kubernetes. Страничный кэш шарится между контейнерами на ноде. Эксплоит из пода ломает изоляцию и пробивается на хост.
- CI/CD. Пулл-реквест на GitHub Actions, GitLab CI, Jenkins, выполняющий PoC, получает root на раннере. Дальше — компрометация секретов и всей пайплайновой инфраструктуры
⚪️ В чем опасность:
- Возраст. Баг завезли в ядро коммитом 72548b093ee3 в 2017 году, и с тех пор он тихо жил почти во всех дистрибутивах: Ubuntu, Debian, RHEL, Amazon Linux, SUSE и их производных.
- Простота. Пэйлоад умещается в 732 байта Python-скрипта, не требующего никаких зависимостей, кроме stdlib. Один скрипт — и у вас root на всех уязвимых системах.
- Стелс. Нет триггеров для большинства систем обнаружения.
⚪️ Что делать:
- Обновляйте ядра до версий, содержащих коммит
a664bf3d603d- Если патча у вашего вендора ещё нет — отключаем
algif_aead.Сайт исследователей
Детальный разбор от Microsoft
Рекомендации по триажу и патчингу от Wiz
Репозиторий PoC (только для проверки своих систем)
Кстати, баг нашли с помощью ИИ.
@DevOpsKaz 😛
