Уязвимость в systemd-coredump позволяет определить содержимое памяти

уязвимость

При эксплуатации эти недостатки могут позволить злоумышленникам получить несанкционированный доступ к конфиденциальной информации или вообще вызвать проблемы.

Вышла новость, что была обнаружена уязвимостьd (уже внесен в каталог CVE-2022-4415) в systemd-coredump, который обрабатывает основные файлы, созданные после сбоев процесса, и который может разрешить локальному пользователю никаких привилегий проверить содержимое памяти привилегированных процессов, работающих с приглашением root suid.

systemd-coredump — это драйвер дампа памяти пользовательского пространства для Linux, который является частью из комплекта systemd. Уязвимость связана с отсутствием корректной обработки параметра sysctl fs.suid_dumpable в systemd-coredump, который при значении по умолчанию 2 позволяет создавать дампы ядра для процессов с флагом suid.

Подразумевается, что файлы ядра suid-процессов, написанные ядром, должны иметь права доступа, разрешающие чтение только пользователю root. Утилита systemd-coredump, вызываемая ядром для сохранения файлов ядра, сохраняет файл ядра как root, но также предоставляет доступ на основе ACL к файлам ядра, которые можно прочитать на основе идентификатора владельца, который первоначально запустил процесс.

Эта функция позволяет загружать файлы ядра независимо от того, что программа может изменить идентификатор пользователя и работать с повышенными привилегиями. Атака сводится к тому, что пользователь может запустить приложение suid и отправить ему сигнал SIGSEGV, после чего он загружает содержимое файла ядра, включающего в себя часть памяти процесса на момент сбоя.

В письме, где сообщается о проблеме, указано следующее:

Вопрос
=========

systemd-coredump устанавливает sysctl fs.suid_dumpable по умолчанию на 2, используя
файл конфигурации push-уведомлений sysctl.d. Для встроенного дампа ядра
обработка этого параметра означает, что дамп памяти для setuid (или иначе
привилегированные) процессы будут записывать на диск, но только
доступны для пользователя root, чтобы предотвратить утечку конфиденциальных данных в
учетные записи непривилегированных пользователей. См. также `man 5 proc` для полной информации.
документация по этому sysctl.

systemd-coredump в пространстве пользователя, однако это ядро ​​не учитывается
конфигурации в реализации обработки дампа ядра. Фактический идентификатор пользователя
процесса дампа получит доступ для чтения к дампу ядра через
запись списка управления доступом

Например, пользователь может выполнить «/usr/bin/su» и завершить его выполнение в другом терминале командой «kill -s SIGSEGV `pidof su`», после чего systemd-coredump сохранит основной файл в /var/ lib/systemd/ каталог coredump, установив для него ACL, который позволяет текущему пользователю читать его.

Упоминается, что поскольку утилита suid 'su' считывает содержимое /etc/shadow в память, злоумышленник может получить доступ к информации о хэшах паролей всех пользователей в системе. Утилита sudo не подвержена атакам, так как запрещает генерацию файлов ядра через ulimit.

Что касается проблемы, то она была подтверждена в конфигурации по умолчанию в дистрибутивах openSUSE, Arch, Debian, Fedora и SLES. По словам разработчиков systemd, уязвимость проявляется начиная с версии 247 systemd (выпущена в ноябре 2020 г.), но, по словам исследователя, выявившего проблему, затрагивается и версия 246.

Уязвимость проявляется, если systemd скомпилирован с библиотекой libacl (по умолчанию во всех популярных дистрибутивах). Исправление по-прежнему доступно в виде патча.

Те, кто заинтересован в отслеживании исправления в дистрибутивах, могут сделать это на следующих страницах: DebianUbuntuGentooRHELSUSEFedoraGentooАрка.

Наконец, стоит упомянуть, что на данный момент в качестве временного решения безопасности пользователи могут установить для sysctl fs.suid_dumpable значение 0, что отключит передачу дампа драйверу systemd-coredump.

Если вы хотите узнать больше об этом, вы можете ознакомиться с деталями в по следующей ссылке.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.