Linux系统特殊权限详解

这篇文章主要讲解了“Linux系统特殊权限详解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux系统特殊权限详解”吧!

创新互联于2013年创立,是专业互联网技术服务公司,拥有项目成都做网站、网站设计、外贸营销网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元罗山做网站,已为上家服务,为罗山各地企业和个人服务,联系电话:13518219792

目录

0x01 介绍

0x02 特殊权限详解

0x01 介绍

Linux一共有12位权限,除过之前说的rwxrwxrwx的9位权限,还有3位的特殊权限

suid位:setuid,用S表示,如果用户位对应的x位上有x时使用s表示,对应数字为4,与用户相关的权限

Linux系统特殊权限详解

sgid位:setgid,用S表示,如果用户组对应的x位上有x时使用s表示,对应数字为2,与用户组相关的权限

Linux系统特殊权限详解

sticky位,粘滞位,用T表示,如果其他用户组对应的x位上有x时使用t表示,对应数字为1,与其他用户组相关的权限

Linux系统特殊权限详解

粘滞位有一个特殊的目录就是tmp目录

Linux系统特殊权限详解

0x02 特殊权限详解

suid

suid是让普通用户可以以root或其他的用户角色运行只有root或其他账号才能运行的命令或程序,或程序命令对应本来没有权限操作的文件等,suid为某一个命令设置特殊权限,使用者为所有人。

这里用一个例子来说明这个问题

先添加一个新的用户,并为其设置密码

Linux系统特殊权限详解

我们再明确一下更改密码的话shadow文件是否会更改

Linux系统特殊权限详解

说明shadow文件确实被更改了,那shadow的权限又是怎样的

Linux系统特殊权限详解

会发现只有root用户拥有写权限,那是不是意味着其他用户不能更改密码

Linux系统特殊权限详解

事实并不是这样的,其他用户也是可以修改密码的,这就是因为这个文件的特殊权限的原因,可以发现它是拥有suid权限的,所以任何用户执行这个命令都会拥有和这个命令所对应的权限,用这个例子来说就是任何用户执行这个命令就拥有了root的权限

Linux系统特殊权限详解

我们再用一个删除操作来看一下

我们来看一下默认情况下的删除操作

Linux系统特殊权限详解

如果我们给删除命令增加suid权限又会发生什么情况

Linux系统特殊权限详解

可以发现添加了suid权限,使用低权限用户就可以删除root用户才能操作的文件

到这里基本就可以理解清楚suid的用法了,但是还有几点需要注意一下的

suid仅对二进制命令程序有效,不能作用在shell等脚本文件上,而且suid权限仅在命令执行过程中有效

我们可以搜索一下哪些文件时有s权限的

find /bin -type f -perm 4755 -exec ls -l {} \;

Linux系统特殊权限详解

等后面在使用suid进行提权的时候我们还会再次提到这个东西

如果对这个find命令不太懂的可以移步《Linux文件查找命令详解》

sgid

sgid是与用户组相关的,sgid与suid不同的是,sgid既可以针对文件也可以针对目录

对于文件来说,sgid仅对二进制命令程序有效,执行命令的用户可以获得该程序执行期间所属组的权限,suid是拥有这个用户的权限

对于目录来说(继承目录所属的组),Linux默认情况下用户创建文件,默认用户和组都是它自己,sgid可以让用户在此目录下创建的文件和目录,具有与此目录相同的用户组设置

这里就不再举例子来说明了,跟suid所验证的方式是一样的

粘滞位

粘滞位就是你可以往里面放内容但是却不能对这个目录进行操作

Linux系统特殊权限详解

感谢各位的阅读,以上就是“Linux系统特殊权限详解”的内容了,经过本文的学习后,相信大家对Linux系统特殊权限详解这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


当前题目:Linux系统特殊权限详解
URL链接:http://scyanting.com/article/gdieci.html