本文主要是介绍SUID提权,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、SUID权限简介:
SUID权限只可以赋予一个可执行文件(不然没有任何意义),任何人执行该赋予SUID权限的文件,文件执行过程中,他将获得该文件所属者相同的权限(即其有效UID变成了文件所属者的UID),一旦结束执行,其权限被回收。
二、如何赋予文件SUID权限:
chmod +x 文件名
三、SUID提权步骤:
- 寻找所有携带SUID权限的文件
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 {} \;
- 使用具有SUID权限的命令结合exec进行提权操作
find /tmp/a.txt -exec whoami \;
find: 假设find命令有SUID权限
/tmp/a.txt:随便找个文件寻找即可,这个不重要
-exec:该命令类似于管道符 |,将前者的输入作为后者的输入,但是我们在此例中并没有用到,我们用到了它的另一个功能:在不切换pid的情况下,执行其他命令,这个有兴趣可以再去具体了解了解
whoami: 查询当前用户,你会发现你成为了root
;:因为-exec必须以分号作为命令结束符,为了防止不同OS对;的解释不同,所以加上转义
这篇关于SUID提权的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!