LINUX.ORG.RU

В Fedora 15 уже не будет suid-программ

 , , , ,


0

1

Разработчики популярного дистрибутива Fedora приняли концепцию, согласно которой все последующие дистрибутивы их разработки не будут содержать ПО с установленным флагом смены пользовательского идентификатора (suid). По мнению разработчиков, это должно значительно повысить безопасность системы, особенно учитывая уязвимости в glibc. Благодаря отказу от suid эти уязвимости будет невозможно использовать. Планируется, что уже в Fedora 15 таких программ не будет.

Для программ, которым требуются повышенные права для нормальной работы вместо suid будут задействованы capabilities, которые более гибко позволяют выполнять требуемые действия с высокими привилегиями в системе.

Разработчики уже лишили suid для 11 пакетов, на очереди еще 24. Пакеты su, sudo, ksu и userhelper, которые служат для предоставления полных прав пользователю останутся без изменений.

>>> Подробности



Проверено: anonymous_incognito ()
Последнее исправление: anonymous_incognito (всего исправлений: 1)

> Множество полезных функций всех дистрибутивов Linux берут свое начало в Fedora.

маркетолаги, s/(множество|всех)/подмножество множества/g

anonymous
()

Fedora)

Они уже давно над этим работают, блин вообще красавцы во характер) Мне кажется только они F, хотят сделать Linux лучше. Стольные тока пиар да сборки и форки.

srgaz
()
Ответ на: комментарий от Hokum

>представь себе. Это, кстати, суть проприетарного софта - отсутствие исходников.

Не факТ. и такого софта в федоре нет

srgaz
()
Ответ на: комментарий от Zenom

Я не рассматриваю проблему узко в рамках одного дистра. Вообще говоря, Федора это основа для RHEL, который по-определению запускает массу проприетарного софта, частенько такого, который меняется с очень большим скрипом.
То, что движение правильное, я не отрицаю. Но никакой революции в этом быть не может.

Hokum ☆☆☆☆
()
Ответ на: комментарий от northerner

для MD5 подберу коллизию за 15 минут.

Это если хеш уже посчитан на одном из многочисленных сервисов взлома. А еще: где вы видели устаревший MD5? Сейчас в основном sha512 используется. А его еще подбирать и подбирать...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от northerner

но для MD5 подберу коллизию за 15 минут.

430081b580a424e876284cad899778a9

?

Deleted
()
Ответ на: комментарий от Hokum

>Это, кстати, суть проприетарного софта - отсутствие исходников.

Проприетарный, без исходников, да ещё и суидный? Ты таким пользуешся? мальчик, ты долб^Wмазохист?

Led ★★★☆☆
()
Ответ на: комментарий от vadic

Ну-ка, ну-ка, хотелось бы услышать примеры ситуаций, в которых suid root нельзя заменить на file caps.

Повтори-ка без suid функции su -l root или sudo -i

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

Ну-ка, ну-ка, хотелось бы услышать примеры ситуаций, в которых suid root нельзя заменить на file caps.

Повтори-ка без suid функции su -l root или sudo -i

Если приложить один тривиальный патч (и я прозреваю, что федоровцы его таки приложат), то все замечательно:

diff -Naur sudo-1.7.4p4-orig/sudo.c sudo-1.7.4p4/sudo.c
--- sudo-1.7.4p4-orig/sudo.c    2010-09-06 16:16:09.000000000 +0400
+++ sudo-1.7.4p4/sudo.c 2010-10-31 14:55:56.003552787 +0300
@@ -194,9 +194,9 @@
 # endif
 #endif /* HAVE_GETPRPWNAM && HAVE_SET_AUTH_PARAMETERS */

-    if (geteuid() != 0)
+/*    if (geteuid() != 0)
        errorx(1, "must be setuid root");
-
+*/
     /*
      * Signal setup:
      * Ignore keyboard-generated signals so the user cannot interrupt
$ ls -l sudo.my 
-rwxr-xr-x 1 vadic vadic 191156 Oct 31 15:00 sudo.my
$ sudo setcap all=ep ./sudo.my
$ ./sudo.my id
uid=0(root) gid=0(root) groups=0(root)

На самом деле должно быть достаточно довольно небольшого подмножества capabilities вместо all, но выбирать лениво.

vadic
()
Ответ на: комментарий от no-dashi

Да, ломать UNIX'овые пароли сложно, но при современных мощностях всё-таки теоретически (?) можно.


Откройте для себя http://ru.wikipedia.org/wiki/John_The_Ripper

Повтори-ка без suid функции su -l root или sudo -i

А ничего, что:

Пакеты su, sudo, ksu и userhelper, которые служат для предоставления полных прав пользователю останутся без изменений.

?

mouzde
()

Ждем когда их примеру последуют другие дистрибутивы.

Deleted
()
Ответ на: комментарий от boyarsh

Именно там я это и подсмотрел, просто забыл, как называлось.

kmeaw ★★★
()

А если отвлечься от технической стороны вопроса: на ЛОРе что, уже закончилось ЧЮ? Упустить «действия с приведениями» - это какими же унылыми людьми нужно быть? :(

DRVTiny ★★★★★
()
Ответ на: комментарий от anonymous

> 1738c65ef15ed8ceb43c3bdafb7b62cf время пошло

Под рукой был только очень слабый на процессор нетбук, получилось 1.5 часа :)

real 104m42.494s
user 0m33.456s
sys 92m31.303s

На стационаре взял бы гораздо быстрее.

Математика (модифицированный алгоритм Климы) описана Стивенсом тут:

http://eprint.iacr.org/2006/104.pdf

Ссылка на страницу с исходниками есть в статье.

Исходный алгоритм Властимила Климы:

http://eprint.iacr.org/2005/102.pdf

Еще одна реализация (правда не уверен, что рабочая)

http://www.securiteam.com/tools/6O00E1FEKO.html

northerner ★★★
()
Ответ на: комментарий от Eddy_Em

> Это если хеш уже посчитан на одном из многочисленных сервисов взлома.

Это в предположении, что он теперь будет тупо храниться в каталоге пользователя. Привет троянам в линуксе.

А еще: где вы видели устаревший MD5? Сейчас в основном sha512 используется. А его еще подбирать и подбирать...

Это верно. Только про MD5 тоже так говорили. Математики не дремлют. И вот вопрос: есть ли смысл рисковать, полагаясь на криптостойкость алгоритма? По-моему, passwd с suid-битом надежнее.

northerner ★★★
()
Ответ на: комментарий от northerner

Это в предположении, что он теперь будет тупо храниться в каталоге пользователя. Привет троянам в линуксе.

Про то, что все программы, запущенные данным пользователем, будут в этом случае иметь доступ к хэшу его пароля, я как-то и не подумал...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Hokum

>масса legacy, которая, например, тупо проверяет наличие бита и без него работать отказывается

Туча старого барахла не работала с юникодом, туча раюботала с oss и т.д.

Надо сказать большое спасибо федоре, что вся эта куча правится и перетряхивается. А тоб до сих пор было, как в бсде с ее кои8. До сих пор дергает, как захожу в зенон через ssh...

AVL2 ★★★★★
()
Ответ на: комментарий от Hokum

Шут с ним, с проприетарным ПО. Я его в работе не использую. А Федора не только основа для RHEL, она во многом определяет вектор развития современных дистрибутивов вообще. А это значительно ближе среднестатистическому ЛОРовцу, чем RHEL.

Zenom ★★★
()
Ответ на: комментарий от Led

Я не пользуюсь, пользуется контора. Это же Россия.

Hokum ☆☆☆☆
()
Ответ на: комментарий от vadic

поживём - увидим. Но, чтобы сменить стандарт де-факто усилий одной федоры мало будет.

Hokum ☆☆☆☆
()
Ответ на: комментарий от AVL2

Она по прежнему не работает с юникодом. В SLES 11.1 отключаю - вариантов нет других. Но от отключения юникода сейчас ничего не ломается, oss тоже можно воткнуть (лично у меня не было проблем). Уход от suid может быть болезненным для legacy, поэтому прямо сейчас в промдистрах этого не сделать.

Hokum ☆☆☆☆
()
Ответ на: комментарий от Zenom

Завидую. Тем не менее, мне вас жаль огорчать, но если вообще отказаться от проприетарного софта, то доля линукса на серверах сократиться радикально

Hokum ☆☆☆☆
()
Ответ на: комментарий от Hokum

Завидую. Тем не менее, мне вас жаль огорчать, но если вообще отказаться от проприетарного софта, то доля линукса на серверах сократиться радикально

О каком софте речь?

mouzde
()
Ответ на: комментарий от mouzde

Узкоспециализированный юникс софт, отечественного производства

Hokum ☆☆☆☆
()
Ответ на: комментарий от kmeaw

> Можно сделать интереснее - разбить /etc/passwd, /etc/shadow и прочие такие файлы на много маленьких - по файлу на каждого юзера, например /etc/shadow.d/{root,vasya,petya}, и хранить хеши их паролей в этих файлах.

После чего юзер сможет поменять не только пароль, но и uid, gid и login shell. Спасибо, не надо

dexpl ★★★★★
()
Ответ на: комментарий от Hokum

масса legacy, которая, например, тупо проверяет наличие бита и без него работать отказывается

По этому поводу я могу сказать две вещи.

Во-первых, в идеале надо добиваться чтобы это было пофиксено, потому что это баг. Вообще обычно неправильно пытаться по косвенным признакам определить можно ли выполнить какое-то действие, перед тем как его выполнять, это ведет к рейсам. Правильнее просто попытаться, и смотреть получилось ли.

Во-вторых, независимо от того, пофиксят ли эти баги, от file caps все равно можно получить существенную пользу. Начиная с ядра 2.6.31, (commit b5f22a59c0356655a501190959db9f7f5dd07e3f) ядро не дает все capabilities при запуске suid root бинарника, если на нем стоит effective file cap. То есть можно не сносить suid, а просто вешать на бинарник нужные fcaps, и он будет исполняться с ограниченными привилегиями. Почему-то этот факт малоизвестен в широких кругах, и не освещен в доках типа capabilities(7), но, как и суслик, «он есть»™.

vadic
()
Ответ на: комментарий от mouzde

>О каком софте речь?

Навскидку: интел компиляторы, оракуль, аутодеск флинт, флейм, майа, адоб флеш (который не нужен), адоб ридер (который тоже не нужен) и всякие другие не нужные адобы, есть еще какой-то новелловский софт, есть еще закрытый аналог аутокада, есть закрытые игрушки (уорлдофгу, гиш), есть тулы для чип дизайна, некоторые даже не обновляются с 94-го года (вроде «космос» называлась), для симуляции у проверки этих же чипов, а вообще вот она ссылка фстудию:
http://en.wikipedia.org/wiki/List_of_proprietary_software_for_Linux

noch
()
Ответ на: комментарий от Hokum

>Она по прежнему не работает с юникодом.

Количество такого софта теперь очень небольшое.

В SLES 11.1 отключаю - вариантов нет других.

В SLES? возможно. В остальных есть LC_*=С тупая-старая-программа

А без федоры даже mc в бздях и тупых старых линуксовых дистрах в юникоде не работает.

Уход от suid может быть болезненным для legacy, поэтому прямо сейчас в промдистрах этого не сделать.

если этого не делать - ничего и не будет меняться.

AVL2 ★★★★★
()
Ответ на: комментарий от kmeaw

>Или ещё хитрее - владелец такого файла будет root, а группой - группа из одного соответствующего пользователя, права доступа - 0620.

Давно сделано. Было внедрено в pld и альт линуксах. Сейчас уже и не знаю, осталось ли.

AVL2 ★★★★★
()
Ответ на: комментарий от AVL2

Почему пуст /etc/shadow? Неужели он не используется?! В любом дистрибутиве В дистрибутивах ALT Linux используется реализация Trusted Computing Base (TCB), выполненная Rafal Wojtczuk и Solar Designer в рамках проекта OpenWall GNU/*/Linux. В этой модели каждый пользователь имеет собственный shadow-файл, хранящийся в /etc/tcb/имя_пользователя/shadow, доступ к которому имеют только сам пользователь (чтение/запись) и программы, исполняющиеся с sgid auth. В результате доступ к паролям конкретного пользователя не приводит к возможности скомпрометировать всю систему. Преимущества и недостатки этой модели подробно описаны в man tcb(5). Для всех приложений, работающих в системах с поддержкой NSS (таких как дистрибутивы ALT Linux) и использующих только чтение паролей системными средствами, схема TCB прозрачна.

AVL2 ★★★★★
()

Разработчики уже лишили suid для 11 пакетов

«Разработчики уже лишили suid для 11 пакетов»
Исправь эту чушь.

S_Paul ★★★★★
()
Ответ на: комментарий от Led

> Проприетарный, без исходников, да ещё и суидный?

ls -l `which oracle` :-)

Nastishka ★★★★★
()
Ответ на: комментарий от boyarsh

как в openwall уже 9 лет

Опередил. ))

openwall уже давно это применяет, кстати, он базе шапки.

Как отмечено, после обнаружения недавних уязвимостей в glibc, эксперт по безопасности из Google Тэвис Орманди (Tavid Ormandy), который их нашел, признал, что openwall предвидел эту порчу и предотвратил ее годы тому назад объявленным в новости методом. Цитата: «Также направляю приветствия ребятам из openwall, которые предувидели эту проблему много лет назад. Они продолжают избегать сотен уязвимостей каждый год благодаря своему глубокому пониманию системной безопасности».

Взято отсюда: http://soft.cnews.ru/news/softbox/10587/

SU
()
Ответ на: комментарий от dexpl

>> хранить хеши их паролей

uid и gid пусть остаются там, где они есть сейчас; или можно разбить данные в пользователе на несколько файлов - uid, gid, pwhash, ... и на каждый из них выставить нужные права (и владельцем в некоторых случаях сделать рута).

kmeaw ★★★
()
Ответ на: комментарий от Hokum

Чего?

>Вообще говоря, Федора это основа для RHEL, который по-определению >запускает массу проприетарного софта, частенько такого, который >меняется с очень большим скрипом.

Это не обоснований пук

srgaz
()

Броузер Google Chrome без suid не работает

> sudo mount -o remount,nosuid /opt

/opt/google/chrome/google-chrome

Failed to move to new PID namespace: Operation not permitted

с Chromium была похожая фигня - прямо на бинарнике был включен бит suid

Вот тебе, бабушка, и sandbox для вкладок браузера. Суидный. Застрелиться можно.

Viva Fedora вобщем.

maister
()
Ответ на: комментарий от alltiptop

>А дебиан просто работает, стабильно и быстро.

У него другая проблема. Обратился ко мне друг - надо было ему проксю поставить. А дебиан у хостера стоял четвертый.

Ни одного репозитария живого не находилось в течение часа. Потом удалось нарыть где-то в Австралии полуживой сервер с неполным репозитарием.

(Нет, у хостера не было открытого репозитария).

Пришлось собирать на пятом, дык оно не заработало.

Грустно.

jackill ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.