Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Тревожный звонок systemd, или Как <<повесить>> init-систему простой консольной командой


Вас категорически приветствует автоматически сгенерированная почтовая рассылка с новостями от nixp.ru!


04.10.2016 08:33

Тревожный звонок systemd, или Как «повесить» init-систему простой консольной командой

Linux-администратор и основатель сервиса SSLMate Эндрю Эйер (Andrew Ayer) опубликовал в своём блоге заметку, как с помощью консольной команды из 48 символов привести systemd в нерабочее состояние.

Эндрю обнаружил «поразительно банальный баг» в init-системе systemd, появившийся там более двух лет назад (в версии systemd 209). Если через systemd-notify отправить пустое (из 0 символов) сообщение в UNIX-сокет /run/systemd/notify, доступный для всех пользователей, то systemd получит сообщение и не сможет выполнить проверку на его длину. Результат — прав любого локального Linux-пользователя достаточно для отказа от обслуживания критичного системного сервиса.

Сама команда выглядит следующим образом:

NOTIFY_SOCKET=/run/systemd/notify systemd-notify «»

Некоторые энтузиасты отмечают, что для реализации задуманного им потребовалось обернуть её в бесконечный цикл (while true). Уязвимость уже устранена (#4234 в GitHub) — пропатченная версия пакета systemd для Debian, например, получила версию 231-9, но пока имеет статус нестабильной.

Дэвид Тимоти Штраусс (David Timothy Strauss), технический директор Pantheon, отметил, что критика Эйера является преувеличенной, а описанная им уязвимость — «незначительная проблема в безопасности». По его уверениям, эта ошибка не «рушит» systemd, а приводит её в «нестабильное состояние»: «Некоторые службы, которые пытаются обратиться к systemd, в ответ получат таймаут в течение 30 секунд (по умолчанию), если systemd недоступна».

Рич Фелкер (Rich Felker), автор Linux-библиотеки musl, отмечает, что обнаруженная проблема не столько проблема безопасности, сколько тревожный звонок для нераздельной архитектуры systemd: «Systemd не создана для того, чтобы её разбивали на меньшие части, которые могут безопасно падать и восстанавливаться — ни с точки зрения безопасности, ни с точки зрения надёжности. У вас один большой монолитный процесс: если какой-то его компонент ломается, рушится всё остальное. Это большая проблема в архитектуре, на которую Эйер пролил свет. Это не большая уязвимость в безопасности, а брешь в архитектуре системной разработки».

Комментарии к новости >>



04.10.2016 12:45

«Флант» выпускает pam_docker — PAM-модуль для аутентификации внутри Docker

Российская компания «Флант» представила pam_docker — модуль для PAM, позволяющий «помещать» пользователей (и группы) хостовой Linux-машины внутрь контейнеров Docker.

Созданный PAM-модуль призван упростить аутентификацию пользователей хост-системы внутри Docker-контейнеров для системных служб и серверов (su/sudo, cron, SSH, FTP и т.п.). Использовать pam_docker можно, в частности, для простой выдачи SSH-доступа в Docker-контейнеры, однако сами разработчики сообщают, что модуль является больше исследовательским — реализация позволяет улучшить понимание, как на практике работает Docker. Подробнее с устройством модуля можно познакомиться, посмотрев видео с доклада «Проникновение в Docker с примерами», представленного этим летом на встрече meetup-группы Docker Moscow в Badoo.

Исходный код pam_docker написан на языке Си, распространяется на условиях свободной лицензии GNU GPLv3, доступен для скачивания вместе с документацией на GitHub. Там же можно найти информацию о пакетах для Debian/Ubuntu и CentOS, инструкции для тестового запуска модуля через Vagrant.

Комментарии к новости >>




Не забудьте, что мы всегда рады вашим комментариям к новостям непосредственно на nixp.ru!


Другие способы получения новостей от nixp.ru:



В избранное