CVE-2026-31431 Copy Fail: уязвимость в ядре Linux, открывающая root любому пользователю

Команды исследователей из компаний и Theori обнаружили серьёзную уязвимость в ядре Linux, которой присвоен идентификатор CVE-2026-31431 и неофициальное название Copy Fail. Оценка по шкале CVSS составила 7.8, что соответствует высокому уровню опасности. Брешь относится к классу Local Privilege Escalation и позволяет обычному непривилегированному пользователю получить полные права root практически на любом дистрибутиве Linux.
CVE-2026-31431 Copy Fail: уязвимость в ядре Linux, открывающая root любому пользователю
Изображение носит иллюстративный характер

Уязвимость затрагивает криптографическую подсистему ядра, конкретно модуль algif_aead. Логическая ошибка была внесена в исходный код ещё в августе 2017 года и с тех пор незаметно присутствовала во всех основных дистрибутивах. Эксперт по безопасности Дэвид Брумли из компании Bugcrowd объяснил механизм следующим образом: оптимизация 2017 года в algif_aead позволяет странице кэша страниц оказаться в записываемом scatterlist ядра при выполнении AEAD-операции через сокет AF_ALG. После этого процесс может использовать команду splice() для небольшой, но точечной записи в кэш страниц файла, которым атакующий не владеет.
Результат этой записи предельно конкретен: злоумышленник получает возможность вписать ровно четыре контролируемых байта в page cache любого читаемого файла в системе. Четыре байта звучат незначительно, но на практике этого достаточно, чтобы испортить кэшированную копию setuid-бинарника и внедрить в неё произвольный шеллкод.
Весь эксплойт умещается в 732-байтовый Python-скрипт. Последовательность атаки состоит из четырёх шагов. Сначала открывается сокет AF_ALG и выполняется привязка к authencesn(hmac(sha256),cbc(aes)). Затем формируется полезная нагрузка с шеллкодом. После этого инициируется запись в кэшированную копию файла /usr/bin/su. Последний шаг — вызов execve("/usr/bin/su"), который загружает внедрённый шеллкод и выполняет его с правами root.
Особенность Copy Fail в том, что эксплойт работает надёжно и не требует ни гонки состояний, ни знания смещений ядра. Один и тот же скрипт без каких-либо модификаций срабатывает на разных дистрибутивах. Представитель в комментарии для The Hacker News отметил, что данная уязвимость сочетает в себе четыре свойства, которые почти никогда не встречаются вместе: она портабельна, компактна, незаметна и обладает кросс-контейнерным эффектом.
Кросс-контейнерный аспект заслуживает отдельного внимания. Поскольку page cache является общим для всех процессов в системе, атака способна выходить за пределы контейнерной изоляции. Это превращает её из локальной проблемы в потенциальный инструмент обхода sandbox-окружений, что критично для облачных сред и систем совместного использования.
Уязвимость затрагивает все дистрибутивы Linux, вышедшие начиная с 2017 года. Официальные предупреждения уже выпустили Amazon Linux, Arch Linux, CloudLinux, Debian, Gentoo, Red Hat Enterprise Linux, SUSE и Ubuntu. Удалённая эксплуатация невозможна — для атаки нужен локальный доступ к системе, однако это ограничение не делает уязвимость менее опасной в реальных сценариях: скомпрометированный непривилегированный аккаунт, взломанный контейнер или вредоносный инсайдер превращают Copy Fail в прямой путь к полному контролю над хостом.
Специалисты проводят параллель с уязвимостью Dirty Pipe, известной под номером CVE-2022-0847. Оба случая используют один и тот же класс примитива: сплайсинг данных в page cache файлов с правами только на чтение с последующей перезаписью чувствительных файлов и выполнением произвольного кода. Принципиальное отличие в том, что Copy Fail живёт в другой подсистеме ядра и оставалась незамеченной на несколько лет дольше. Учитывая, что Dirty Pipe в своё время наделала немало шума, Copy Fail по степени практической эксплуатируемости выглядит не менее, а в каком-то смысле и более тревожно — из-за своей переносимости и минимального размера эксплойта.


Новое на сайте

20066[b]Фотосинтез в глазах мышей: возможно ли это без превращения в растение?[/b] 20065[b]СПКЯ стало СПМЯ: почему переименование болезни, затрагивающей миллионы женщин, заняло... 20064[b]Почему великая пирамида Гизы пережила все землетрясения за 4500 лет[/b] 20063[b]Генетика Homo erectus: что зубная эмаль рассказала о наших предках[/b] 20062[b]Кости в бухте эребус: что кости моряков Франклина рассказывают спустя полтора века[/b] 20061[b]Крупнейший плавучий ветрогенератор в мире: Китай испытывает установку у берегов... 20060[b]Карие глаза младенца стали индиго после лечения от COVID-19[/b] 20058[b]Почему серебряная чаша с Афиной пролежала в немецком лесу две тысячи лет?[/b] 20057[b]Дыра в атмосфере солнца: вспышка достигла пика и может зажечь полярное сияние[/b] 20056[b]Динго возрастом 950 лет: кто и зачем кормил могилу животного сотни лет?[/b] 20055[b]Томоэ гозэн: женщина-самурай, которая существовала на самом деле[/b] 20054[b]Что видели астронавты «Аполлона-12» над лунным горизонтом?[/b] 20053[b]Восковой блокнот на латыни и шёлковая туалетная бумага: кто посещал средневековый... 20052[b]Хантавирус на борту: 41 человек под наблюдением после рейса MV Hondius[/b]
Ссылка