vtomasv/linux-process-injection-lab
GitHub: vtomasv/linux-process-injection-lab
基于 Docker+noVNC 的 Linux 进程注入教学实验室,提供 ptrace、LD_PRELOAD、memfd 三种注入技术的动手实践环境。
Stars: 0 | Forks: 0
# Linux 高级进程注入实验室 (MAR404)
本仓库包含一个带有图形界面 (noVNC) 的隔离 Docker 环境和实践练习,用于演示在 Linux 系统中高级的进程注入技术。这些技术是 Windows 上 APT 组织所使用方法的直接等价物 (MITRE ATT&CK T1055)。
## 前置条件
- Docker Desktop (Windows/Mac) 或 Docker Engine (Linux)
- Docker Compose
## 快速开始
```
# 克隆仓库
git clone https://github.com/vtomasv/linux-process-injection-lab.git
cd linux-process-injection-lab
# 构建并启动环境
docker-compose up -d
# 访问图形界面
# 在你的浏览器中打开: http://localhost:8080
# VNC 密码: infected
```
## 仓库结构
```
linux-process-injection-lab/
├── docker/
│ ├── Dockerfile # Imagen con GUI (XFCE4), compiladores y herramientas
│ └── supervisord.conf # Configuración de servicios (VNC, noVNC, XFCE)
├── docker-compose.yml # Orquestación con privilegios SYS_PTRACE
├── src/
│ ├── lab1_ptrace/ # T1055.001/003: Inyección clásica con ptrace
│ │ ├── target.c # Proceso víctima
│ │ ├── ptrace_inject.c # Inyector de shellcode
│ │ └── Makefile
│ ├── lab2_ldpreload/ # T1055.001: DLL Injection equivalente
│ │ ├── malicious.c # Librería maliciosa (.so)
│ │ └── Makefile
│ └── lab3_memfd/ # T1055.012: Fileless / Process Ghosting
│ ├── memfd_exec.c # Ejecutor en memoria
│ ├── dummy_payload.c # Payload de demostración
│ └── Makefile
├── docs/
│ └── GUIA_DEL_ESTUDIANTE.md # Instrucciones paso a paso con debugging
└── README.md
```
## 容器中预装的工具
| 工具 | 用途 |
|-------------|-----------|
| `gcc` / `make` | 编译 C 程序 |
| `gdb` | 用于检查寄存器和内存的 Debugger |
| `strace` | 系统调用 (syscalls) 跟踪 |
| `ltrace` | 动态库调用跟踪 |
| `htop` | 实时进程监控 (可视化) |
| `lsof` | 列出进程打开的文件 |
| `objdump` / `readelf` | ELF 二进制分析 |
| `hexdump` | 内存十六进制可视化 |
## 学生指南
进入图形环境 (noVNC) 后,打开终端模拟器并按照 `docs/GUIA_DEL_ESTUDIANTE.md` 中的详细说明进行操作。
## 停止环境
```
docker-compose down
```
标签:客户端加密, 版权保护, 请求拦截