UAC вместо sudo ?
От: Кодт Россия  
Дата: 06.03.15 14:49
Оценка:
Хочется странного.
В однопользовательском линуксе sudo играет роль (во многом) защиты от дурака, а не от зловреда.
То есть, — запустил менеджер пакетов или там полез в /etc поковыряться, — будь добр, подтверди серьёзность намерений.

Интересно, можно ли как-то так наловчиться, чтобы пользователю-sudoer'у можно было просто нажимать на кнопочку Yes, как это в винде сделано?
Интересуют, в первую очередь, ubuntu / mint.
Перекуём баги на фичи!
Re: UAC вместо sudo ?
От: LuciferSaratov Россия  
Дата: 06.03.15 15:02
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Интересно, можно ли как-то так наловчиться, чтобы пользователю-sudoer'у можно было просто нажимать на кнопочку Yes, как это в винде сделано?

К>Интересуют, в первую очередь, ubuntu / mint.

ну так вроде же можно настроить sudo так, чтоб пароль вообще никогда не спрашивало.
Re[2]: UAC вместо sudo ?
От: Кодт Россия  
Дата: 06.03.15 15:18
Оценка:
Здравствуйте, LuciferSaratov, Вы писали:

LS>ну так вроде же можно настроить sudo так, чтоб пароль вообще никогда не спрашивало.


Остаться без защиты от дурака тоже как-то не хочется.
Перекуём баги на фичи!
Re: UAC вместо sudo ?
От: fin_81  
Дата: 06.03.15 15:39
Оценка:
Насколько знаю win UAC, привилегии запрашивает сама программа и ос показывает соответствующий диалог. А в линухах вызов gksu/kdesu/su приписан в самих файлах запуска (меню и .desktop файлах) системных утилит.
В консоли пишешь пишешь su или sudo, чем это отличается предварительного нажатия yes?

В общем, нельзя. Но если написать свой gksu/kdesu/sudo/su с двумя кнопками и поправить /etc/sudoers, то можно сделать странную реализацию uac.
Re[2]: UAC вместо sudo ?
От: Кодт Россия  
Дата: 06.03.15 16:42
Оценка:
Здравствуйте, fin_81, Вы писали:

_>Насколько знаю win UAC, привилегии запрашивает сама программа и ос показывает соответствующий диалог. А в линухах вызов gksu/kdesu/su приписан в самих файлах запуска (меню и .desktop файлах) системных утилит.

_>В консоли пишешь пишешь su или sudo, чем это отличается предварительного нажатия yes?

В консоли всё хорошо.
А вот gksu / gksudo, если судоер безпарольный, никакого диалога не показывает. Что интересно, pkexec требует пароля, невзирая на.

Причём есть три сценария.
— запуск приложения под рутом из меню/десктопа с помощью gksu (например, synaptic) или pkexec (например, gparted); будет оно работать или нет, тут как повезёт
— запуск под юзером, самостоятельный перезапуск под рутом (например, минтовский менеджер программ — причём у него собственный диалог аутентификации)
— запуск под юзером, выполнение критичных действий под рутом (например, убунтовский менеджер программ — вроде бы через polkit)

_>В общем, нельзя. Но если написать свой gksu/kdesu/sudo/su с двумя кнопками и поправить /etc/sudoers, то можно сделать странную реализацию uac.


Жаль... думал, вдруг уже всё украдено до нас.
Перекуём баги на фичи!
Re[3]: UAC вместо sudo ?
От: fin_81  
Дата: 06.03.15 17:17
Оценка:
Кстати, polkit. Я его не знаю. Думаю без поддержки polkit со стороны программ, тоже мало что получиться.
Re[4]: UAC вместо sudo ?
От: Кодт Россия  
Дата: 06.03.15 17:32
Оценка:
Здравствуйте, fin_81, Вы писали:

_>Кстати, polkit. Я его не знаю. Думаю без поддержки polkit со стороны программ, тоже мало что получиться.


Polkit самостоятельно смотрит на группу sudo (в убунту). Возможно, его тоже можно как-то тщательно сконфигурировать.
Перекуём баги на фичи!
Re[5]: UAC вместо sudo ?
От: fin_81  
Дата: 06.03.15 18:13
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Polkit ... (в убунту)...


Ради эксперимента можно попробовать Fedora или Redhat. Думаю там должно быть получше с поддержкой "поделок Поттеринга": системд, полкит и тд и тп.
Re[2]: UAC вместо sudo ?
От: Anton Batenev Россия https://github.com/abbat
Дата: 06.03.15 19:01
Оценка:
Здравствуйте, LuciferSaratov, Вы писали:

LS> ну так вроде же можно настроить sudo так, чтоб пароль вообще никогда не спрашивало.


Ну все же знают, что так делать на рабочей станции ни в коем случае нельзя (как и кэшировать успешный пароль)...
avalon/1.0.442
Re[3]: UAC вместо sudo ?
От: Кодт Россия  
Дата: 06.03.15 19:32
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Ну все же знают, что так делать на рабочей станции ни в коем случае нельзя (как и кэшировать успешный пароль)...


Ну sudo же кэширует пароль причём непонятно, на какое время

Кстати говоря, через это можно сделать такую подлую атаку
#!/bin/sh

# this is very useful script, trust me! it runs with user privileges

#... many lines of code ...
#... doing useful things ...

function attack() {
  # добавить nobody в группу sudo
  # добавить nobody ALL=(ALL:ALL) NOPASSWD ALL в /etc/sudoers
  # добавить всякую фигню в /etc/hosts и прочие радости жизни
}

sudo -n attack >nul    # если не получилось, то и фиг с ним

#... many lines of code ...
#... doing useful things ...
Перекуём баги на фичи!
Re[4]: UAC вместо sudo ?
От: Anton Batenev Россия https://github.com/abbat
Дата: 06.03.15 19:52
Оценка:
Здравствуйте, Кодт, Вы писали:

К> Ну sudo же кэширует пароль причём непонятно, на какое время


/etc/sudoers

timestamp_timeout
    Number of minutes that can elapse before sudo will ask for a passwd again.  The timeout may include
    a fractional component if minute granularity is insufficient, for example 2.5.  The default is 15.
    Set this to 0 to always prompt for a password.  If set to a value less than 0 the user's timestamp
    will never expire.  This can be used to allow users to create or delete their own timestamps via
    sudo -v and sudo -k respectively.


К> Кстати говоря, через это можно сделать такую подлую атаку


Вот по этому сразу прописываем:

Defaults timestamp_timeout = 0
avalon/1.0.442
Re: UAC вместо sudo ?
От: wildwind Россия  
Дата: 21.03.15 08:34
Оценка:
Здравствуйте, Кодт, Вы писали:

Действительно странного.

Пароль "1" и Enter не подойдет?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.