Это'т Убунту's система запрашивает мой пароль подменены?

Иногда, в Ubuntu показывает следующее окно:

Это окно может быть вызвано какой-то фон, запущенные процессы, такие как автоматическое обновление, или процесс, который сообщает об ошибках канонических которая проявляется таким образом:

Поскольку эти фоновые процессы, первое окно не показывается в ответ на действия я выполнял сам, в ситуации, где я ожидал системе для того, чтобы попросить пароль. Это означает, что:

  • С точки зрения пользователя, нет никакой гарантии, что запрос исходит от операционной системы; это может быть любая вредоносная программа, которая имеет лишь ограниченное разрешение, чтобы показать окно, и в котором запрос на мой пароль, получат неограниченный доступ ко всему машина.

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

Мои вопросы:

  • Есть ли механизм безопасности в Linux в целом и Ubuntu в частности, что предотвращает любое приложение отображает диалоговое окно, которое выглядит так же, как системный, просит у меня мой пароль?

  • Как такие окна будут призваны повысить безопасность пользователей? Почему бы не внедрить систему, подобную ОС Windows' <и>на Ctrl</роз>+<и>Альт</роз>+<и>Дель</роз> на входе?

Комментарии к вопросу (1)
Решение

Ваши очки все хорошо, и вы правы, но прежде чем мы перейдем возмущается об этом мы должны напомнить себе, как модель безопасности Linux работает и что это's предназначены для защиты. Помните, что модель безопасности Linux разработан с мульти-пользователя терминала или SSH сервера в виду. Windows разработан с конечным пользователем рабочей станции в виду (но я'вэ слышал, что последнее поколение Windows является более терминал-дружелюбный). В частности, конвенция Линукс делает лучше песочниц приложений в пользователей, в то время как в Windows что-то важное, как работает система, в то время как GUI ОС Linux (X-сервер) - отстой по безопасности, и Windows GUI имеет необычные вещи как UAC встроенный. В основном, Linux является (и всегда была) сервер первый и второй рабочей станции, а в Windows наоборот.

Модели Безопасности ## Так далеко, как "ОС" по (т. е. ядра), то у вас есть 7 консолей tty и любое количество SSH-подключения (ака "у входа сессий и") - просто так получилось, что Ubuntu поставляется с скрипты для автоматического запуска графического интерфейса на tty7 сессии, но к ядру это's просто другое приложение. Сеансы входа в систему и учетные записи пользователей изолированных довольно хорошо друг от друга, но Линукс занимает мышление безопасности, что вы Don'т должны защищать пользователей от них самостоятельно. В этой модели безопасности, если ваш аккаунт будет взломан вредоносных программ, то это'ы безнадежен, но мы все еще хотим, чтобы изолировать его от других учетных записей Защита системы в целом. Например, приложений Linux, как правило, создать пользователя с ограниченными правами доступа, как Апач или ФЦП, что они бегут, а когда не нужно делать съедобно вещи. Если злоумышленник сумеет взять под контроль процесс запуска Апач, он может испортить других процессов Апач, но будет иметь неприятности прыжки с FTP процессов. Обратите внимание, что Windows принимает принципиально иной подход здесь, во многом благодаря конвенции, что все важные вещи работать, как все системы времени. Вредоносную службу в Linux имеет меньше возможностей, чтобы делать плохие вещи, чем вредоносный процесс, выполняющийся как системы, поэтому Windows нужно идти на дополнительные усилия, чтобы защитить кого-то с правами администратора от "их-само-то". Графического интерфейса среды и X-сервер, который не был предназначен для обеспечения безопасности вверни эта модель безопасности.

Гном gksudo против Windows UAC, и кейлоггеров

В Windows, когда пользователь-обрабатывать запросы повышения привилегий, ядра бросает специальной защищенной оперативную память и клавиатуру автобус / мышь изолирован от остальной части остальной части среды рабочего стола. Он может сделать это, потому что графический интерфейс встроен в ОС. В Linux, графический интерфейс (X-сервер) - это просто еще одно приложение, и, следовательно, пароль запрашивает относятся к процессу, который вызвал их, работает, как вы, разрешения на совместное использование памяти и входной шиной и с любым другим окном и процесс работает, как вы. Корень подскажите может'т сделать необычные ОАК вещи, как блокировка клавиатуры, потому что те должны быть уже корень или требуется полностью переработав X-сервер (см. Вэйланд ниже). Уловка-22, что в данном случае является недостатком отделять GUI от ядра. Но по крайней мере, это's в соответствии с модели безопасности Linux. Если бы мы были пересмотреть модель безопасности, чтобы подавить это, добавив в "песочнице" между пароля и других процессов, запущенных как пользователь в тот же Гуй сессии, мы могли бы переписать многие вещи. По крайней мере, ядра должны стать Гуй в курсе такого, что он способен создать запросы (не сегодня). Другому-к примеру, что все процессы в GUI сессии разделить клавиатуру на автобусе. Смотреть, как я пишу кейлоггер и затем нажмите клавиши по-разному window_:

➜  ~ xinput list  
⎡ Virtual core pointer                      id=2    [master pointer (3)]
⎜   ↳ Virtual core XTEST pointer            id=4    [slave  pointer  (2)]
⎜   ↳ Logitech K400 Plus                    id=9    [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad              id=13   [slave  pointer  (2)]
➜  ~ xinput test 9
key release 36 
key press   44 
hkey release 44 
key press   40 
ekey release 40 
key press   33 
lkey release 33 
key press   33 
lkey press   39 
okey release 33 
key release 39 
key press   66 
key press   31

Любой процесс, работающий, как вы можете нюхать пароль в другом процессе's в командной строке или терминале, а затем вызвать sudo на себя (это непосредственно вытекает из "нет необходимости, чтобы защитить тебя от тебя" менталитет), поэтому для повышения безопасности пароль на экране окажется бесполезной, если мы принципиально поменять модель безопасности и сделать массовый вновь писать всякие вещи. (он's стоит отметить, что Гном, кажется, по крайней мере песочнице клавиатуры автобус на экране блокировки и новые сеансы через "и переключение пользователей на" а вещей наберется не появишься в моей сессии'с клавиатуры авт.)

Вэйланд

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

Виртуализация# и контейнеров

Если вы работаете с облачными технологиями, вы'повторно, вероятно, прыгать вверх и вниз, говоря, что "Docker-это ответ!!&и". Действительно, брауни очки для вас. При этом само окно не предназначено для повышения безопасности (спасибо @SvenSlootweg), это точки с использованием контейнеров и / или виртуализации как вперед, что's совместимость с текущей архитектуре Linux. Два важных дистрибутивов Linux, встроенных с меж-процесс изоляции в виду: Qubes на ОС, которое работает на уровне пользователя приложений внутри несколько виртуальных машин, разделенных в "Домены безопасности" и таких, как работа, банковские операции, просмотр веб-страниц. Планшет что устанавливает и запускает каждое приложение в качестве отдельного низким уровнем привилегий пользователя, таким образом приобретающ процесс-уровень изоляции и файловой системы изоляции (каждое приложение в пределах своего домашнего каталога) между приложениями.

Итог: с точки зрения конечного пользователя, это's не разумно ожидать, Linux, чтобы вести себя так же, как и Windows, но это один из тех случаев, когда вы должны понимать, немного о том, как базовая система работает и почему он был разработан таким образом. Просто меняя выполнение запросов пароля ничего не решит, так как он принадлежит процессу принадлежит вам. Для Linux, чтобы получить такую же безопасность поведения как Windows в контексте одного пользователя графический интерфейс рабочей станции потребует значительных ре-дизайн операционной системы, так что'ы вряд ли произойдет, но такие вещи, как Докер может принести пользу в более приближенном к ОС Linux-встроенная пути. В этом случае главное отличие заключается в том, что Linux создан на низком уровне, чтобы быть в многопользовательский сервер, и они принять решение не защищать пользователей от них-самоназвание, в то время как Windows предназначен для однопользовательской рабочей станции, поэтому вы должны иметь в процессе защиты в течение сеанса входа в систему. Это's также иметь в виду, что в Windows графический интерфейс-это часть операционной системы, в то время как в Linux графический интерфейс-это всего лишь один из пользователей на уровне приложений.

Комментарии (15)

Есть ли какой механизм безопасности в Linux в целом и Ubuntu В частности, что предотвращает любое приложение от отображения диалогового , который выглядит идентично системе's один, просит у меня мой пароль?

Быстрый ответ: Нет.

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

Если вредоносная программа на компьютере, она не'т даже дело, что программа показывает диалоговое окно. Если это вредоносная программа, ну, как описано в следующем предложении, это не'т даже нужно, чтобы показать вам диалог. Если это является законным программа, вредоносная программа может на "посмотреть" в окно и то, что вы'вновь набрав там в Х серверных средах (терминал лучше).

Решение?

Если у вас есть причина полагать, что некоторые программы не'т заслуживают доверия, песочницы (виртуальной машины или иной вещи).

Еще, не просит пароли. Этот диалог является удобство для нетехнических пользователей. Если вы'соответствующие re для безопасности, или организации админ или похожие, там'ы absoluetly не нужно постоянно отображать запрос графический пароль. Настроить разрешения для непривилегированных учетных записей пользователей правильно (да или нет, но не просите), и не использовать стол в качестве корневого (из-за этого, а потому что это соблазн использовать корень чаще, чем это необходимо).

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

Как описано, просто не'т спросить о них. Как админ, то "вашу" пользователи должны иметь четко определенные разрешения.

И, о новинках авто как администратор организация: вы с ума сошли :) серьезно, Дон'т пусть многие клиенты в Ubuntu обновить Рандон вещи в случайные моменты времени. Как насчет Центрального изображения, которые сохраняются и проверен вами, а затем выкатил; или в другую сторону такие вещи, как Анзибль? Полностью независимым от безопасности, обновления могут ломать вещи. Что's, почему.

Комментарии (9)

Да. Это небезопасно!

Я лично всегда "отмена" этого диалогового окна. Не потому, что это может быть подделка, но ведь это может быть реально.

Я должен дать повышенными привилегиями, чтобы "приложение" просто потому, что он просит? Нет, я не'т так думаю.

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

Комментарии (5)

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

Обе операционные системы ограничивают то, что обычный пользователь может сделать (путем запуска программы, конечно). Пользователь может уничтожать своих собственных данных, но в идеале не другие люди'ы (если они общие), и в идеале не может нарушить или повредить систему. Для того, чтобы читать и писать данные системы программе требуется права администратора (root) на обеих операционных системах, которые, как правило, только программ, запущенные админ/Рут.

Для того, чтобы сделать этот простой, обе операционные системы обеспечивают пользователя по умолчанию с возможностью запуска отдельных программ с "привилегии" через судо соответственно УАК. Как операционной системы с графическим интерфейсом огонь диалоговое окно для того, чтобы дать пользователю возможность предотвратить выполнение программ от имени администратора/суперпользователя. Обе системы также есть понятие пользователям, которые не разрешено запускать привилегированные программы на все.

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

Суть всего этого заключается в том, что вредоносная программа может делать вид, что это требует повышенных привилегий на что-нибудь полезное и запустите диалоговое окно, но как только он получил их, форматировать жесткий диск.<суп>1</суп> это верно для обеих операционных систем. Потому что под Windows обычно более третья сторона программное обеспечение устанавливается вероятность попадания такая программа, вероятно, выше, чем для Ubuntu.

Вы учтите, что в Windows диалоговое окно контроль учетных записей, как правило, является результатом действий пользователя, например при установке программы, в то время как Ubuntu запускает диалог без видимых причин. Одна из причин, я могу думать, что обновления программного обеспечения Windows инициируются ОС, так что они уже повышенными привилегиями. Может быть, Убунту просит перед установкой.

Это действительно было бы хорошо иметь больше информации, чем просто "Я нужен паспорт, сапоги и куртка.quot; У меня нет системы Ubuntu под рукой, но я вижу, что "детали" и надпись на левой стороне диалогового окна. Вы посмотрите, что говорит? (Конечно, вредоносная программа может фейк есть любой текст, но вы можете быть в состоянии проверить, является ли предполагаемая программа действительно работает.)

<ч> <суп>1</суп>что бы не быть это страшно, по сравнению с фактически перезаписи данных.

Комментарии (7)

Самый безопасный способ, чтобы убедиться, что ваш пароль это'т быть слежения за ними заключается в использовании последовательности Сак: клавиш Alt-sysrq-к. Это убивает все программы на текущей Вт (включая X11) и инит подарит вам свежее приглашение. Только нападения Я'м курсе предполагает либо изменение раскладки клавиатуры или инициализации ядра ущерба для себя, оба из которых требуют корень или лучше уже открыть.

Существуют различные незначительно-менее полного пути (в xterm есть способ получить доступ к Х11'ы с "эксклюзивные входные и" вариант), в зависимости от вашей системы Вы доверяете, но ... почему бы'т вы быть в состоянии доверять вашей системе?

Основное различие между Linux и модели безопасности Windows, что под Linux, вы Дон'Т просто скачайте случайных исполняемые файлы из интернета и запускать их. (Есть некоторые усилия, чтобы пакет недоверенных приложений Linux в Android-как песочница пакет, но никто не использует их.)

Комментарии (5)

Ужасный, ужасный недостаток безопасности. Когда я увидел дизайн графический судо я бит пули и сделал команду sudo passwd корень "с последующим" apt-получить удалить sudo, тогда я действительно раздражало Убунту ИЦИ людей, выступая удаление судо.

Но все-таки поймите, это крайне небезопасно. Это было вроде как ОК на терминале (тем более, когда снаряды были слабее она была относительно неизвестна и нападения на них бы'т действительно развиты) но это вопиющий слабым местом сейчас.

Я скорее запустить второй экземпляр х как root теперь реже, чем раз в год я должен отдать графический корневой программы. (Я делаю это при старте x :1 непосредственно, не путем запуска команды StartX так ничего, кроме целевого приложения в root's х экземпляра). Если вы чаще всего нужны root советую apt-получить установку СШ и СШ-х корневого@localhostа.

Комментарии (6)