Бесплатно Экспресс-аудит сайта:

20.08.2022

Кредит доверия от Linux: злоумышленник может стать доверенным лицом Linux

На прошлой неделе на конференции по безопасности Black Hat была раскрыта новая уязвимость ядра Linux под названием Dirty Cred. Группа исследователей обнаружила способ обмена учетными данными ядра Linux в системах, уязвимых к ранее обнаруженной уязвимости ( CVE-2021-4154 ) и новой ( CVE-2022-2588 ).

Публичный PoC (Proof-of-Concept) доступен на GitHub и предлагает эффективную защиту от атаки. Исследователи описали свой подход как общий метод, который можно применять к контейнерам и ОС Android. По словам экспертов, сгенерированный эксплойт может работать на разных ядрах без изменения кода.

Эксперты продемонстрировали , как можно повысить права пользователя с низким уровнем привилегий в двух разных системах Centos 8 и Ubuntu с использованием одного и того же кода эксплойта. Атака представляет из себя повреждение кучи ядра.

Поскольку привилегированные учетные данные не изолированы от непривилегированных, злоумышленник может попытаться подменить их. Dirty cred освобождает используемые непривилегированные учетные данные для размещения привилегированных в освобожденном слоте памяти для работы в качестве привилегированного пользователя.


Однако, для проведения атаки нужно, чтобы привилегированный пользователь выделил учетные данные задачи. При этом должна быть возможность запускать процессы с корневыми битами смены владельца SUID (Set User ID).

Уязвимость CVE-2021-4154 была исправлена ​​в ядре Linux, но исследователи указывают, что эксплойт работает на большинстве ядер Centos 8 (4.18.0-305.el8 и выше), и на большинстве ядер Ubuntu 20 (5.4.0-87.98 и выше), а также (5.11.0-37.41 и выше). Исправление ошибки доступно на GitHub .

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