Как найти файлы с разрешениями SUID и SGID в Linux
В этом руководстве мы объясним дополнительные права доступа к файлам, которые в Linux обычно называют «специальными разрешениями», а также покажем вам, как найти файлы с SUID ( Setuid) и набор SGID (Setgid).
Что такое SUID и SGID?
SUID — это специальное разрешение для исполняемых файлов, которое позволяет другим пользователям запускать файл с действующими разрешениями владельца файла. Вместо обычного x
, который представляет разрешения на выполнение, вы увидите специальное разрешение s
(для обозначения SUID) для пользователя.
SGID — это специальное разрешение файла, которое также применяется к исполняемым файлам и позволяет другим пользователям наследовать эффективный GID владельца группы файлов. Аналогично, вместо обычного x
, который представляет разрешения на выполнение, вы увидите специальное разрешение s
(для обозначения SGID) для пользователя группы.
Рекомендуется к прочтению: Управление пользователями и группами, разрешениями файлов и атрибутами в Linux
Давайте посмотрим, как найти файлы, у которых установлены SUID и SGID, с помощью команды find.
Синтаксис следующий:
find directory -perm /permissions
Важно! Определенные каталоги (например, /etc, /bin, /sbin > и т. д.) или для доступа к файлам или для их отображения требуются права root. Если вы управляете своей системой как обычный пользователь, используйте команду sudo для получения привилегий root.
Как найти файлы с установленным SUID в Linux
В приведенном ниже примере команда найдет все файлы с установленным SUID в текущем каталоге с помощью параметра -perm (печатать файлы только с разрешениями, установленными на 4000).
find . -perm /4000
Вы можете использовать команду ls с опцией -l
(для длинного списка), чтобы просмотреть разрешения для перечисленных файлов, как показано на изображении выше.
Как найти файлы с установленным SGID в Linux
Чтобы найти файлы, у которых установлен SGID, введите следующую команду.
find . -perm /2000
Чтобы найти файлы, у которых установлены как SUID, так и SGID, выполните приведенную ниже команду.
find . -perm /6000
Вам также может быть интересно прочитать эти полезные руководства по правам доступа к файлам в Linux:
- Как установить атрибуты файлов и найти файлы в Linux
- Перевести разрешения rwx в восьмеричный формат в Linux
- Защитите файлы/каталоги с помощью ACL (списков контроля доступа) в Linux
- 5 команд «chattr», позволяющих сделать важные файлы НЕИЗМЕНИМЫМИ (неизменяемыми) в Linux
На этом всё! В этом руководстве мы показали вам, как найти файлы, у которых в Linux установлены SUID (Setuid) и SGID (Setgid). Если у вас есть какие-либо вопросы, воспользуйтесь формой обратной связи ниже, чтобы поделиться любыми вопросами или дополнительными мыслями по этой теме.