linux用户权限
在Linux系统中,根据权限的不同,大致可以将用户分为三种:超级用户、普通用户和虚拟用户。
序号1为超级用户,分析出他为超级用户并不仅仅是因为他的用户名为root,还有他的UID(用户ID)和GID(组ID)为0,这是超级用户很重要的属性,且他的HOME目录为/root。
序号2为虚拟用户,虚拟用户的UID的区间为1~499,序号2的UID处于该区间,且他对应的shell为/usr/sbin/nologin,这代表该用户无法登录系统,而无法登录的大部分为虚拟用户。虚拟用户一般是由各种服务创建的,比如www-data就是Apache服务创建的虚拟用户,专门用来运行Apache服务。
序号3为普通用户,普通用户的UID区间为500~60 000,序号3的UID处于该区间,且他对应的shell为/bin/bash,代表他可以登录,序号3的用户目录在home目录下。
linux文件权限
ls -al命令
特殊权限
SUID(只针对可执行文件)
从上面的代码中可以看到,/usr/bin/passwd的文件拥有者的权限并非rwx,而是rws,这里的s代表SUID。该属性只对具有可执行权限的文件有效,对目录无效。可以看到/usr/bin/passwd是root用户创建的。
在执行passwd命令后使用ps -ef查看该进程的权限信息,发现passwd进程的UID是root,但为什么普通用户也可以执行passwd命令呢
其实是suid的原因。因为/usr/bin/passwd具有rws权限,所以当任何普通用户执行该文件时,会短暂的拥有root权限
SGID
从上面的代码中可以看到,当前组所拥有的权限是rws,s指代SGID,SGID在文件和目录下都可以应用。SGID和SUID类似,不同的点是SUID作用于用户,而SGID作用于用户组。如果一个用户对一个具有SGID属性的目录添加文件,那么添加的文件所属组将会是带有SGID属性的目录的创建所属组
STICKY
从上面的代码中可以看到,文件权限为rwt,其中t指代Sticky位,也叫防删除位。通常理解是,一个文件能否被删除主要取决于w,也就是对当前目录是否具有写入权限。如果没有写入权限,那么该文件无法删除,当然也无法在当前目录下添加新文件。如果希望指定允许添加文件但不能删除文件的权限,那么就可以设置Sticky位。用户对设置Sticky位的目录具有写入权限,可以在该目录下新增文件,但是无法删除该目录下的文件。
提权--信息收集
uname -r(内核)
cat /etc/issue(发行版本)
cat /etc/*release(系统版本)
cut -d: -f1 /etc/passwd(查看所有用户,包括虚拟用户)