rani27-bipo/reverse-shell-lab
GitHub: rani27-bipo/reverse-shell-lab
一个隔离环境中的反向 Shell 教学实验,演示 Metasploit 攻击全链路及 Blue Team 检测分析方法。
Stars: 0 | Forks: 0
# Reverse Shell — Metasploit / Meterpreter 与后渗透
## ⚠️ 免责声明
本实验完全在隔离环境中进行(攻击者 VM
Parrot OS + 受害者 Windows 10 VM,使用 host-only 网络)。未针对任何
真实系统。目的仅用于教学。
## 目标
演示使用 Metasploit Framework 进行 reverse shell 攻击的完整链路:
生成 payload、投递、获取 Meterpreter 会话,以及后渗透(系统
侦察、屏幕截图、键盘记录)。随后分析 Blue Team 如何检测每个步骤。
## 环境
| 角色 | 系统 | IP |
|---|---|---|
| 攻击者 | Parrot Security OS (Metasploit Framework) | 192.168.106.128 |
| 受害者 | Windows 10 22H2 | 192.168.106.133 |
## 方法论
### 1. 初始网络侦察
从攻击机器检查网络配置以及到目标的连通性。

### 2. Payload 的生成与投递
使用 `msfvenom` 生成 `windows/meterpreter/reverse_tcp` payload,并通过 Python HTTP 服务器公开供受害者
下载。

### 3. 受害者侧验证
在执行 payload 之前,确认受害者与
攻击者之间的网络连通性。

### 4. 配置 MSGRPC 服务
启动 `msfrpcd` 以允许与 Metasploit 框架进行远程交互。

### 5. 通过 RPC 连接到 msfconsole
在 `msfconsole` 中加载 `msgrpc` 插件,以便通过
RPC API 控制框架。

### 6. 配置监听 handler
使用与生成的 payload 对应的 payload、地址 (`LHOST`) 和监听端口 (`LPORT`) 配置 `exploit/multi/handler` 模块。

### 7. 验证 handler 选项

### 8. 启动监听并获取会话
handler 在后台运行。一旦在受害者侧执行 payload,Meterpreter 会话就会建立。

### 9. 后渗透侦察
与会话交互:系统信息 (`sysinfo`)、
受损用户身份 (`getuid`)、远程屏幕截图。

### 10. 交互式 Shell
通过 Meterpreter 会话开启远程 `cmd.exe` shell。

### 11. 高级后渗透 — 键盘记录
展示监控能力:尝试访问
网络摄像头,然后激活键盘记录器(`keyscan_start`
/ `keyscan_dump`)以说明静默间谍活动的风险。

## 分析 — 攻击链 (Cyber Kill Chain)
| 步骤 | Kill Chain | 执行的操作 |
|---|---|---|
| 1 | Weaponization | 使用 msfvenom 生成 payload |
| 2 | Delivery | 模拟文件分发的 HTTP 服务器 |
| 3 | Exploitation | 在受害者侧执行 payload |
| 4 | Installation | 建立 Meterpreter 会话 |
| 5 | C2 | 作为命令和控制信道的 Metasploit handler |
| 6 | Actions on Objectives | 侦察、屏幕截图、键盘记录 |
## 检测 — Blue Team / SOC 视角
- **EDR/Antivirus**:从临时文件夹 (`AppData\Local\Temp`) 启动未签名的可执行文件 (`update.exe`) 是一个强有力的指标;优秀的 EDR(Defender for Endpoint、CrowdStrike 等)会阻止或就此模式发出警报
- **网络**:通过非标准端口 (4444) 持续连向未知内部 IP 的传出流量——典型的 beaconing/C2 迹象
- **进程**:`cmd.exe` 作为可疑二进制文件的子进程启动,且该文件位于常规系统目录之外
- **行为**:激活 `keyscan_start` 对应于 `SetWindowsHookEx` / `GetAsyncKeyState` 类型的 API 调用,可被行为 EDR 检测到
- **Sigma 规则(示例)**:检测从 `%TEMP%\MicrosoftEdgeDownloads\...` 启动的子进程 `cmd.exe` 或 `powershell.exe`
## 修复建议
1. 阻止从 Temp/Downloads 目录执行未签名的二进制文件 (AppLocker, WDAC)
2. 对非标准端口进行出站过滤 (egress filtering)
3. 部署具有行为检测能力的 EDR(不仅是基于特征码)
4. 用户意识培训:切勿执行从未经验证来源下载的可执行文件
5. 通过 EDR 监控敏感的 API 调用(键盘钩子、屏幕截图)
## 展示的技能
`Metasploit Framework` `Meterpreter` `Payload 生成` `后渗透`
`Cyber Kill Chain 分析` `EDR 检测` `Detection Engineering (Sigma)`
## 使用的工具
Parrot Security OS · Metasploit Framework · msfvenom · msfconsole · Windows 10
标签:Go语言工具, 安全教育, 库, 应急响应, 无线安全, 逆向工具