snvoronkov Posted September 30, 2016 Posted September 30, 2016 В системном менеджере 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 - тут только ссылки. Текст весь скопировал. Вставить ник Quote
BETEPAH Posted October 8, 2016 Posted October 8, 2016 Нужен локальный доступ, который только у админа. А вообще - да, Леннарт Поттеринг постарался всё усложнить. Вставить ник Quote
snvoronkov Posted October 8, 2016 Author Posted October 8, 2016 Нужен локальный доступ, который только у админа. Дыра. Любая. Чтобы написать в сокет. Вставить ник Quote
NiTr0 Posted October 8, 2016 Posted October 8, 2016 defective by design система "все-в-одном"... Вставить ник Quote
pppoetest Posted October 8, 2016 Posted October 8, 2016 Об этом говорили умные люди еще несколько лет назад. Инит должен инитить, всё. Вставить ник Quote
FATHER_FBI Posted October 8, 2016 Posted October 8, 2016 Выполнил NOTIFY_SOCKET=/run/systemd/notify systemd-notify "" на Ubuntu 16 и CentOS 7, система загрузилась. Вставить ник Quote
snvoronkov Posted October 8, 2016 Author Posted October 8, 2016 Выполнил NOTIFY_SOCKET=/run/systemd/notify systemd-notify "" на Ubuntu 16 и CentOS 7, система загрузилась. Там частенько в цикле надо... Да, а почто оно не должно загрузиться? Оригинальный пост по уязвимости и обсуждение к нему: https://www.agwa.name/blog/post/how_to_crash_systemd_in_one_tweet Вставить ник Quote
snvoronkov Posted July 3, 2017 Author Posted July 3, 2017 И еще раз. На этот раз - получение root: В systemd выявлена ошибка, приводящая к выполнению сервисов с правами пользователя root, если в параметрах запуска указано имя пользователя, начинающееся с цифры. Например, если в сервисе указан "User=0day" и пользователь 0day присутствует в системе, то сервис будет запущен с идентификатором 0, т.е. с правами root. Леннарт Поттеринг отказался исправлять ошибку и закрыл уведомление с меткой "not-a-bug". http://www.opennet.ru/opennews/art.shtml?num=46798 Вставить ник Quote
vop Posted July 3, 2017 Posted July 3, 2017 Кому придет в голову заводить пользователя с цифрой вначале? :) Вставить ник Quote
snvoronkov Posted July 3, 2017 Author Posted July 3, 2017 Кому придет в голову заводить пользователя с цифрой вначале? :) Кому-то же пришло в голову 0ad в контейнер засадить! :-) Вставить ник Quote
murano Posted July 6, 2017 Posted July 6, 2017 А я как-то предвзято к systemd отношусь. При новых инсталляциях уже чисто на автомате сношу его и ставлю sysvinit Вставить ник Quote
IPaddress.ru Posted July 18, 2017 Posted July 18, 2017 Пользоваться systemd довольно приятно, как ни крути. Жаль только, архитектурно он как-то не оч. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.