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权限文件,看是否有被别人而已添加了超级权限的文件影响了系统的安全~

目录
相关文章
|
5月前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
154 1
|
4月前
|
Linux 数据处理 数据库
深入解析Linux命令id:理解用户身份与权限
`id`命令在Linux中用于显示用户身份(UID, GID和附加组)。它查看系统用户数据库获取信息。参数如`-u`显示UID,`-g`显示GID,`-G`显示附加组,结合`-n`显示名称而非ID。用于确认命令执行者身份,确保权限正确。在脚本中使用时注意权限管理,遵循最小权限原则。
|
3月前
|
数据安全/隐私保护
chown命令,chown普通用户无法修改所属其他用户,只有root可以修改用户,su -
chown命令,chown普通用户无法修改所属其他用户,只有root可以修改用户,su -
|
5月前
|
数据安全/隐私保护
kali下设置root权限(包含很多技巧)
kali下设置root权限(包含很多技巧)
|
Ubuntu Linux Shell
【Linux问题合集003】解决无法创建新用户丨在home目录下看不见用户文件夹丨创建的用户设置密码时报错,当前用户不在 sudoers 列表中丨Ubunt不显示用户名,只显示“$“符号问题
【Linux问题合集003】解决无法创建新用户丨在home目录下看不见用户文件夹丨创建的用户设置密码时报错,当前用户不在 sudoers 列表中丨Ubunt不显示用户名,只显示“$“符号问题
4014 1
|
Linux 编译器 数据安全/隐私保护
【Linux】下的权限管理/关于root用户和普通用户的区别/不同用户的访问权限有什么不同?/到底什么是粘滞位?
1.Linux下用户的分类 Linux下有两种用户:超级用户(root)、普通用户。 超级用户:可以再linux系统下做任何事情,不受限制 普通用户:在linux下做有限的事情。 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
|
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:所有人(
268 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中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组llinux中的userdel 删除用户、who 查看登录用户信息、sudo 设置普通用户具有 root 权限
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组llinux中的userdel 删除用户、who 查看登录用户信息、sudo 设置普通用户具有 root 权限
linux中的usermod 修改用户、groupadd 新增组、groupdel 删除组、groupmod 修改组、cat /etc/group 查看创建了哪些组llinux中的userdel 删除用户、who 查看登录用户信息、sudo 设置普通用户具有 root 权限