The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

DirtyDecrypt - очередная уязвимость класса Copy Fail, предоставляющая права root в Linux

18.05.2026 23:16 (MSK)

В ядре Linux выявлена уязвимость, по аналогии с уязвимостями Copy Fail, Dirty Frag и Fragnesia позволяющая непривилегированному пользователю получить права root, перезаписав данные в страничном кэше. Уязвимости присвоено кодовое имя DirtyDecrypt (проблема также упоминается под именем DirtyCBC). Доступен прототип эксплоита.

CVE-идентификатор в примечании к эксплоиту не упоминается, указано лишь, что исследователи выявили проблему 9 мая, после чего сообщили об этом разработчикам ядра, которые ответили, что их находка дублирует другой отчёт об уже исправленной уязвимости. Так как патч с исправлением уже включён в ядро исследователи решили опубликовать разработанный ими эксплоит. Судя по описанию внутри эксплоита, в нём используется уязвимость CVE-2026-31635, исправление для которой было принято в ядро в апреле и вошло в состав ветки 7.0.0 и сформированного 18 апреля выпуска 6.18.23. Проблема проявляется начиная с ядра 6.16.

Как и в случае с серией уязвимостей Dirty Frag новая уязвимость присутствует в драйвере RxRPC, реализующем семейство сокетов AF_RXRPC и одноимённый RPC-протокол, работающий поверх UDP. Проблема вызвана ошибкой при проверке размера данных в функции rxgk_verify_response() - вместо проверки "if (auth_len > len)" в коде было указано "if (auth_len < len)", что приводило к передаче в функцию rxgk_decrypt_skb() данных с размером, больше допустимого. При выполнении функции rxgk_decrypt_skb() расшифровка данных осуществлялась с подстановкой изменений напрямую в страничный кэш для исключения лишней буферизации. Из-за неверной проверки размера возникала возможность перезаписи данных в страничном кэше по выбранному смещению.

Эксплуатация уязвимости сводится к чтению файла программы с флагом suid root (для его оседании в страничном кэше) и замене в страничном кэше части кода программы кодом для запуска /usr/bin/sh. Последующий запуск программы приведёт к тому, что в память будет загружен не оригинальный исполнядолжен бытьемый файл с накопителя, а изменённая копия из страничного кэша. В качестве suid-программ в эксплоите предусмотрена возможность использования "/usr/bin/su", "/bin/su", "/usr/bin/mount", "/usr/bin/passwd" и "/usr/bin/chsh".

Для эксплуатации уязвимости при сборке ядра должна быть активна опция CONFIG_RXGK, а для автозагрузки доступен модуль ядра rxrpc.ko (в некоторых системах он не собирается). Статус устранения уязвимостей в дистрибутивах можно оценить на данных страницах: Debian, Ubuntu, SUSE/openSUSE, RHEL, Arch, Fedora. В качестве обходного пути защиты можно заблокировать загрузку модуля ядра rxrpc:


   sh -c "printf 'install rxrpc /bin/false\n' > /etc/modprobe.d/dirtydecrypt.conf; rmmod rxrpc 2>/dev/null; true"

Дополнительно можно отметить публикацию в списке рассылки разработчиков ядра Linux патчей, полностью отключающих в crypto API (AF_ALG) оптимизации, использующие прямое обращение к страничному кэшу при расшифровке с использованием алгоритмов "skcipher" и "aead". Оптимизации исключают лишнюю буферизацию данных, но создают риски возникновения серьёзных уязвимостей. Предполагается, что их отключение приведёт лишь к незначительному снижению производительности из-за появления дополнительной операции копирования в отдельный буфер. Патчи приняты сопровождающим подсистему crypto API и включены в ветку "cryptodev", в которой развиваются возможности для передачи в основной состав будущих выпусков ядра Linux.

  1. Главная ссылка к новости (https://www.linkedin.com/pulse...)
  2. OpenNews: Fragnesia - уязвимость в ядре Linux, позволяющая получить root через изменение страничного кэша
  3. OpenNews: Уязвимости Dirty Frag, изменяющие страничный кэш для получения root в любых дистрибутивах Linux
  4. OpenNews: Copy Fail - уязвимость в ядре Linux, позволяющая получить root в большинстве дистрибутивов
  5. OpenNews: Уязвимость в Linux-подсистеме pidfd, позволяющая прочитать недоступные пользователю файлы
  6. OpenNews: QEMUtiny - уязвимости в QEMU, позволяющие получить доступ к хост-окружению из гостевой системы
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65473-kernel
Ключевые слова: kernel
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (16) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 00:13, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > их находка дублирует другой отчёт об уже исправленной уязвимости.
    > Так как патч с исправлением уже включён в ядро исследователи решили опубликовать разработанный ими эксплоит.

    Нашли уязвимость которой нет?

     
     
  • 2.11, Аноним (11), 00:43, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Нашли уязвимость которой нет?

    Которую уже законопатили. Но попиариться ж не запретишь. Да и в принципе - лучше честно знать какие вулны были.

     
  • 2.12, Аноним (12), 00:51, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Чую дальше будет. Сейчас будут идти по каждому кейсу, где используется эта zero-copy оптимизация...
     

  • 1.2, Аноним (2), 00:14, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >CONFIG_RXGK

    Что это такое вообще? В моём ядре никаких упоминаний ни в текущем ни в 6.16. Какие-то корпоративные патчи?

     
     
  • 2.4, Аноним (4), 00:22, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну модуль-то есть net/rxrpc. Но у меня в конфиге строчка тоже никак не присутствует.
     
  • 2.7, Аноним (-), 00:31, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Что это такое вообще? В моём ядре никаких упоминаний ни в текущем ни в 6.16.
    > Какие-то корпоративные патчи?

    Да и в целом все эти айписеки и RxRPC - импактят полтора особо отбитых энтерпрайза которые за каким-то юзают эти фикальи. Но им вообще лучше бы было бы прямо в AD - АДски раздать трояна по всему энтерпрайзу. Чтоб не скучали и понимали что большому кораблю - большая торпеда. Хотя возможно это уже и произошло...

     

  • 1.3, Аноним (-), 00:19, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Как и в случае с серией уязвимостей Dirty Frag новая уязвимость присутствует в драйвере RxRPC

    Т.е. как и с прошлой уязвимостью - попробуйте, что называется, ее вообще огреть на реально существующем хосте.

    Не, если я могу модуль с этой HEX загрузить - зачем мне эксплойтом то рута получать? А если не могу - то как гасить? Хостов где это уже загружено - на этом глобусе мизер.

     
  • 1.5, Аноним (5), 00:23, 19/05/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.6, Aller2TeaM (ok), 00:25, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Чё-то кучно пошли
     
     
  • 2.9, Аноним (11), 00:40, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >  Чё-то кучно пошли

    Да это AI походу кто-то напустил. Пристегните ремни. Клодовские ж нейросетки натренировали. И так далее. Они и стали не совсем отстой в этом. Вот, нащупали золотую жилу в паре парашных модулей нужных полутора корпам которые клали на тесты и фиксы - и развлекуются с самопиаром.

     

  • 1.8, Олег Бартунов (?), 00:35, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Пощады! Я устал ребутить!
     
     
  • 2.10, Аноним (11), 00:40, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >  Чё-то кучно пошли

    Убунта такая с Live Update: ну что, теперь вы понимаете прелесть Ubnutu Advantage? :)

     
     
  • 3.15, Аноним (5), 01:17, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Live Update

    https://get.opensuse.org/ru/tumbleweed/

     

  • 1.13, Аноним (13), 00:56, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Проблема проявляется начиная с ядра 6.16.

    И опять старые ядра не подвержены уязвимости.

     
  • 1.14, Аноним (14), 01:06, 19/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > позволяющая непривилегированному пользователю получить права root, перезаписав данные в страничном кэше

    отключить нафиг этот кэш! пусть все читают с диска!

     
     
  • 2.16, Аноним (16), 01:18, 19/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да! При нынешних скоростях и временах доступа SSD файловый кэш уже становится пятым колесом
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру