Переменная среды PATH
Переменная среды PATH является важной частью системы защиты. Она задает список каталогов, в которых выполняется поиск команд.
Значение PATH по умолчанию для всей системы содержится в файле /etc/profile, а значения PATH для пользователей хранятся в их файлах $HOME/.profile. Значение PATH в файле .profile либо переопределяет системное значение PATH, либо добавляет к нему новые записи.
Несанкционированное изменение PATH может дать возможность одним пользователям системы "имитировать" других пользователей (в том числе и пользователей root). Программы имитации, известные также как Троянские кони, подменяют собой системные команды и собирают предназначенную для этих команд информацию, например, пароли пользователей.
Например, допустим, что пользователь изменил переменную среды PATH таким образом, что при поиске команд система сначала просматривает каталог /tmp. Затем пользователь поместил в каталог /tmp программу с именем su, которая запрашивает пароль пользователя root точно так же, как и настоящая команда su. Затем программа /tmp/su сообщает по электронной почте пароль пользователя root злоумышленнику, вызывает настоящую команду su и завершает работу. В этом случае пользователь root, вызвавший команду su, раскроет свой пароль, даже не узнав об этом.
Для защиты переменной среды PATH от несанкционированного изменения соблюдайте следующие правила:
- При малейшем сомнении указывайте полные имена файлов. В этом случае переменная PATH просматриваться не будет.
- Никогда не помещайте текущий каталог (. ) в переменную PATH пользователя root. Не указывайте текущий каталог в файле /etc/profile.
- Для пользователя root должна быть задана собственная переменная PATH в его личном файле .profile. Обычно в файле /etc/profile указывается стандартный набор путей для всех пользователей, в то время как пользователю root может требоваться собственный список каталогов поиска.
- Запретите другим пользователям изменять файлы .profile без консультации с системным администратором. Таким образом вы обезопасите себя от непреднамеренного создания бреши в системе защиты. Права доступа к файлу .profile должны быть равны 740.
- Системным администраторам не следует получать права пользователя root с помощью команды su в сеансе другого пользователя, поскольку в этом сеансе используется значение PATH из файла .profile этого пользователя. Пользователи могут сами
настраивать собственные файлы .profile. Системные
администраторы должны входить в систему пользователя под именем root или, что
еще лучше, под собственным именем, а затем вызывать следующую команду:
/usr/bin/su - rootЭто позволит гарантировать, что в сеансе применяется среда root. При работе в качестве root в сеансе других пользователей всегда указывайте полные имена команд и файлов.
- Запретите изменять переменную среды, задающую приглашение на ввод команды (IFS), в файле/etc/profile file. С помощью переменной среды IFS в файле .profile можно изменить значение PATH.