SUID~这账怎么算?

Posted Linux无限探索

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SUID~这账怎么算?相关的知识,希望对你有一定的参考价值。

我们都知道linux里面一切都是文件。文件拥有普通权限rwx,特殊权限suid,sgid,sbit等。本文分享一下suid几个的小实验,通过实验我们可以更加深入的理解suid权限,希望对于我们理解有帮助。

首先,咱们都知道linux用户(不论是超级用户还是普通用户)都可以更改自己的密码。密码这个文件是在/etc/shadow文件里面。我们查看这个文件的权限就可以发现:这个文件权限全为空,见下图:

换一种说法:普通用户对/etc/shadow文件没有任何权限的。那我们就有有疑问了,普通用户都可以更改自己的密码,但是现在看来又没有任何权限。那我们就要想到文件的特殊权限SUID了。

普通用户更改密码是使用passwd命令完成的,我们可以通过whereis passwd查看passwd的绝对路径。见下图:

仔细看就会发现/usr/bin/passwd权限是:-rwsr-xr-x. root root 。其中s代表的意思就是suid权限。suid可以让执行者临时拥有属主的权限。这样我们就不难理解了,普通用户使用psaawd命令更改密码,由于passwd拥有suid权限,所以linux系统临时把passwd命令的所有者(root)身份赋给了普通用户,从而普通用户就拥有了root身份,所以就可以使用passwd来修改密码(/etc/shadow文件)。

那么普通用户可不可以读取/etc/shadow文件呢?我们看到cat文件没有suid权限。见下图:

那么如果我们给cat命令加上suid权限,是不是就可以看/etc/shadow文件了呢?

果然,我们看到了加上suid权限的cat成功看到了/etc/shadow文件。

现在,我相信我们对于suid权限有了进一步的认识。但是出于安全考虑,我们还是不要让普通用户拥有这么大的权利。以免发生不可预知的危险。

本文原创地址: https://www.linuxprobe.com/suid.html作者:王毅,审核员:逄增宝

本文原创地址:https://www.linuxprobe.com/linux-suid.html

SUID SGID

SUID 

  1.只作用在可执行文件上,普通用户需要对该文件有x权限,

  2.在执行该文件时,用户身份切换为文件owner;

  3.执行完毕,切换回普通用户。

一、查找具有SUID权限的系统文件(-4000 表示至少有SUID权限)

[[email protected] ~]$ sudo find / -perm -4000  2>/dev/null 
/usr/bin/chfn
/usr/bin/chage
/usr/bin/gpasswd
/usr/bin/newgrp
/usr/bin/chsh
/usr/bin/sudo
/usr/bin/mount
/usr/bin/su
/usr/bin/umount
/usr/bin/crontab
/usr/bin/pkexec
/usr/bin/passwd
/usr/sbin/pam_timestamp_check
/usr/sbin/unix_chkpwd
/usr/sbin/usernetctl
/usr/lib/polkit-1/polkit-agent-helper-1
/usr/lib64/dbus-1/dbus-daemon-launch-helper

二、比较系统SUID文件变化

1.将系统现有的SUID文件存入 /root/suid.list

2.创建比较脚本

#!/bin/bash

find / -perm -4000 -o -perm -2000 > /tmp/setuid.check 2>/dev/null

cat /dev/null >/root/suid_log_$(date +%F)

for i in $( cat /tmp/setuid.check )

do
        grep $i /root/suid.list > /dev/null
        if [ $? -ne 0 ] ;
                then
                echo "$i don‘t exist in listfile!" | tee -a  /root/suid_log_$(date +%F)
        fi

done

 

以上是关于SUID~这账怎么算?的主要内容,如果未能解决你的问题,请参考以下文章

SUID SGID

SUID,SGID和SBIT

特殊权限 - SUID GUID STICKYBIT

特殊权限SUID,SGID,Sticky

SUID提权

解读SUID权限位