Почему плохо запускаться от имени root?

9

Я часто сталкивался с сообщениями на форумах или других веб-сайтах, где вы видите, как люди шутят о том, чтобы запускать / входить в систему как root, как будто это что-то ужасное, и каждый должен знать об этом. Тем не менее, не так много, что поиск показывает по этому вопросу. Это может быть широко известно специалистам по Linux, но я действительно не знаю почему. Я помню, что всегда запускал как root, когда впервые попробовал Linux много лет назад (Redhat и Mandrake), и не помню, чтобы из-за этого возникали какие-либо проблемы. На самом деле есть некоторые дистрибутивы, которые имеют ярко-красный фон с предупреждающими надписями в качестве обоев для пользователя root (Suse?). Я все еще использую учетную запись «Администратор» для регулярного использования в моей установке Windows и никогда не сталкивался ни с какими проблемами.

Mussnoon
источник

Ответы:

9

Эти пользователи имеют административный доступ к системе, уровень разрешений, который позволяет им, и приложениям, которые они запускают, чтобы обойти механизмы защиты (такие как разрешения файловой системы), позволяя им делать все в системе. Вредоносное ПО любит неограниченный доступ.

В качестве простого примера

sudo rm -rf *

удалит почти все в системе Linux, если вы находитесь в корневом каталоге. Это не должно быть так очевидно или даже злонамеренно. Что-то вроде неожиданно неопределенных переменных в скриптах, которые требуют привилегий root, может вызвать серьезные проблемы:

rm -rf $destinationDir/*

# if the variable is undefined and the shell doesn't care, the result is:
rm -rf /*

Иногда это простая опечатка в скрипте, которая удаляет половину вашей системы.

Поэтому общая рекомендация - использовать исполняемые программы только с повышенными правами, если это действительно необходимо.

Даниэль Бек
источник
3
Короче говоря, это опасно.
digitxp
Один только просмотр этой команды заставляет мой желудок сжаться.
Пол Ламмерцма
4

Root в Linux даже более мощный, чем учетная запись администратора в Windows. Это сопоставимо с учетной записью SYSTEM в Windows, которая обычно недоступна.

user54114
источник
0

Это будет эквивалентно полному отключению UAC и запуску от имени администратора для всех пользователей в окне Windows. Вредоносные программы могут быть проще в установке, загрузка за счет загрузки более эффективна, если есть проникновение, они теперь являются богом на вашем компьютере. Вы просто эффективно удаляете привилегии пользователей (как правило, плохая практика). imho, если у вас не было проблемы, вы либо очень удачливы, либо имеете невероятно безопасные привычки при просмотре, либо, скорее всего,… имели проблему и не знали об этом.

RobotHumans
источник
О каких проблемах я мог иметь (и теперь имею в Windows) и не знать?
Mussnoon
Вы можете не обнаружить некоторые типы руткитов, которые не занимают много ресурсов процессора или диска (например, опросите веб-сайт с помощью одного запроса / отправки каждые 2 минуты, чтобы стать частью DDoS). Другие возможности включают медленный поиск на вашем диске данных, связанных с PCI (номера кредитных карт)
RobotHumans
0

У меня есть (как минимум дважды) написанные сценарии, которые должны были просматривать структуру каталогов определенным образом и выполняться rm -rf *в каком-то каталоге. Произошла какая-то ошибка, и скрипт в конечном итоге перешел в "/"(корневой) каталог и запустился rm -rf *. Это, конечно, пример наихудшего вида, но даже меньшие злые скрипты или команды могут нанести серьезный ущерб вашей системе при запуске от имени пользователя root.


источник
Для сценариев (особенно тех, которые должны запускаться с правами root) вы должны использовать защитные сети, такие как «rm -rf / full / path / to / target / dir / *» или «cd / some / nonexisting / directoy / | exit 1» ,
0

Помимо сил, которые приходят с ним, и, следовательно, последствия ошибок, он также приходит без каких-либо предупреждений. И это предупреждения, которые предупреждают вас о неожиданных вещах.

Как, например, при запуске графического интерфейса пользователя root: как вы узнали, что какое-то вредоносное ПО пыталось установить себя?

Арьян
источник
0

У вас печальное несчастье Microsoft и антивирусов, занимающихся этой проблемой. Учетная запись администратора (root) должна иметь неограниченный доступ (как указано всеми). Он может не только изменять системные файлы, в результате чего компьютер не может загружаться, но и может получать доступ к другим пользовательским данным (пользовательских прав недостаточно для обеспечения доступа к данным и их модификации при наличии физического доступа к компьютеру). Теперь о том, что вы не «видите».

К сожалению, всегда запускать компьютер с Windows в качестве администратора. Для этого есть веские причины, такие как возможность стать другим пользователем в течение сеанса, который был занят (установка программы потребует выхода из системы и входа в систему как администратора и установки приложения, что может даже потребовать наличия администратора для запуска). В результате ваш компьютер привыкнет к вещам, которые вы не ожидали, даже если вы не установили приложение.

Результатом является не то, что люди уходят от работы в качестве администратора, а Microsoft внедряет контроль разрешений в подчеркивающую структуру ОС UAC. Это означает, что вас просят дать приложению разрешение на запуск независимо от того, кто вы. Vista была действительно плохой, потому что у нее было два уровня для пользователей-администраторов: «Вы хотите запустить эту программу?», «Хорошо, теперь, когда вы запускаете эту программу, хотите ли вы, чтобы она запускалась?»

В Linux вы видите совсем другую философию. Прежде всего, ОС делает то, что вы говорите, без двойной проверки того, что вы действительно хотели запустить приложение. Во-вторых, пользователь не может делать с системой ничего, что он хочет. Это означает, что система защищена от ошибок пользователя, но пользователь всегда может повысить свои права доступа до надлежащего уровня, если пожелает. Microsoft в основном создала слой повышения разрешений, отдельный от пользовательского уровня, будет ли в Linux / Unix всегда существовать дизайн для расширения разрешений, который работал с пользователями.

he_the_great
источник
0

В Linux это в основном просто удерживает вас (или приложение, действующее от вашего имени) от случайного выполнения чего-то глупого.

В Windows вы не можете установить много видов программного обеспечения, не запустив учетную запись от имени администратора, потому что у вас нет прав на запись в файлы программы или папки Windows. Наихудшие виды вредоносных программ должны иметь возможность писать в эти области, чтобы проникнуть в вашу систему.

Если вы не являетесь администратором и посещаете взломанный сайт, который пытается установить что-то вроде скрытого кейлоггера для кражи паролей, банковской информации или номеров кредитных карт, эта установка, скорее всего, не удастся. Если вы работаете как администратор, у этой установки гораздо больше шансов на успех. Тот же принцип справедлив для систем Linux.

Ключевым моментом здесь является то, что антивирусное программное обеспечение даже не входит в. В наши дни антивирусное ПО - это ваша последняя линия защиты, а не ваша первая. Порядок важности, который я использую для оценки мер безопасности, выглядит следующим образом:

  1. Держите вашу систему (включая прикладное программное обеспечение) исправленной
  2. Не запускайте от имени администратора
  3. Используйте другие безопасные интернет-привычки
  4. Запустить брандмауэр
  5. Хорошее резервное копирование в автономном режиме (в данном случае автономное означает «недоступен для вашей обычной файловой системы», что на самом деле может означать использование онлайн-службы)
  6. Запустите антивирусное программное обеспечение

На самом деле, если вы правильно выполняете достаточно других действий, антивирусное программное обеспечение вообще не нужно. Но здесь важно то, что работать от имени администратора - нет-нет.

К счастью, теперь это состояние по умолчанию в Windows 7. Даже если ваша учетная запись имеет привилегии администратора, она по-прежнему работает в «песочнице» и просто дает вам право подняться для конкретного приложения по требованию.

Джоэл Коухорн
источник