Почему собственность группы ssh-agent не является root

Попытка понять, почему ssh-agent имеет бит sgid и нашел это сообщение. Ssh-agent имеет sgid

У меня есть еще один вопрос: почему групповое владение ssh-agent никого не коррумпировано? В чем причина этого? Будет ли он работать, если владение группы является корневым?

2 Solutions collect form web for “Почему собственность группы ssh-agent не является root”

Если это был setgid root, тогда агент будет работать как групповой root , который, вероятно, имеет более широкие права доступа, чем пользователь, которого он начал как. Это может быть угрозой безопасности; по крайней мере, запускать что-то как root без необходимости – это красный флаг (даже группа) и требует дополнительной внимательности.

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

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

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

Я предполагаю, что это все равно будет работать с setgid root. Я просто попробовал это здесь, и он вообще не жаловался и, казалось, работал в беглых тестах. Тем не менее, я не могу думать о какой-либо реальной причине, чтобы изменить его на это – все, кажется, лучше с ним работать как группа nobody чем групповой root .

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

Точка создания ssh-agent setgid заключается в повышении безопасности, что делает процесс невозможным для отладки, так что даже процесс, выполняющийся как один и тот же пользователь, не может выгружать ключи из памяти.

ssh-agent не должен иметь дополнительных привилегий. В случае наличия уязвимости в ssh-agent , если она установлена ​​в какой-либо группе, это дает пользователю привилегии этой группы. Поэтому запуск ssh-agent setgid повышает риск безопасности … если только группа, в которой работает ssh-agent , фактически не имеет никаких прав, в частности, не имеет права на запись ни на какой файл.

Лучший способ запустить программу setgid без влияния на другие программы – использовать выделенную группу. Это то, что делает Debian, например: ssh-agent работает как группа ssh . Fedora использует группу nobody , которая является более дожительной, но все еще в порядке, поскольку ни один файл не должен принадлежать группе nobody . root группы будет плохой идеей, потому что у нее много файлов.

  • Пароль SSH запрашивается, когда в Tmux
  • Ключи работают из config, но не из ssh-add
  • Решение для закрытых ключей на удаленной машине?
  • Как я могу предупредить ssh-agent при использовании определенного ключа?
  • ssh-add добавить все закрытые ключи в .ssh каталог
  • ssh-agent не запускается на рабочем столе OpenSuSE
  • Как сохранить ключевую фразу ключевого слова SSH в gnome-keyring?
  • Автоматически разблокировать ключи на удаленном узле, доступ к которому осуществляется через SSH
  • Почему git сохраняет мою SSH-идентификацию в gnome, но не KDE?
  • OSX ssh-add -K не работает для iMac
  • Не удалось согласовать алгоритм ssh
  • Interesting Posts

    Bash однострочный, чтобы временно добавить путь для цепочечных команд без дополнительного вызова bash?

    Обратный код управления ищет терминалы

    Assp не запускается

    Как инициировать исходящий трафик SMTP через дополнительный интерфейс – Linux Sendmail

    Tmux отображение котировок / сообщений при запуске

    Семантический запрос локальных данных

    Zsh вложенная команда args $ SHLVL ошибка?

    Эффект `stty –file = <terminal> <flag>` является временным только для консолей в bash. Зачем?

    Host linux distro без GUI?

    Как сделать подсказку с каждым нажатием клавиши / символом?

    Скопируйте первые 2 строки из файла, а затем удалите строки

    Компиляция старых программ Solaris под Linux

    Файл сценария Bash ping для проверки доступности хоста

    Настройки прокси-сервера, не влияющие на Kali (debian 6)

    приложение требует, чтобы 32-битные библиотеки были установлены на моей 64-битной системе – возникли проблемы с их установкой

    Linux и Unix - лучшая ОС в мире.