linux学习之SUID

原创 2015年11月19日 14:21:34

文件特殊权限SUID?

1. 问题引导

/etc/shadow文件所有账户的密码,且/etc/shadow的文件属性为:

[root@localhost ~]# ll /etc/shadow
-r-------- 1 root root 1464 Nov 11 17:41 /etc/shadow
[root@localhost ~]# 

可以该文件仅能由root进行读取并且由root进行强制写入,那么普通用户(在我的系统中有一个普通用户test1)是否可以修改自己的密码呢?答案是肯定的。我们可以输入passwd来修改自己的密码,在这里就有个问题:既然/etc/shadow文件无法被test1用户修改,那test1是如何修改自己的密码呢?

普通用户修改自己的密码是通过passwd这个命令来修改,大家来看下/user/bin/passwd文件的权限

[root@localhost ~]# ll /usr/bin/passwd
-rwsr-xr-x 1 root root 22960 Jul 17  2006 /usr/bin/passwd
[root@localhost 

所以,test1之所以能修改自己的密码,是因为passwd的权限中的那个s导致的。

2. Set UIDSUID)权限

s出现在文件拥有者的x属性上,表明文件具有SUID权限。那么SUID权限对于一个文件到底意味着什么呢?

该权限仅对二进制程序有效果

执行者必须拥有该文件的执行(x)权限

该权限仅在执行程序的过程中有效

执行者在执行过程中具有该程序拥有者的权限

从上面的问题引导来解释下:

对于passwd执行程序来说,test1具有x权限;

test1执行passwd程序时,就拥有了passwd拥有者(也就是root)的权限

进行更改代码时,由于此时具有root的权限,当然可以更改shadow这个文件啦。


 

 

 

 

 

 

 

 

 

 

深入Linux文件权限 SUID/SGID/SBIT

Linux的文件权限除了rwx之外,还有s和t这两个特殊的。
  • imkelt
  • imkelt
  • 2016年11月06日 14:35
  • 1643

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

Linux系统下,常见的文件权限有rwx, 分别对应可读, 可写,可执行三种权限。 除了这三种权限之外, 还有哪些特殊权限呢? Linux下的另外三种特殊权限, 分别是SUID, SGID, SB...
  • hackstoic
  • hackstoic
  • 2015年11月21日 20:32
  • 896

Linux学习---文件特殊权限(SUID)

SetUID的功能 1.    只有可执行的二进制程序或者shell程序才能设定SUID权限 2.    命令执行者要对该程序(命令)拥有x(执行)权限 3.    命令执行者在执行该程序时获得该程序...
  • cin_ie
  • cin_ie
  • 2016年08月26日 12:46
  • 1269

linux文件的访问权限全解析,包括SUID,GUID

linux文件的访问权限和文件模式SUID含义:文件的该位被设 置为1,在该文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权,如果所有者是root的话,那...
  • zengqiang1
  • zengqiang1
  • 2016年11月03日 13:54
  • 1603

linux中SUID,SGID和SBIT的奇妙用途

linux的SUID,SGID和SBIT的相关介绍和讨论
  • xiaocainiaoshangxiao
  • xiaocainiaoshangxiao
  • 2013年12月17日 16:56
  • 18116

linux下:SUID、SGID详解

文章转载至:http://tech.ccidnet.com/art/2583/20071030/1258885_1.html 如果你对SUID、SGID仍有迷惑可以好好参考一下! Copyright...
  • u011774239
  • u011774239
  • 2016年04月29日 11:59
  • 503

Linux文件特殊权限:SUID、SGID和SBIT

1.SUID 当s这个标志出现在文件所有者的x权限上时,例如文件权限状态“-rwsr-xr-x”,此时就称为 Set UID,简称为SUID的特殊权限。SUID有这样的限制和功能: (1)SUID权限...
  • sinat_30071459
  • sinat_30071459
  • 2016年04月22日 09:50
  • 2667

Linux文件的特殊权限位SUID、SGID作用及编程设置/读取

起 最近在搞android里面的su(不是为了做root提权,那是别的部门干的事)。学习了一些新东西,挺有意思。 以下文章假定你的android设备已经被root了,有获取root权限的能力,或者...
  • sun2043430
  • sun2043430
  • 2014年03月23日 11:13
  • 2681

对linux中SUID标志位的理解

我们执行shell命令实际上是对应于某个二进制的可执行文件或者可执行的脚本,通常以提交这个命令的用户的权限运行,但是有的命令执行过程要往某个文件中写入一些东西。比如某个不具有root权限的用户想要修改...
  • redhat666
  • redhat666
  • 2008年05月18日 23:21
  • 262

Linux中的UID,EUID,SUID

在做Android系统源码的时候,里面的权限管理,经常涉及到这些,可以说是Android权限机制的基础,但是理解的不透彻。先看看Linux中这几个概念。   下面分别用RUID, EUID,SUID...
  • cheng20150809
  • cheng20150809
  • 2015年09月14日 23:42
  • 1462
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux学习之SUID
举报原因:
原因补充:

(最多只允许输入30个字)