Исследователи из компании Qualys раскрыли информацию о баге 12-летней давности, обнаруженном в составе pkexec Polkit (ранее PolicyKit). Уязвимость получила идентификатор CVE-2021-4034 и имя PwnKit, и может быть использована для получения привилегий суперпользователя.

Polkit является часть опенсорсного фреймворка, который согласовывает взаимодействие между привилегированными и непривилегированными процессами, а конкретно pkexec позволяет авторизованному пользователю выполнять команды от имени другого пользователя, являясь своеобразной альтернативой sudo.

Эксперты пишут, что обнаружили проблему еще в ноябре 2021 года, но не сообщали о ней публично до этой недели, давая разработчикам всех основных дистрибутивов Linux время на выпуск исправлений.

Сообщается, что pkexec точно может использоваться злоумышленниками для локального повышения привилегий в Ubuntu, Debian, Fedora и CentOS, но также могут быть затронуты и другие дистрибутивы Linux.

«Уязвимость связана с нарушением целостности информации в памяти [и out-of-bounds записью], что позволяет любому непривилегированному пользователю получить полные привилегии root в уязвимой системе, используя конфигурацию polkit по умолчанию», — говорят эксперты Qualys.

Проблема присутствовала в коде с 2009 года, то есть с релиза первой версии pkexec. Видео ниже демонстрирует эксплуатацию данной проблемы.

Исследователи предупредили, что эксплуатация уязвимости настолько проста, что PoC-эксплоит, скорее всего, за несколько дней распространится по всему интернету. К сожалению, так и произошло: первый работающий эксплоит появился в открытом доступе менее чем через три часа после публикации отчета Qualys. Аналитик CERT/CC Уилл Дорманн (Will Dormann) сообщил, что этот PoC прост и универсален, и протестировал его на системе на базе ARM64, показав, что эксплоит в самом деле работает.

Qualys рекомендует администраторам как можно скорее применить патчи, которые авторы Polkit опубликовали на GitLab.

Разработчики дистрибутивов Linux получили доступ к исправлению еще несколько недель назад, и обновленные пакеты pkexec уже выходят. Так, Ubuntu уже выпустила обновления для устранения уязвимости в версиях 14.04 и 16.04 ESM, а также в более новых версиях 18.04, 20.04 и 21.04. Пользователям достаточно запустить стандартное обновление системы, а затем перезагрузить машину, чтобы изменения вступили в силу.

Red Hat также опубликовала патч для polkit для продуктов Workstation и Enterprise, а также для решений с продленным циклом поддержки (TUS и AUS).

Издание Bleeping Computer отмечает, что для ОС, где пока нет патча, доступен временный вариант смягчения проблемы. Он заключается в использовании следующей команды: chmod 0755 /usr/bin/pkexec.

Пользователи, которые захотят поискать признаки эксплуатации PwnKit, могут сделать это, проверив логи на наличие записей «The value for the SHELL variable was not found the /etc/shells file» и «The value for environment variable […] contains suspicious content». Впрочем, эксперты Qualys предостерегают, что использовать уязвимость PwnKit можно и бесследно.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии