Особенностью использования root является то, что его иден-
тификатор равен нулю. Поскольку в файле /etc/passwd может быть
несколько элементов, для которых установлен этот идентификатор,
существует и несколько способов входа в систему в качестве
суперпользователя.
Один из способов, который хакеры, получив доступ к интер-
претатору команд суперпользователя, широко применяют для от-
крытия «черного хода», заключается в редактировании файла /etc/
passwd посредством ввода в него новых регистрационных имен с
идентификатором пользователя, равным нулю. Поскольку такие
программы, как who и w, работают с регистрационным именем,
записанным в файле /etc/utmp, а не с идентификатором владельца
регистрационного интерпретатора, они не в состоянии разоблачить
хакера, который выглядит как рядовой пользователь, а на самом
деле зарегистрирован в системе в качестве суперпользователя.
Спасение от такого вероломства — применение интерпретатора
Perl версии 5 и выше, подобно тому, как он использовался для
поиска учетных записей без паролей:
Этот сценарий отображает любые элементы файла passwd, в
которых идентификатор пользователя не указан или равен нулю.
Сценарий можно адаптировать для поиска в файле элементов с
подозрительными идентификаторами групп или идентификато-
рами пользователей, совпадающими с идентификаторами руко-
водящих сотрудников организации. Пристального внимания зас-
луживают, кроме того, элементы файла passwd, в которых нет
имени пользователя либо вместо имени стоят знаки препинания.
Эти элементы могут показаться не имеющими смысла, но очень
часто они позволяют свободно входить в систему.
Программы, которые запускаются с измененным идентифика-
тором пользователя, особенно те, для которых установлен иденти-
фикатор пользователя root, являются источником проблем, свя-
занных с безопасностью системы. Теоретически команды с уста-
новленным битом SUID (Set User ID — смена идентификатора
пользователя), поставляемые вместе с операционной системой,
являются безопасными. Тем не менее огрехи в защите обнаружива-
лись в прошлом и, несомненно, будут обнаруживаться в будущем.
Самый надежный способ уменьшения количества проблем,
вызванных сменой идентификатора, — это сведение к минимуму
числа программ с установленным битом SUID.
Сценарии интерпретатора команд автоматически ставят систе-
му под угрозу. Они допускают множество способов настройки,
поэтому их легко обмануть. Интерпретатор, запускаемый для вы-
полнения сценария, не всегда читает пользовательские файлы
конфигурации, но есть и другие способы воздействия на него:
175