LINUX.ORG.RU

sudo и SUDO_USER


0

1

А гарантируется ли, что переменная SUDO_USER, устанавливаемая при запуске sudo something, не может быть подменена, как, например, переменная USER ?

$ export USER=root
$ echo $USER
★★★★★
Ответ на: комментарий от cvs-255

В конфиге околодефолт:

root ALL=(ALL) ALL
 %wheel ALL=(ALL) ALL

Версия:

$ eix -e sudo -c
[U] app-admin/sudo (1.8.6_p7@01/09/2014 -> 1.8.11_p1): Allows users or groups to run commands as other users

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

А вот что-то такое есть?

Defaults	env_reset
Defaults	mail_badpass
Defaults	secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

?

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от devsdc

у меня 1.8.9p5

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset
Defaults	mail_badpass
Defaults	secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL

vlad 	ALL=NOPASSWD: /usr/local/bin/suspend2ram.sh, /usr/local/bin/mountsmb

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL
cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от cvs-255

Я получаю

Где вы это получаете? sudo ничего не знает о переменных окружения дочерних процессов, поэтому с ними можно делать абсолютно что угодно.

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

Sorry, user vlad is not allowed to execute '/usr/bin/env SUDO_USER=root sh' as root on vlad.

Если добавить - то позволит изменить

Кстати, это лишний повод не позволять запускать что угодно через sudo

cvs-255 ★★★★★
() автор топика
Последнее исправление: cvs-255 (всего исправлений: 2)
Ответ на: комментарий от cvs-255

Если вызываешь интерактивный sh, то можно сделать что угодно внутри этого sh. Ограничения работают только на возможность менять переменные самим sudo.

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

Да. Но если ты можешь вызывать sh через sudo, то дальше ты вообще что угодно можешь, так что смысла особого делать защиту в этом случае нет.

cvs-255 ★★★★★
() автор топика
Последнее исправление: cvs-255 (всего исправлений: 1)
Ответ на: комментарий от slovazap

Если не касаться случаев, когда разрешены sudo sh, sudo env и им подобные, а разрешены только специальные программы, которые гарантированоо не станут менять переменную SUDO_USER, возможна ли подмена SUDO_USER?

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от cvs-255

pid -> ps -> ruid, не?

Ну, или что-то подобное, мне что-то плохо думается.

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