The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

В systemd 228 обнаружена локальная root-уязвимость, opennews (??), 24-Янв-17, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


25. "В systemd 228 обнаружена локальная root-уязвимость"  +3 +/
Сообщение от snmp agent (?), 24-Янв-17, 18:14 
В нутрях systemd есть функция touch_file, принимающая в том числе mode_t. Она юзалась в src/core/timer.c с нулём в mode_t. А потом товарищ Поттеринг решил использовать вместо нуля MODE_INVALID = -1. В результате файлы стали создаваться со всеми правами.
Фикс: поменяли touch_file, чтобы при MODE_INVALID она использовала 0644.
Ответить | Правка | Наверх | Cообщить модератору

40. "В systemd 228 обнаружена локальная root-уязвимость"  +7 +/
Сообщение от Аноним (-), 24-Янв-17, 19:36 
Отличный хардкод, ящетаю. Откуда взяли 644? Почему не 640? Или не 600?
Ответить | Правка | Наверх | Cообщить модератору

63. "В systemd 228 обнаружена локальная root-уязвимость"  +2 +/
Сообщение от Nooooo (?), 24-Янв-17, 23:47 
Охренеть у них логика. Если в touch_file приходит MODE_INVALID, то НЕ НАДО создавать файл вообще, а не создавать его с дефолтными правами. Недоумки.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

65. "В systemd 228 обнаружена локальная root-уязвимость"  +1 +/
Сообщение от Аноним (-), 25-Янв-17, 01:05 
На сях особо никто не думает о красивой архитектуре, жестком разграничении ответственности, абстракциях и т. д. Логика сишника такова: раз названо touch_file, то и надо создать файл. Поскольку в сях нету исключений, сишнику, чтобы последовать твоему совету, пришлось бы вернуть из touch_file еще одну константу. Допустим, TOUCH_FILE_ERROR_INVALID_MODE_PASSED. Но сишник смотрит: опа, touch_file-то возвращает void, поэтому давай-ка я не буду трогать то, что и так работает, и просто буду считать, что MODE_INVALID -- это то же, что и 644.

Ни этому сишнику, ни тебе не пришло в голову вот что: при MODE_INVALID функция touch_file вообще не должна вызываться! Валидация данных должна быть вынесена в другое место.

Ответить | Правка | Наверх | Cообщить модератору

78. "В systemd 228 обнаружена локальная root-уязвимость"  +5 +/
Сообщение от Аноним (-), 25-Янв-17, 06:44 
> Логика Лёни такова: раз названо touch_file, то
> и надо создать файл.

Fix

Не надо за всех сишников говорить. На самом деле сишники куда более аккуратные, чем, например товарищи, которые пишут на C++ или Java. По себе сужу.

Ответить | Правка | Наверх | Cообщить модератору

85. "В systemd 228 обнаружена локальная root-уязвимость"  +/
Сообщение от Аноним (-), 25-Янв-17, 08:04 
Так вот кто плодит кривокод на С++ и Java, а потом жалуется.
Ответить | Правка | Наверх | Cообщить модератору

88. "В systemd 228 обнаружена локальная root-уязвимость"  +1 +/
Сообщение от Аноним (-), 25-Янв-17, 08:22 
> Так вот кто плодит кривокод на С++ и Java, а потом жалуется.

Лично я не жалуюсь. Лично я молча исправляю.

Ответить | Правка | Наверх | Cообщить модератору

156. "В systemd 228 обнаружена локальная root-уязвимость"  +/
Сообщение от freehckemail (ok), 26-Янв-17, 08:21 
> Лично я не жалуюсь. Лично я молча исправляю.

Коллега, как я тебя понимаю.

Ответить | Правка | Наверх | Cообщить модератору

101. "В systemd 228 обнаружена локальная root-уязвимость"  –1 +/
Сообщение от Буратино (?), 25-Янв-17, 10:37 
Кое-кому очень сильно бомбит с того, что оный ниасил в своё время "неуправляемые" языки.

Пиши на Яваскрипте, макака.

Ответить | Правка | К родителю #65 | Наверх | Cообщить модератору

66. "В systemd 228 обнаружена локальная root-уязвимость"  +2 +/
Сообщение от Аноним (-), 25-Янв-17, 01:09 
Обычная логика похапешника. В непонятной ситуации выбор из "не делать ничего" и "сделать что-нибудь" - выбирается второе.
Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

73. "В systemd 228 обнаружена локальная root-уязвимость"  –1 +/
Сообщение от Аноним (-), 25-Янв-17, 05:55 
"не делать ничего" - это в каком ЯП такое?
Ответить | Правка | Наверх | Cообщить модератору

122. "В systemd 228 обнаружена локальная root-уязвимость"  +2 +/
Сообщение от Michael Shigorinemail (ok), 25-Янв-17, 14:06 
> "не делать ничего" - это в каком ЯП такое?

http://www.gaw.ru/html.cgi/txt/doc/micros/mcs51/asm/nop.htm

Ответить | Правка | Наверх | Cообщить модератору

130. "В systemd 228 обнаружена локальная root-уязвимость"  +2 +/
Сообщение от freehckemail (ok), 25-Янв-17, 15:25 
> В нутрях systemd есть функция touch_file, принимающая в том числе mode_t. Она
> юзалась в src/core/timer.c с нулём в mode_t. А потом товарищ Поттеринг
> решил использовать вместо нуля MODE_INVALID = -1. В результате файлы стали
> создаваться со всеми правами.

Проблема на самом деле кое-в-чём другом. От создания подобных файлов при вызове open вообще-то должен спасать umask, поскольку права файла высчитываются как mode & ~umask (man 2 open)

Поскольку он не спасает, можно сделать вывод, что Леннарт сам себе злобный буратино, umask забил нулями.

Настоящие программисты не совершают ошибок, ага. Зачем настоящим программистам предохранители?

Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру