首页 > 其他 > 详细

特殊权限之set uid

时间:2017-06-12 22:08:11      阅读:355      评论:0      收藏:0      [点我收藏+]

特殊权限之suid

suid的限制与功能:

  • suid权限仅对二进制程序有效(binary program);

  • 执行者对于该程序需要具有x的可执行权限;

  • 本权限仅在执行该程序的过程中有效(run-time);

  • 执行者将具有该程序拥有者的权限。

前面介绍权限的时候,一直是用3位数,其实在最前面还有一位数。这就是要讲到的 set uid、set gid以及sticky bit。

技术分享

setuid和setgid的解说

setuid 和setgid是让普通用户可以以root用户的角色运行只有root帐号才能运行的程序或命令。

http://wangxinglong.blog.51cto.com/679714/340161(详细信息)

Sticky Bit

SBIT只针对目录有效。他对目录的作用是:

当用户对此目录具有w,x权限,在该目录下建立文件或目录时,仅有自己与root才有权利删除该文件。

该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限。

比如passwd这个命令就具有该权限。当普通用户执行passwd命令时,可以临时获得root权限,从而可以更改密码。

技术分享

passwd显示的是rws并非传统的rwx.用数字表示为4755。

4 的计算方法:当有特殊权限时,第一位数字可以是0,1(--t),2(-s-),3(-st),4(s--),5(s-t),6(ss-),7(sst).

再回头来看passwd,他是s--所以是4。

例:

自定义一个set uid的权限。

技术分享

说明:su - user2这个命令可以让root用户临时切换到user2用户下,以user2的身份去执行命令。

普通用户是没有权限查看/root/目录内容的,所以报错了。

用exit退出user2,然后给/bin/ls命令加一个set uid权限,再次切换到user2下,再执行ls/root/就可以查看了。

这里我们使用了chmod u+s /bin/ls来给 ls 增加一个set uid权限。有时候可能会看到-rwSr-xr-x这样的权限,s(有执行权限)变成了S(没有执行权限),这是由于所有者没有执行权限。

技术分享


本文出自 “12350027” 博客,谢绝转载!

特殊权限之set uid

原文:http://12360027.blog.51cto.com/12350027/1934504

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!