Программы с установленным битом смены идентификатора пользователя
Категория: Безопасность | Автор: admin | 11-06-2010, 18:05 | Просмотров: 3045

Программы, которые запускаются с измененным идентификатором пользователя, особенно те, для которых установлен идентификатор пользователя root, являются источником проблем, связанных с безопасностью системы. Теоретически команды с установленным битом SUID (Set User ID — смена идентификатора пользователя), поставляемые вместе с операционной системой, являются безопасными. Тем не менее огрехи в защите обнаруживались в прошлом и, несомненно, будут обнаруживаться в будущем.

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

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

Не существуют правила, гласящего, что программы с установленным битом SUID должны запускаться от имени суперпользователя. Если нужно всего лишь ограничить доступ к файлу или базе данных, достаточно добавить в файл /etc/passwd псевдопользователя, единственное назначение которого будет заключаться во владении требуемыми ресурсами. Следуйте обычным соглашениям о добавлении псевдопользователей: используйте низкое значение UID, поставьте в поле пароля звездочку и сделайте начальным каталогом псевдопользователя каталог /dev/null.

Большинство систем позволяет отключать выполнение программ с установленными битами SUID и SGID (Set Group ID — смена идентификатора группы) в отдельных файловых системах с помощью опции -о nosuid команды mount. Чаще всего это файловые системы, содержащие начальные каталоги пользователей или смонтированные из ненадежных доменов.

Полезно периодически сканировать диски на предмет выявления новых программ с установленным битом SUID. Хакер, взломавший систему, без особых усилий может создать собственный командный SUID-интерпретатор и утилиту, которая облегчит ему последующий вход в систему. Некоторые из программ, описанных в параграфе 21.7, позволяют обнаруживать такие файлы, но с этой задачей справится и простая команда find:

 

/usr/bin/find / -user root -perm -4000 -print |

/bin/mail -s "Setuid root files" netadmin

 

В данном случае пользователю netadmin по электронной почте направляется список всех файлов, принадлежащих пользователю root и имеющих установленный бит SUID.



 (голосов: 0)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page