Considérez ceci: vous tapez $sudo apt-get upgrade
et obtenez une liste de choses qui nécessitent une mise à niveau avec une confirmation "Y \ n". avant de pouvoir lire la liste, et tapez "Y" ou "n", le téléphone sonne, ou votre patron entre, ou vous faites autre chose. Vous revenez une heure plus tard et appuyez sur Y pour installer les mises à jour.
vous n'êtes pas invité à nouveau pour un mot de passe. sans doute, d'autres commandes sudo dans le shell s'exécuteront, car le temporisateur a été mis en attente en attendant l'entrée de l'utilisateur. Ou un utilisateur peut tuer le processus de mise à jour et faire quelque chose comme sudo -i
et simplement rester indéfiniment en racine.
J'utilise ubuntu mate 14.04
est-ce une exception de sécurité notable? Dois-je essayer de le signaler quelque part? Si oui, où?
Defaults passwd_timeout=3
mon fichier sudoers, lors de l'exécution dusudo apt-get upgrade
mot de passe n'est pas demandé. Ce n'est pas bonRéponses:
Vous n'êtes pas invité à entrer un mot de passe car il
sudo
a fait son travail et a démarré enapt-get
tant que root. Tant qu'il est dans l'invite, leapt-get
processus est toujours en cours d'exécution, et comme il s'exécute toujours en tant que root, il n'est pas nécessaire de saisir à nouveau votre mot de passe.En d'autres termes, tant qu'un
sudo
processus est en cours d'exécution, vous ne serez pas invité à saisir à nouveau votre mot de passe pour ce processus;sudo
n'interrompt pas le processus toutes les 15 minutes (délai d'expiration par défaut) et vous demande votre mot de passe.Maintenant, si vous deviez ouvrir un autre terminal et essayer d'exécuter un autre processus sous
sudo
, vous serez invité à entrer votre mot de passe.la source
sudo
Latimestamp_timeout
variable par défaut est de 15 minutes. Cela signifie que si vous cliquez sur nsudo apt-get upgrade
dans les 15 minutes, vous pouvez vous attendre à entrer dans le shell racine avecsudo -i
. C'est exactement ce qui s'est passé. Cependant, si vous définissez cela dans/etc/sudoers
asDefault timestamp_timeout 0
, vous serez invité à le faire à chaque fois. Personnellement, je l'ai réglé sur 3. Si votre sudo ne s'arrête pas même après 15 minutes, alors il y a quelque chose de grave avec votresudo
binaire.Ce comportement n'est pas une faille de sécurité, mais plutôt une «fonctionnalité pratique» pour les utilisateurs sudo. Cependant, je peux convenir que pour une sécurité renforcée, la
timestamp_timeout
durée doit être beaucoup plus courte que 15 minutes.Remarque : l'
passwd_timeout
option que j'ai mentionnée dans mon commentaire expire réellement l'invite de mot de passe lorsque vous ne saisissez pas le mot de passe pendant x minutes. C'est l'un des moments agréables où vous vous rendez compte que vous devriez lireman sudoers
beaucoup plus attentivement.la source
/etc/sudoers
directement, utilisezvisudo
plutôt qui vérifie les erreurs de syntaxe avant de le remplacersudoers
par un fichier défectueux qui pourrait autrement vous empêcher complètement d'accéder à la racineJe vous suggère de taper
sudo apt-get upgrade && exit
ceci pour quitter le terminal après avoir terminé la mise à niveau. Lorsque la mise à niveau est annulée, le terminal ne fermera pas, mais je pense que ce ne sera pas le cas.la source