Подумайте об этом: вы набираете $sudo apt-get upgrade
и получаете список вещей, которые необходимо обновить с подтверждением «Y \ n». прежде чем вы сможете прочитать список и набрать «Y» или «n», зазвонит телефон, или ваш начальник входит, или вы делаете что-то еще. Вы возвращаетесь через час и нажимаете Y, чтобы установить обновления.
Вам больше не предлагается пароль. по-видимому, любые другие команды sudo в оболочке будут выполняться, потому что таймер был в ожидании ввода пользователя. Или пользователь может прервать процесс обновления и сделать что-то подобное sudo -i
и просто остаться в root на неопределенное время.
Я использую Ubuntu Mate 14.04
это заслуживающее внимания исключение безопасности? Должен ли я попытаться сообщить об этом в каком-то месте? Если так, то где?
Defaults passwd_timeout=3
в моем файле sudoers после запускаsudo apt-get upgrade
пароль не спрашивается. Это нехорошоОтветы:
Вам не предлагается пароль, потому что
sudo
он выполнил свою работу и запущенapt-get
с правами root. Пока он находится в приглашении,apt-get
процесс все еще выполняется, и, поскольку он все еще выполняется от имени пользователя root, вводить пароль снова не нужно.Другими словами, до тех пор , пока
sudo
«процесс редактор работает, вы не будет предложено ввести пароль еще раз для этого процесса;sudo
не прерывает процесс каждые 15 минут (время ожидания по умолчанию) и запрашивает ваш пароль.Теперь, если вам нужно открыть другой терминал и попытаться запустить другой процесс
sudo
, вам будет предложено ввести пароль.источник
sudo
timestamp_timeout
Переменная по умолчанию составляет 15 минут. Это означает, что если вы нажмете n вsudo apt-get upgrade
течение 15 минут, вы можете ожидать входа в корневую оболочку с помощьюsudo -i
. Именно так и произошло. Однако, если вы установите это/etc/sudoers
какDefault timestamp_timeout 0
, вам будет предложено это каждый раз. Лично я установил его на 3. Если у вашего sudo нет времени ожидания даже через 15 минут, значит, что-то серьезно не так с вашимsudo
двоичным файлом.Это не дыра в безопасности, а скорее «удобная функция» для пользователей sudo. Тем не менее, я могу согласиться с тем, что для более строгой безопасности
timestamp_timeout
необходимо установить гораздо более короткое время, чем 15 минут.Примечание .
passwd_timeout
Опция, о которой я упоминал в своем комментарии, фактически блокирует запрос пароля, если вы не вводите пароль в течение x минут. Это один из приятных моментов, когда вы понимаете, что вам следует читатьman sudoers
намного внимательнее.источник
/etc/sudoers
напрямую,visudo
вместо этого используйте проверку, которая проверяет синтаксические ошибки перед заменойsudoers
на неисправный файл, который в противном случае мог бы полностью заблокировать вас от корневого доступаЯ бы посоветовал вам напечатать
sudo apt-get upgrade && exit
это выйдет из терминала после завершения обновления. Когда обновление будет отменено, терминал не закроется, но я думаю, что это не так.источник