Перейти к содержимому
Калькуляторы

systemd, поставь свой сервер на паузу. хороший такой, годный факап...

В системном менеджере systemd выявлена локальная уязвимость. Процесс PID 1 зависает на системном вызове pause() при поступлении в сокет уведомлений systemd сообщения нулевой длины, после чего невозможно запустить/остановить демоны или выполнить "чистую" перезагрузку, а systemd-сервисы в стиле inetd перестают принимать соединения. Так как сокет уведомлений /run/systemd/notify доступен всем на запись, то любые локальные пользователи могут вызвать отказ в обслуживании на системах с systemd.

 

Уязвимость проявляется во всех версиях systemd, начиная по крайней мере с версии 209. В настоящее время разработчики systemd занимаются подготовкой патча с устранением уязвимости. Атака сводится к выполнению команды

 

 

NOTIFY_SOCKET=/run/systemd/notify systemd-notify ""

http://www.opennet.ru/opennews/art.shtml?num=45244 - тут только ссылки. Текст весь скопировал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нужен локальный доступ, который только у админа.

А вообще - да, Леннарт Поттеринг постарался всё усложнить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нужен локальный доступ, который только у админа.

Дыра. Любая. Чтобы написать в сокет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

defective by design система "все-в-одном"...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Об этом говорили умные люди еще несколько лет назад. Инит должен инитить, всё.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Выполнил

NOTIFY_SOCKET=/run/systemd/notify systemd-notify ""

на Ubuntu 16 и CentOS 7, система загрузилась.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Выполнил

NOTIFY_SOCKET=/run/systemd/notify systemd-notify ""

на Ubuntu 16 и CentOS 7, система загрузилась.

Там частенько в цикле надо...

 

Да, а почто оно не должно загрузиться?

 

Оригинальный пост по уязвимости и обсуждение к нему:

https://www.agwa.name/blog/post/how_to_crash_systemd_in_one_tweet

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И еще раз. На этот раз - получение root:

 

В systemd выявлена ошибка, приводящая к выполнению сервисов с правами пользователя root, если в параметрах запуска указано имя пользователя, начинающееся с цифры. Например, если в сервисе указан "User=0day" и пользователь 0day присутствует в системе, то сервис будет запущен с идентификатором 0, т.е. с правами root. Леннарт Поттеринг отказался исправлять ошибку и закрыл уведомление с меткой "not-a-bug".

 

http://www.opennet.ru/opennews/art.shtml?num=46798

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кому придет в голову заводить пользователя с цифрой вначале? :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кому придет в голову заводить пользователя с цифрой вначале? :)

Кому-то же пришло в голову 0ad в контейнер засадить! :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А я как-то предвзято к systemd отношусь. При новых инсталляциях уже чисто на автомате сношу его и ставлю sysvinit

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пользоваться systemd довольно приятно, как ни крути. Жаль только, архитектурно он как-то не оч.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.