如何在 Linux 中查找具有 SUID 和 SGID 权限的文件
在本教程中,我们将解释辅助文件权限,在 Linux 中通常称为“特殊权限”,并且我们还将向您展示如何查找具有 SUID 的文件( Setuid) 和 SGID (Setgid) 设置。
SUID 和 SGID 是什么?
SUID是可执行文件的特殊文件权限,它使其他用户能够以文件所有者的有效权限运行该文件。您将看到用户的特殊权限 s
(表示 SUID),而不是代表执行权限的普通 x
。
SGID 是一种特殊的文件权限,也适用于可执行文件,使其他用户能够继承文件组所有者的有效GID。同样,您将看到组用户的s
(表示SGID)特殊权限,而不是通常的代表执行权限的x
。
建议阅读: 在 Linux 中管理用户和组、文件权限和属性
让我们看看如何使用 find 命令查找设置了 SUID 和 SGID 的文件。
语法如下:
find directory -perm /permissions
重要:某些目录(例如/etc、/bin、/sbin > 等)或文件需要 root 权限才能访问或列出,如果您以普通用户身份管理系统,请使用 sudo 命令来获取 root 权限。
如何在 Linux 中查找设置了 SUID 的文件
下面的示例命令将使用 -perm(仅打印权限设置为 4000 的文件)选项查找当前目录中设置了 SUID 的所有文件。
find . -perm /4000
您可以使用带有 -l
选项(用于长列表)的 ls 命令来查看列出的文件的权限,如上图所示。
如何在 Linux 中查找设置了 SGID 的文件
要查找设置了 SGID 的文件,请键入以下命令。
find . -perm /2000
要查找同时设置了 SUID 和 SGID 的文件,请运行以下命令。
find . -perm /6000
您可能还想阅读以下有关 Linux 中文件权限的有用指南:
- 如何在Linux中设置文件属性和查找文件
- 在 Linux 中将 rwx 权限转换为八进制格式
- 在 Linux 中使用 ACL(访问控制列表)保护文件/目录的安全
- 在 Linux 中使重要文件不可变(不可更改)的 5 个“chattr”命令
现在就是这样!在本指南中,我们向您展示了如何查找在 Linux 中设置了 SUID (Setuid) 和 SGID (Setgid) 的文件。如果您有任何疑问,请使用下面的反馈表分享有关此主题的任何疑问或其他想法。