Перейти к содержанию

Флаги SUID/SGUID в Linux

echo «$USER» сегодня разберем что такое – SUID/SGUID. Это специальные типы разрешений позволяют задавать расширенные права доступа на файлы или каталоги.
То есть простыми словами позволяют запустить обычному пользователю от имени владельца программы например владелец root, а запускать его будет dev. Чаще всего админы ставят SUID бит.

chmod +s /bin/prg

Таким образом можно поставить SUID бит на программу. Но чем это может быть опасно? Опасность состоит в том что в данном софте может быть опасный функционал вариантов довольно много запись, редактирование и т.д В общем плохая очень идея использовать SUID бит на право и на лево, лучше подумать сто раз, а нужно ли его использовать.

А теперь давай смоделируем ситуацию, что у нас есть сервер например на Ubuntu и мы хоти проверить есть ли у нас SUID бит, есть много программ для проверки например

LinEnum
PXEnum
SysEnum

Но я предлагаю в простой способ поиска с помощью команды find

find / -user root -perm -u=s --type f 2>/dev/null

Такой простой командой мы можем найти где установлен SUID бит где владельцем является пользователь root. Кстати вот пример того как SUID bit установленный на команде find может помочь злоумышленнику повысить привилегии до root

find . -exec /bin/sh -p \; 

Вот простой способ поднять свои привилегии до root, больше информации можно почерпнуть с ресурса GTFOBins. Убрать бит довольно легко достаточно ввести команду

chmod -s /bin/prg

Вывод простой лучше использовать редко или вообще не использовать. Так в блоге есть Безопасность сервера на Linux Чек лист

Опубликовано в рубрикеLINUXБезопасность

Оставьте первый коментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *