MrRobot渗透测试报告
字数 1675 2025-08-18 11:36:36

MrRobot 渗透测试教学文档

1. 靶机概述

  • 靶机名称: MrRobot
  • 难度等级: 中级(CTF)
  • 发布日期: 2016年6月28日
  • 目标: 获取root权限并找到三个隐藏密钥(key1~3)
  • 特点: 基于《机器人先生》剧集,不涉及高级开发或逆向工程

2. 环境准备

2.1 网络配置

  • 将虚拟机网络模式设置为NAT
  • 确保攻击机(Kali Linux)与靶机在同一局域网

2.2 所需工具

  • 扫描工具: Netdiscover、arp-scan、nmap
  • Web扫描: dirb、nikto
  • 其他工具: Burp Suite、nc(netcat)

3. 渗透测试流程

3.1 信息收集阶段

3.1.1 主机发现

  • 使用netdiscoverarp-scan扫描局域网内活跃主机
  • 确定靶机IP地址(示例中为192.168.92.144)

3.1.2 端口与服务扫描

nmap -sV -O 192.168.92.144

发现结果:

  • 系统: Linux 3.10 - 4.11
  • 开放端口: 80(HTTP)、443(HTTPS)
  • Web服务器: Apache

3.1.3 Web目录扫描

dirb http://192.168.92.144

重要发现:

  • /robots.txt文件
    • 包含两个文件: socity.dic(字典文件)和key-1-of-3.txt
    • key1可直接访问获取

3.2 漏洞扫描与分析

3.2.1 使用Nikto扫描

nikto -host 192.168.92.144

3.2.2 发现WordPress后台

  • 访问/wp-login.php发现WordPress登录页面
  • 无token验证机制

3.3 暴力破解

3.3.1 使用Burp Suite破解

  • 使用之前发现的socity.dic作为字典
  • 成功破解凭证:
    • 用户名: Elliot
    • 密码: ER28-0652

3.4 漏洞利用

3.4.1 修改404模板插入后门

  1. 登录WordPress后台
  2. 进入外观→编辑器→404模板
  3. 插入一句话木马(需修改IP为攻击机IP)
  4. 更新文件

3.4.2 建立反向连接

  1. 在Kali上启动监听:
nc -lvnp [端口]
  1. 访问不存在的页面触发404模板执行后门代码
  2. 获取初始shell

3.4.3 稳定shell

python -c 'import pty; pty.spawn("/bin/bash")'

3.5 权限提升

3.5.1 获取robot用户凭证

  • 发现MD5散列: c3fcd3d76192e4007dfb496cca67e13b
  • 解密后得到:
    • 用户名: robot
    • 密码: abcdefghijklmnopqrstuvwxyz

3.5.2 查找SUID程序

find / -perm -u=s -type f 2>/dev/null

发现可利用程序: nmap

3.5.3 通过nmap提权

nmap --interactive
!sh
  • 获取root权限shell

3.6 获取flag

  • key1: 直接从/key-1-of-3.txt获取
  • key2: 在用户目录或系统文件中查找
  • key3: 在root目录下查找

4. 技术要点总结

  1. 信息收集是关键:

    • 全面扫描端口和服务
    • 检查robots.txt等标准文件
    • 目录扫描发现隐藏资源
  2. 凭证破解:

    • 利用发现的字典文件
    • 针对无防护的登录页面
  3. Web漏洞利用:

    • 通过文件编辑功能插入后门
    • 建立反向连接获取shell
  4. 权限提升路径:

    • 查找系统密码散列并破解
    • 利用SUID程序(nmap)提权
  5. CTF技巧:

    • 三个密钥难度递增
    • 需要全面检查文件系统

5. 防御建议

  1. 强化WordPress安全:

    • 使用强密码
    • 限制登录尝试
    • 启用双因素认证
  2. 文件权限控制:

    • 限制模板文件修改权限
    • 移除不必要的SUID权限
  3. 敏感信息保护:

    • 不要将字典文件放在web目录
    • 密钥文件应有适当访问控制
  4. 系统加固:

    • 及时更新软件
    • 禁用不必要的服务
    • 监控异常活动

6. 扩展学习

  1. WordPress安全:

    • 研究常见WordPress漏洞
    • 学习WPScan工具使用
  2. 权限提升技术:

    • 研究各种SUID提权方法
    • 学习内核漏洞利用
  3. 密码破解:

    • 研究不同哈希算法
    • 学习彩虹表使用
  4. 隐蔽后门技术:

    • 研究各种webshell
    • 学习流量加密技术

通过本案例的系统学习,可以掌握从信息收集到权限提升的完整渗透测试流程,特别适合中级CTF比赛和实际渗透测试工作参考。

MrRobot 渗透测试教学文档 1. 靶机概述 靶机名称 : MrRobot 难度等级 : 中级(CTF) 发布日期 : 2016年6月28日 目标 : 获取root权限并找到三个隐藏密钥(key1~3) 特点 : 基于《机器人先生》剧集,不涉及高级开发或逆向工程 2. 环境准备 2.1 网络配置 将虚拟机网络模式设置为NAT 确保攻击机(Kali Linux)与靶机在同一局域网 2.2 所需工具 扫描工具 : Netdiscover、arp-scan、nmap Web扫描 : dirb、nikto 其他工具 : Burp Suite、nc(netcat) 3. 渗透测试流程 3.1 信息收集阶段 3.1.1 主机发现 使用 netdiscover 或 arp-scan 扫描局域网内活跃主机 确定靶机IP地址(示例中为192.168.92.144) 3.1.2 端口与服务扫描 发现结果 : 系统: Linux 3.10 - 4.11 开放端口: 80(HTTP)、443(HTTPS) Web服务器: Apache 3.1.3 Web目录扫描 重要发现 : /robots.txt 文件 包含两个文件: socity.dic (字典文件)和 key-1-of-3.txt key1可直接访问获取 3.2 漏洞扫描与分析 3.2.1 使用Nikto扫描 3.2.2 发现WordPress后台 访问 /wp-login.php 发现WordPress登录页面 无token验证机制 3.3 暴力破解 3.3.1 使用Burp Suite破解 使用之前发现的 socity.dic 作为字典 成功破解凭证: 用户名: Elliot 密码: ER28-0652 3.4 漏洞利用 3.4.1 修改404模板插入后门 登录WordPress后台 进入外观→编辑器→404模板 插入一句话木马(需修改IP为攻击机IP) 更新文件 3.4.2 建立反向连接 在Kali上启动监听: 访问不存在的页面触发404模板执行后门代码 获取初始shell 3.4.3 稳定shell 3.5 权限提升 3.5.1 获取robot用户凭证 发现MD5散列: c3fcd3d76192e4007dfb496cca67e13b 解密后得到: 用户名: robot 密码: abcdefghijklmnopqrstuvwxyz 3.5.2 查找SUID程序 发现可利用程序 : nmap 3.5.3 通过nmap提权 获取root权限shell 3.6 获取flag key1: 直接从 /key-1-of-3.txt 获取 key2: 在用户目录或系统文件中查找 key3: 在root目录下查找 4. 技术要点总结 信息收集是关键 : 全面扫描端口和服务 检查robots.txt等标准文件 目录扫描发现隐藏资源 凭证破解 : 利用发现的字典文件 针对无防护的登录页面 Web漏洞利用 : 通过文件编辑功能插入后门 建立反向连接获取shell 权限提升路径 : 查找系统密码散列并破解 利用SUID程序(nmap)提权 CTF技巧 : 三个密钥难度递增 需要全面检查文件系统 5. 防御建议 强化WordPress安全 : 使用强密码 限制登录尝试 启用双因素认证 文件权限控制 : 限制模板文件修改权限 移除不必要的SUID权限 敏感信息保护 : 不要将字典文件放在web目录 密钥文件应有适当访问控制 系统加固 : 及时更新软件 禁用不必要的服务 监控异常活动 6. 扩展学习 WordPress安全 : 研究常见WordPress漏洞 学习WPScan工具使用 权限提升技术 : 研究各种SUID提权方法 学习内核漏洞利用 密码破解 : 研究不同哈希算法 学习彩虹表使用 隐蔽后门技术 : 研究各种webshell 学习流量加密技术 通过本案例的系统学习,可以掌握从信息收集到权限提升的完整渗透测试流程,特别适合中级CTF比赛和实际渗透测试工作参考。