打靶日记-Moneybox
字数 1363 2025-08-10 08:28:04

Moneybox靶场渗透测试教学文档

1. 项目概述

1.1 渗透测试目的

  • 获取关键信息flag.txt

1.2 渗透测试范围

  • 本地内网环境
  • 目标系统:Moneybox
  • 网站地址:http://192.168.21.50

1.3 测试环境

  • VMware虚拟机内网环境
  • 渗透测试人员:莫拉斯(molasses)

2. 渗透测试流程与方法

2.1 信息收集阶段

2.1.1 端口扫描

  • 发现FTP服务开放
  • 存在匿名登录漏洞

2.1.2 敏感目录扫描

  • 发现/blogs目录
  • 查看源码发现隐藏字段

2.2 漏洞利用阶段

2.2.1 FTP匿名用户漏洞利用

  1. 使用Kali Linux连接FTP服务:
    ftp 192.168.21.50
    用户名:anonymous
    密码:空
    
  2. 发现当前目录存在trytofind.jpg图片
  3. 使用get命令下载图片到本地:
    get trytofind.jpg
    

2.2.2 敏感文件泄露利用

  1. 访问/blogs目录
  2. 查看页面源码发现隐藏字段
  3. 根据隐藏字段猜测并访问新的敏感文件

2.2.3 图片隐写分析

  1. 检查图片中隐藏的文件:
    steghide info trytofind.jpg
    
    • 发现嵌入了一个data.txt文件
  2. 提取隐藏文件:
    steghide extract -sf trytofind.jpg
    
    • 使用之前获取的key分离文件
    • 获得data.txt,内容包含账户renu和脆弱密码

2.2.4 弱密码漏洞利用

  1. 使用Hydra暴力破解:
    hydra -l renu -P [密码字典] ssh://192.168.21.50
    
  2. 成功破解后使用SSH连接:
    ssh renu@192.168.21.50
    
  3. 获取第一个flag:user1.txt

2.3 权限提升阶段

2.3.1 横向移动

  1. 浏览目录发现另一个用户lily
  2. 进入lily用户目录,发现第二个flag:user2.txt

2.3.2 历史命令分析

  1. 查看history历史命令:
    history
    
  2. 发现lily使用SSH密钥登录的命令
  3. 利用该信息登录lily账户

2.3.3 Sudo提权

  1. 使用find命令查找具有SUID权限的文件:
    find / -perm -4000 2>/dev/null
    
  2. 发现sudo具有s权限
  3. 使用Perl命令提权:
    sudo perl -e 'exec "/bin/sh";'
    
  4. 提权成功,获得root权限

2.3.4 获取最终flag

  1. 使用find命令查找txt文件:
    find / -name "*.txt" 2>/dev/null
    
  2. 发现隐藏文件.root.txt
  3. 打开获取第三个flag

3. 渗透测试结果汇总

发现的漏洞类型:

  1. FTP匿名用户登录漏洞
  2. 暴力枚举漏洞(弱密码)
  3. Sudo提权漏洞

4. 安全建议

  1. FTP服务安全

    • 禁用匿名登录
    • 限制FTP用户访问权限
    • 考虑使用SFTP替代FTP
  2. 密码策略

    • 实施强密码策略
    • 定期更换密码
    • 禁用默认账户或修改默认密码
  3. 权限管理

    • 遵循最小权限原则
    • 定期审核sudo权限
    • 移除不必要的SUID权限
  4. 敏感信息保护

    • 避免在源码中暴露敏感信息
    • 对敏感文件设置适当权限
    • 定期检查隐藏文件和异常文件
  5. 日志监控

    • 启用并监控系统日志
    • 设置登录失败警报
    • 定期审计历史命令

5. 工具清单

本次渗透测试使用的主要工具:

  1. Nmap - 端口扫描
  2. FTP客户端 - 匿名登录测试
  3. Steghide - 图片隐写分析
  4. Hydra - 暴力破解工具
  5. SSH客户端 - 远程连接
  6. Find命令 - 文件查找
  7. History命令 - 历史命令分析

6. 技术要点总结

  1. 信息收集是关键:通过端口扫描和目录扫描获取初始攻击面
  2. 多层漏洞利用:从FTP匿名登录到图片隐写,再到弱密码破解,形成攻击链
  3. 权限提升路径:从普通用户到另一个用户,再到root权限的完整提权过程
  4. 痕迹利用:通过历史命令发现新的攻击路径
  5. 全面搜索:使用find命令查找所有可能的flag文件
Moneybox靶场渗透测试教学文档 1. 项目概述 1.1 渗透测试目的 获取关键信息flag.txt 1.2 渗透测试范围 本地内网环境 目标系统:Moneybox 网站地址:http://192.168.21.50 1.3 测试环境 VMware虚拟机内网环境 渗透测试人员:莫拉斯(molasses) 2. 渗透测试流程与方法 2.1 信息收集阶段 2.1.1 端口扫描 发现FTP服务开放 存在匿名登录漏洞 2.1.2 敏感目录扫描 发现/blogs目录 查看源码发现隐藏字段 2.2 漏洞利用阶段 2.2.1 FTP匿名用户漏洞利用 使用Kali Linux连接FTP服务: 发现当前目录存在trytofind.jpg图片 使用get命令下载图片到本地: 2.2.2 敏感文件泄露利用 访问/blogs目录 查看页面源码发现隐藏字段 根据隐藏字段猜测并访问新的敏感文件 2.2.3 图片隐写分析 检查图片中隐藏的文件: 发现嵌入了一个data.txt文件 提取隐藏文件: 使用之前获取的key分离文件 获得data.txt,内容包含账户renu和脆弱密码 2.2.4 弱密码漏洞利用 使用Hydra暴力破解: 成功破解后使用SSH连接: 获取第一个flag:user1.txt 2.3 权限提升阶段 2.3.1 横向移动 浏览目录发现另一个用户lily 进入lily用户目录,发现第二个flag:user2.txt 2.3.2 历史命令分析 查看history历史命令: 发现lily使用SSH密钥登录的命令 利用该信息登录lily账户 2.3.3 Sudo提权 使用find命令查找具有SUID权限的文件: 发现sudo具有s权限 使用Perl命令提权: 提权成功,获得root权限 2.3.4 获取最终flag 使用find命令查找txt文件: 发现隐藏文件.root.txt 打开获取第三个flag 3. 渗透测试结果汇总 发现的漏洞类型: FTP匿名用户登录漏洞 暴力枚举漏洞(弱密码) Sudo提权漏洞 4. 安全建议 FTP服务安全 : 禁用匿名登录 限制FTP用户访问权限 考虑使用SFTP替代FTP 密码策略 : 实施强密码策略 定期更换密码 禁用默认账户或修改默认密码 权限管理 : 遵循最小权限原则 定期审核sudo权限 移除不必要的SUID权限 敏感信息保护 : 避免在源码中暴露敏感信息 对敏感文件设置适当权限 定期检查隐藏文件和异常文件 日志监控 : 启用并监控系统日志 设置登录失败警报 定期审计历史命令 5. 工具清单 本次渗透测试使用的主要工具: Nmap - 端口扫描 FTP客户端 - 匿名登录测试 Steghide - 图片隐写分析 Hydra - 暴力破解工具 SSH客户端 - 远程连接 Find命令 - 文件查找 History命令 - 历史命令分析 6. 技术要点总结 信息收集是关键 :通过端口扫描和目录扫描获取初始攻击面 多层漏洞利用 :从FTP匿名登录到图片隐写,再到弱密码破解,形成攻击链 权限提升路径 :从普通用户到另一个用户,再到root权限的完整提权过程 痕迹利用 :通过历史命令发现新的攻击路径 全面搜索 :使用find命令查找所有可能的flag文件