Иллюстрированный самоучитель по Secure Web

         

Установка для файлов бита SUID



Файлы SUID

Установка для файлов бита SUID или SGID — смертельно опасна. Этим все сказано! Ни один другой файл системы UNIX не подвержен столь частым попыткам злоумышленников всех мастей получить несанкционированный доступ, как файл с SUID суперпользователя. Практически во всех описанных выше случаях взлома были задействованы те или иные процессы, выполняющиеся на уровне привилегий суперпользователя, — большинство из них уже имели установленный бит SUID. Переполнение буфера, гонки на выживание и взлом с использованием символьных ссылок никогда не принесут ожидаемого эффекта, если для программы не установлен флаг SUID. К сожалению, большинство разработчиков относятся к биту SUID так, как будто это вышедшая из моды вещь. Пользователи, не заботящиеся о безопасности, также заражаются таким образом мышления. Многие из них слишком ленивы для того, чтобы предпринимать какие бы то ни было дополнительные меры при выполнении работы и склонны полагать, что все программы должны выполняться с уровнем привилегий суперпользователя.

Для того чтобы воспользоваться столь печальным отношением к безопасности, взломщик, получивший доступ к системе на уровне пользователя, должен сначала попытаться идентифицировать файлы с установленными битами SU1D и (или) GUID. Для этого обычно используется утилита find, позволяющая получить список файлов, с помощью которых можно попытаться получить доступ на уровне суперпользователя. Давайте рассмотрим пример поиска таких файлов в относительно простой системе Linux (для наглядности полученные результаты были сокращены).

[tsunami]# find / -type f -perm -04000 -Is

-rwsr-xr-x i root root 30520 May 5 1998 /usr/bin/at

-rwsr-xr-x 1 root root 29928 Aug 21 1998 /usr/bin/chage

-rwsr-xr-x 1 root root 29240 Aug 21 1998 /usr/bin/gpasswd

-rwsr-xr-x 1 root root 770132 Oct 11 1998 /usr/bin/dos

-r-sr-sr-x 1 root root 13876 Oct 2 1998 /usr/bin/lpq

-r-sr-sr-x 1 root root 15068 Oct 2 1998 /usr/bin/lpr

-r-sr-sr-x 1 root root 14732 Oct 2 1998 /usr/bin/lprm

-rwsr-xr-x 1 root root 42156 Oct 2 1998 /usr/bin/nwsfind

Содержание  Назад  Вперед