Linux文件系统的特殊权限之SUID

Linux系统下,常见的文件权限有rwx, 分别对应可读, 可写,可执行三种权限。 除了这三种权限之外, 还有哪些特殊权限呢?


Linux下的另外三种特殊权限, 分别是SUID, SGID, SBIT权限。 这里重点介绍SUID权限。 


suid:set uid 权限,任何一个用户运行一个带此权限的命令时,不是以此用户的身份启动,而是以文件自身的属主访问。 

Set UID

基本上SUID有这样的限制与功能:

SUID 权限仅对二进位程序(binary program)有效, 不能用在shell script上面;

运行者对於该程序需要具有 x 的可运行权限;

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

运行者将具有该程序拥有者 (owner) 的权限。


这里举个栗子。 Linux系统中默认的被赋予suid权限的文件是passwd。 

root@VMS001:~# ll /usr/bin/passwd 

-rwsr-xr-x 1 root root 42824 Sep 13  2012 /usr/bin/passwd*

 

passwd的拥有者是root用户。 假定有某个用户叫hackstoic, 他要修改自己的密码, 即执行passwd 命令, 这时候hackstoic就会被临时赋予root的权限来执行passwd命令文件, passwd就会去修改/etc/shadow文件下对应的记录,从而修改用户自己的密码。这就解释了为什么可以执行passwd命令的缘由。 


但是你可以会问, 既然我可以临时获得root的权限,我为什么不能使用passwd命令来修改别人的密码呢?

这是因为 passwd 在修改密码之前会查看当前用户是否匹配要修改的用户,否则就不会往下执行。

会显示“您不能查看或更改xxx的密码信息。”之类的提示。这个提示是passwd修改密码之前的判断,而不是在修改shadow的时候系统提示的权限不足。/** 转载请注明来自: 作者 hackstoic **/ 



文章首发于: www.hackstoic.com 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值