Назад | Перейти на главную страницу

Риски безопасности PermitUserEnvironment в ssh

Я прочитал довольно много сообщений об использовании PermitUserEnvironment и файл ~/.ssh/environment чтобы передать переменные env в оболочку ssh. Официальный sshd документы и несколько других ресурсов ссылаются на некоторые риски безопасности, связанные с этим.

Включение обработки среды может позволить пользователям обходить ограничения доступа в некоторых конфигурациях с помощью таких механизмов, как LD_PRELOAD.

Каковы вероятные проблемы безопасности при активации PermitUserEnvironment? Я искал данные о подключении к БД в этих переменных среды, это целесообразно?

Прежде всего, если вы не пытаетесь сделать что-то особенное с ограничениями доступа пользователей, то есть если вы предлагаете интерактивный доступ к оболочке, вероятно, нет дополнительный риски безопасности при разрешении использования .ssh/environment file, поскольку все, что пользователь мог сделать с этим файлом, он также мог делать интерактивно в своей оболочке.

Включение обработки среды может позволить пользователям обходить ограничения доступа в некоторых конфигурациях с помощью таких механизмов, как LD_PRELOAD.

Если вы используете принудительные команды SSH для ограничения того, что люди могут делать через ssh (например, если вы ограничиваете людей только использованием sftp или scp), позволяя кому-либо устанавливать переменные среды, такие как LD_PRELOAD (или, возможно, даже PATH) позволит им перехватить ваши ограничения, заменив базовые вызовы библиотеки своим собственным кодом. С другой стороны, если вы создаете .ssh/environment от имени ваших пользователей и иначе они не могут управлять этим, ваши риски относительно невелики.

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