DirtyDecrypt: нов начин за получаване на Root права в Linux
В света на Linux вече няколко седмици цари неспокойствие: едва утихна шумът около Copy Fail и Dirty Frag и вече се появи нов начин за получаване на Root права чрез уязвимост в ядрото, наречен DirtyDecrypt. Въпреки че уязвимостта вече е отстранена в основната версия на ядрото, публикуването на PoC експлойт рязко повишава риска за системите, на които все още не са инсталирани актуализациите.
Уязвимостта CVE-2026-31635 получи оценка 7,5 по CVSS. Екипите на Zellic и V12 съобщиха за проблема на 9 май, след което поддържащите ядра посочиха, че уязвимостта дублира вече отстранена грешка. Съоснователката на Zellic Луна Тун описа DirtyDecrypt, известен също като DirtyCBC като запис в кеша на RxGK страници без защита чрез копиране при запис.
Уязвимостта се намира във функцията rxgk_decrypt_skb, която декриптира входящите мрежови буфери. При нормална работа Linux създава отделна копие на общата страница памет преди запис, за да не засягат данните на един процес друг. В този случай такава защита липсва, поради което злонамерен потребител може да повлияе на паметта на привилегировани процеси или съдържанието на кеша на важни файлове в ядрото.
DirtyDecrypt засяга само дистрибуции, в които е включен параметърът CONFIG_RXGK. Сред възможните цели са посочени Fedora, Arch Linux и openSUSE Tumbleweed. В контейнерни среди уязвимото ядро на работния възел може да помогне на атакуващия да излезе извън границите на контейнера.
Zellic свързва DirtyDecrypt с поредица от сходни уязвимости, включително Copy Fail, Dirty Frag и Fragnesia. Всички те използват сходна идея: локален потребител без привилегии променя съдържанието на файлове, достъпни само за четене, чрез кеша на страниците на ядрото и в крайна сметка получава Root достъп. По-рано специалистът Хьонву Ким разкри Copy Fail, а след това се появиха нови варианти на атаката след анализ на публичните промени в основната линия на Linux.
На фона на поредицата от нови уязвимости за локално повишаване на привилегии разработчиците на ядрото обсъждат механизъм за аварийно изключване. Саша Левин предложи да се даде възможност на администраторите временно да изключват избрани функции на ядрото по време на работа на системата, докато се подготвя пълноценно поправяне.
Rocky Linux пое по друг път и стартира допълнително хранилище за сигурност за спешни актуализации. Това хранилище е деактивирано по подразбиране и е предназначено за ограничени случаи, когато сериозна уязвимост вече е публично известна, кодът за експлоатация съществува, а поправката в основната версия все още не е излязла.