特殊情况下的提权方法

有时候用普通用户登录目标机后用
sudo -l

发现该用户什么命令都不能sudo

解决方法如下

先用

find / -perm -4000 2>/dev/null | grep '/bin/'

或者

find / -user root -perm -u=s 2>/dev/null
find的使用

看看能用什么进程来提权

最好选择位于/usr/local/bin/下的进程

然后就是老朋友GTFOBins或者是漏洞数据库

如果是用GTFOBins的话,选shell类而不再是sudo类,用给出的命令来建立一个新的可交互的shell来突破提权。

如果是用漏洞数据库的话,则搜索对应的软件漏洞,下载exploit脚本并在目标机上执行,有时exploit脚本会抽风,就得自己解析脚本,一步一步按脚本里的命令来执行。

 

有时候输入sudo -l后,会出现下面情况,例如:

(ALL;!root) NOPASSWD  /usr/bin/vi   /home/user.txt

这种有时候会抽风,明明写着nopasswd,但sudo执行 /usr/bin/vi 时还是需要输入密码

而且使用不了

解决方法:

sudo -u#-1 /usr/bin/vi /home/user.txt

这里是使用的-u#-1,通过以-1的用户身份来绕过sudo的密码检测

后面一定要接绝对路径

 

posted @ 2023-01-18 22:21  野荷  阅读(34)  评论(0编辑  收藏  举报