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