На компьютере коллеги каждый раз, когда я использую команду sudo, я получаю эту ошибку:
sudo: must be setuid root
Я пробовал разные вещи, упомянутые в интернете, например, изменение разрешений на 4755 из live cd, но даже эта команда из live-cd
sudo chmod 4755 /media/device/usr/bin/sudo
дает такую же ошибку.
РЕДАКТИРОВАТЬ: Коллега сказал мне, что он выполнил эту команду, бог знает почему: /
sudo chmod -R 777 /
или sudo chmod -R 777
Он не совсем уверен.
Перезагрузите компьютер, выберите консоль восстановления и введите следующие команды
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
Перезагрузите машину.
Также взгляните на эту ссылку для фиксации поврежденного sudo.
Это так же более тяжело для восстановления всех полномочий к файловой системе к состоянию установки out-of-the-box, что это более безопасно и быстрее, чтобы переформатировать разделы и переустановить систему, чем попытка отменить
sudo chmod -R 777 /
команда. Система с 777 (rwxrwxrwx) полномочиями просто безнадежно повреждается. Любое вредоносное программное обеспечение, которое нападает на выполнение разрешения дыры в системе безопасности произвольного кода через браузер, может изменить корневые сценарии и исполняемые файлы, в то время как setuid's как sudo не будет работать, если они проверят полномочия исполняемого файла...
, Другими словами, в системе с мировыми перезаписываемыми 777 кэшами браузера полномочий рассматривается тем же путем, изображение ядра. Просто ерунда.
На самом деле, sudo проверяет свои собственные полномочия, и они должны быть 4755 (rwsr-xr-x), но Ваш друг сбросил полномочия к 0777 (rwxrwxrwx), который препятствует тому, чтобы sudo работал, поскольку он выполняет некоторые проверки безопасности до запуска Вашей обозначенной команды.
, Но, так или иначе, sudo бессмыслен, поскольку Вы уже дали мировые исполняемые полномочия любой программе на компьютере, включая возможное вредоносное программное обеспечение в кэше браузера!
Формат и переустанавливает, самый безопасный путь, поскольку Ваш весь диск должен быть изолирован.
После того, как вы исправите разрешения для sudo
, затем используйте sudo
вместе с тем же методом для рекурсивного исправления разрешений (тот же параметр -R
, используемый в первую очередь для того, чтобы испортить всю систему, только на обоих chown
и chmod
команд) на /etc
, /boot
, /sbin
, /bin
, /dev
, /proc
, /sys
и /usr
. Это должно смягчить проблемы безопасности, по крайней мере, до такой степени, что система пригодна для использования.
С другой стороны, полная переустановка будет проще, если злоумышленник получит контроль над вашей системой (что он получит, если вы вообще подключены к Интернету, пока эти разрешения исправлены), так как это будет очень трудно сделать этот контроль обратно в противном случае.
После выполнения sudo chmod -R 777 /
Я рекомендовал бы срочно переустановить целую систему с нуля. Команда открывает слишком много дыры в системе безопасности, поскольку любой и каждый файл в системе стали читаемыми (и перезаписываемый!) любым пользователем - включая /etc/shadow
, /etc/hosts
, и даже /usr/bin/sudo
и /bin/ls
самостоятельно! Ваша система может быть похожей на дуршлаг - каждую минуту использования его означает катастрофический риск и потери, особенно при соединении с Интернетом. И исправленные полномочия только к sudo
не сделает ничего вообще.
Рассмотрите также этот вопрос.