Setuid权限的介绍和查找-让任意账号以root身份执行命令

简介:

linux的文件系统权限除了常见的读、写、执行(r、w、x)外还有s、t、i、a权限:

本文介绍一下这四种特殊权限中的S键位有什么特点

s:文件属主和组设置SUID和GUID,文件在被设置了s权限后将以root身份执行。

在设置s权限时文件属主、属组必须先设置相应的x权限,否 则s权限并不能正真生效(当我们ls -l时看到rwS,大写S说明s权限未生效)。比如Linux修改密码的passwd便是个设置了SUID的程序,普通用户无读写/etc/shadow文件 的权限确可以修改自己的密码。

我们来进行测试,使用root账号创建一个700的文件,这样除了root别人对这个文件都没有任何权限,包括读取。

1 [root@test test]# echo test>test.txt
2 [root@test test]# chmod 700 test.txt
3 [root@test test]# ls -l test.txt
4 -rwx------ 1 root root 5 Oct 27 13:37 test.txt

现在却换到非root用户下测试,无法读取这个文件:

1 [ntop@test test]$ cat test.txt
2 cat: test.txt: Permission denied

然后我们给cat添加SETUID权限测试

1 [root@test test]# chmod a+s /bin/cat
2 [root@test test]# su ntop
3 [ntop@test test]$ cat test.txt
4 test
5 [ntop@test test]$

已经可以访问这个只有root用户才有权限访问的文件了。

所以这是一个非常危险的权限,如果rm被赋予了s,那么就可以删除任意root可以删除的文件了。所以应该谨慎给程序赋予这个权限。

可以通过 find / -perm -4000查看系统中所有具有setuid权限文件,看是否有被别人而已添加了超级权限的文件影响了系统的安全~

目录
相关文章
|
6月前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
188 1
|
5月前
|
Linux 数据处理 数据库
深入解析Linux命令id:理解用户身份与权限
`id`命令在Linux中用于显示用户身份(UID, GID和附加组)。它查看系统用户数据库获取信息。参数如`-u`显示UID,`-g`显示GID,`-G`显示附加组,结合`-n`显示名称而非ID。用于确认命令执行者身份,确保权限正确。在脚本中使用时注意权限管理,遵循最小权限原则。
|
4月前
|
数据安全/隐私保护
chown命令,chown普通用户无法修改所属其他用户,只有root可以修改用户,su -
chown命令,chown普通用户无法修改所属其他用户,只有root可以修改用户,su -
|
6月前
|
数据安全/隐私保护
kali下设置root权限(包含很多技巧)
kali下设置root权限(包含很多技巧)
|
6月前
|
Linux Shell
如何把root账号的文件修改为tank账号
在Linux中,当前用户创建的目录默认属主为root且只读。从优盘拷贝的文件及文件夹具有特定权限。要将root账号的文件所有权改为tank用户,可使用`chown`命令。例如,`sudo chown tank:tank /path/to/file_or_directory`将所有者和组均改为tank,而`sudo chown tank /path/to/file_or_directory`仅改所有者。若需递归更改目录下所有文件,使用`sudo chown -R tank:tank /path/to/directory/*`。操作前确保有足够权限并谨慎行事,以免影响系统稳定性。
36 1
|
6月前
|
存储 安全 Shell
【Shell 命令集合 系统管理 】Linux 显示当前用户的身份信息 id命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前用户的身份信息 id命令 使用指南
251 0
|
Linux Go
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组、文件权限类、rwx 作用文件和目录的不同解释、chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权第一种方式变更权限 chmod [{ugoa}{±=}{rwx}] 文件或目录。经验技巧 u:所有者 g:所有组 o:其他人 a:所有人(
291 1
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组、文件权限类、rwx 作用文件和目录的不同解释、chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限
|
Linux 数据库
linux中的find查找文件或者目录、locate快速定位文件路径linux中的chgrp改变所属组、修改bigbig.txt文件所属主用户拥有读写权限,并使其他用户具有写执行权限
linux中的find查找文件或者目录、locate快速定位文件路径linux中的chgrp改变所属组、修改bigbig.txt文件所属主用户拥有读写权限,并使其他用户具有写执行权限
linux中的find查找文件或者目录、locate快速定位文件路径linux中的chgrp改变所属组、修改bigbig.txt文件所属主用户拥有读写权限,并使其他用户具有写执行权限
|
Linux Go
linux中的chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限linux中的文件权限类、rwx 作用文件和目录的不同解释
linux中的chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限linux中的文件权限类、rwx 作用文件和目录的不同解释
linux中的chmod改变权限、修改bigbig.txt文件使其所属主用户只有读权限、修改bigbig.txt文件使其所属组用户具有写权限linux中的文件权限类、rwx 作用文件和目录的不同解释
|
存储 Linux Shell
多个 UID 为 0 的用户如何实现 root 用户的免密
多个 UID 为 0 的用户如何实现 root 用户的免密
423 0