ForeverLX/security-research
GitHub: ForeverLX/security-research
这是一个专注于容器和内核安全边界的系统性研究项目,通过可复现的方法论发现并文档化特权提升漏洞及攻击面。
Stars: 0 | Forks: 0
# 安全研究
**Azrael Security — 攻击性安全研究**
由 [ForeverLX](https://github.com/ForeverLX) 发布 | Azrael Security™
## 研究方法论
本仓库中的所有研究都遵循一个系统化的五阶段方法论,旨在生成可复现、可辩护且适用于技术发布和实际应用的发现。
**第一阶段:基线建立**
记录被测试组件预期的隔离行为。对于容器边界,这意味着确立运行时规范关于命名空间隔离、文件系统访问和进程可见性的声明。对于内核研究,这意味着描述系统调用接口、能力边界和权限分离机制的预期行为。基线源自规范文档、源代码审计和实证测量。
**第二阶段:边界识别**
识别执行所审查控制的具体机制——系统调用、内核特性、配置参数或运行时行为。此阶段回答的问题是:阻止操作跨越边界的具体执行点是什么?需要可追溯至源代码或内核接口。
**第三阶段:偏差测试**
构建最小复现用例,以探测边界是否存在非预期行为。每个测试针对单一变量(命名空间类型、运行时标志、内核版本、钩子配置),同时保持其他所有变量不变。测试旨在证伪基线假设,而非证实它。正向结果(边界违反)是发表所必需的;负向结果则作为限定范围内的发现记录在案。
**第四阶段:影响映射**
将每个发现与实际操作环境关联起来。对于容器边界研究,这意味着识别那些该发现构成实际攻击面的部署模式(如代理式AI工作负载、红队C2基础设施、多租户GPU环境)。影响评估基于权限提升路径、信息泄露范围和利用前提条件。
**第五阶段:文档记录**
以适合技术受众的结构化格式撰写发现。每个记录的发现包括:根本原因分析、复现步骤、受影响的配置、检测指南,以及适用的MITRE ATT&CK映射。撰写文档不是CTF攻略;它们是解释漏洞存在原因(而不仅仅是如何触发它)的分析性成果。
## 活跃研究领域
| 领域 | 状态 | 最近活动 | 优先级 |
|---|---|---|---|
| 容器边界研究 | **活跃 — 旗舰项目** | 2026-04-12 (白皮书1发布) | Q2 持续性 |
| Linux 内核与系统研究 | **活跃 — 早期阶段** | 2026-Q1 | 正在构建 |
| 逆向工程 | **活跃 — 挑战系列** | 持续进行 | Q2 持续性 |
| Active Directory 攻击路径 | **活跃 — 课程集成** | 持续进行 | Q2 持续性 |
| 红队基础设施研究 | **活跃** | 持续进行 | Q2 持续性 |
### 1. 容器边界研究
**状态:** 🟢 活跃 — 旗舰 Q2 研究轨道
**主平台:** Cerberus (Podman rootless, Arch Linux)
**次平台:** Tairn (Docker, NixOS 24.11)
- **文件系统与挂载滥用** — 在 rootless Podman 和 Docker 环境中的 overlayfs 行为、绑定挂载逃逸、卷权限错误配置
- **命名空间权限边界** — 用户命名空间权限映射、PID/挂载命名空间隔离失败、跨命名空间转换的能力泄露
- **进程可见性泄露** — 从容器内部对 `/proc` 的暴露、不同命名空间配置下的跨容器 PID 可见性
- **基础设施适用性** — 这些原语如何映射到实际的红队基础设施(C2 隔离、代理暂存环境、基于容器的植入物投放)
- **CVE-2025-23266 与 NVIDIA 钩子执行面** — 通过 OCI 运行时,从容器镜像继承环境到主机特权的 `createContainer` 钩子;四向比较(rootless/rootful Podman × runc/crun)展示了利用路径在不同运行时下的可达性
- **GPU 多租户威胁模型** — 在启用GPU的容器中,受损的代理式工作负载访问NVIDIA的钩子执行边界;CDI规范生成、`LD_PRELOAD`注入到主机钩子进程,以及 `libnvidia-container` / `nvidia-container-toolkit` 中补丁级修复与根本原因修正之间的架构差距
研究平台:Cerberus (Podman rootless, Arch Linux) 和 Tairn (Docker, NixOS 24.11) — 生产环境基础设施,非合成实验虚拟机。
### 2. Linux 内核与系统研究
**状态:** 🟡 活跃 — 早期阶段,正在构建内核利用原语
**主平台:** NightForge (Arch Linux, zen kernel)
专注于内核利用原语的底层Linux系统研究。当前切入点是容器边界分析(用户空间/内核接口)。计划的进展:
- **系统调用边界分析** — 用户空间 → 内核转换,验证发生的位置及未发生的位置
- **权限提升原语** — 能力滥用、命名空间逃逸、SUID/SGID 误用
- **内核利用基础** — 内核上下文中的内存损坏、ret2usr、内核 ROP(长期轨道)
- **CVE 分析** — 深入分析已发布的内核 CVE,理解根本原因和利用机制
研究平台:NightForge (Arch Linux, zen kernel)。
### 3. 逆向工程
**状态:** 🟢 活跃 — 持续进行的挑战系列
**方法论:** 通过递进的挑战工作构建方法论,最终应用于实际二进制文件和 CVE 分析。
通过递进的挑战工作记录逆向工程方法论的发展:
- **re-1** — ELF 32位,逐字节比较循环,静态分析 + GDB
- **re-2** — ELF 64位剥离版,十六进制解码流水线,基于XOR的自定义比较逻辑
- *持续进行中:完成更多 StackSmash RE 挑战后记录*
每个挑战都记录完整的方法论、工具调用输出和分析推理——而不仅仅是解决方案。
### 4. Active Directory 攻击路径
**状态:** 🟢 活跃 — 课程集成 (CRTA / CRT-ID)
**实验平台:** Tairn (NixOS 24.11, Mythic C2, Windows AD 实验室)
基于 CRTA 和 CRT-ID 课程(CyberWarfare Labs)的技术文档,并与在 Tairn 上的动手实验工作相结合。每个技术都记录了:
- 协议/系统层面实际发生情况的机制解释
- MITRE ATT&CK 映射
- 检测注意事项(审计策略、事件日志来源、sigma 规则覆盖范围)
- 工具调用和带注释的输出
### 5. 红队基础设施研究
**状态:** 🟢 活跃
**平台:** Veil 基础设施(多节点 WireGuard 网状网络)
应用于 Veil 基础设施项目的操作安全和架构研究:
- 用于多节点 C2 环境的 WireGuard 网状架构
- Mythic C2 部署加固(网络隔离、防火墙姿态)
- 用于可复现攻击节点的声明式 NixOS
- 用于操作安全的 rootless 容器模式
## 发布物
### 白皮书1:抽象之下
**标题:** *抽象之下:NVIDIA 容器工具包中的钩子隔离失败*
**状态:** ✅ 已发布 — 2026-04-12
**位置:** [`research/container-boundaries/`](research/container-boundaries/README.md)
**CVE 链:** CVE-2024-0132 → CVE-2025-23359 → CVE-2025-23266
**摘要:**
本文研究了在使用 runc 作为 OCI 运行时的 rootless Podman 环境下,NVIDIA 容器栈中的一系列三个 CVE。该漏洞链跨越两个代码库和两种钩子类型,但共享一个共同的结构性失败:工具包架构中,容器控制输入与主机级别钩子执行之间的边界执行不一致。实际的威胁模型是一个在启用GPU的 rootless 容器中运行的受损代理式工作负载,这种部署模式随着本地AI基础设施的兴起已变得普遍。
**主要发现:**
1. 工具包架构中存在结构性边界失败 — 没有 CVE 修正根本原因
2. `execseal` 不对称性 — `update-ldcache` 钩子被密封,而 `enable-cuda-compat` 钩子(CVE-2025-23266 攻击向量)未被密封
3. 运行时特定的可达性 — 在 crun 下可达该利用路径,但在 rootless Podman 的 runc 下不可达;该补丁在两种运行时下统一关闭了该路径
**先前发布背景:** 基于 Wiz Research 的原始 CVE 研究;本文将调查扩展到 rootless Podman,并进行了此前未记录的四向运行时比较。
### 白皮书2
**状态:** 🔵 计划中 — 推迟至 2026 Q3
**范围:** 待定 — 容器边界研究轨道的第二篇白皮书
## 实验室环境
### Cerberus — 容器与 GPU 安全研究
- **操作系统:** Arch Linux (滚动更新)
- **容器运行时:** Podman (rootless), runc 1.4.2 (主要 OCI), crun (次要测试目标)
- **GPU:** NVIDIA GeForce GTX 1650
- **驱动:** 595.58.03
- **NVIDIA 工具包:** 多个版本(v1.17.7 漏洞版,v1.19.0 补丁版)从标记版本的源码构建
- **角色:** 主要容器边界研究平台;NVIDIA CVE 分析;GPU 多租户威胁模型测试
- **架构:** Veil WireGuard 网状网络中的边缘节点
### Tairn — Active Directory 与对手模拟
- **操作系统:** NixOS 24.11
- **容器运行时:** Docker(漏洞测试、代理暂存)
- **C2 框架:** Mythic
- **AD 实验室:** Windows 域控制器 + 成员主机(AD 攻击路径验证)
- **角色:** AD 技术验证(Kerberoasting, DCSync, Golden Ticket);代理测试和 C2 部署加固
- **架构:** Veil WireGuard 网状网络中的管理节点
### NightForge — 操作员工作站
- **操作系统:** Arch Linux (zen kernel)
- **角色:** 操作员工作站、内核研究、逆向工程、二进制分析
- **工具集:** GDB, Ghidra, ltrace/strace, objdump, 自定义分析脚本
- **文档记录于:** [nightforge](https://github.com/ForeverLX/nightforge)
## 活跃研究 — 容器边界分析
*旗舰 Q2 研究轨道。结构已建立以容纳持续的工作。*
```
research/container-boundaries/
├── README.md # Research overview, whitepaper, and methodology
├── 01-environment-setup/ # Lab setup, tooling, baseline measurements
├── 02-filesystem-mounts/ # Findings: overlayfs, bind mounts, volume abuse
├── 03-namespace-analysis/ # Findings: user/pid/mount namespace boundaries
├── 04-proc-visibility/ # Findings: /proc exposure and PID leaks
├── 05-infrastructure-impact/ # How findings map to offensive infra use cases
└── report/ # Final research artifact (MITRE-mapped)
```
## 技术库
来自实验室工作和课程进程的已记录技术。每个条目包括机制解释、复现步骤和 ATT&CK 映射。
| 技术 | ATT&CK ID | 平台 | 状态 |
|---|---|---|---|
| Kerberoasting | T1558.003 | Windows AD | 已记录 |
| AS-REP Roasting | T1558.004 | Windows AD | 已记录 |
| DCSync | T1003.006 | Windows AD | 已记录 |
| Golden Ticket | T1558.001 | Windows AD | 已记录 |
| 域账户枚举 | T1087.002 | Windows AD | 已记录 |
| RE: ELF 32位逐字节验证 | — | Linux | 完成 — `techniques/linux/re/re-1` |
| RE: ELF 64位剥离版, XOR 比较 | — | Linux | 完成 — `techniques/linux/re/re-2` |
| *通过挂载的容器逃逸* | *待定* | Linux | 进行中 |
| *命名空间边界滥用* | *待定* | Linux | 进行中 |
| *内核权限提升原语* | *待定* | Linux | 计划中 |
| *CDI 钩子环境继承* | *待定* | Linux | 白皮书1 |
## 可复现性
本仓库中的所有发现都附有足够独立验证的复现条件。以下原则指导可复现性:
**环境规范:** 每个发现记录测试期间使用的操作系统版本、内核版本、运行时版本(Podman/Docker/runc/crun)和工具包版本。版本固定可实现精确复现。
**测试隔离:** 测试旨在最小化对特定主机配置的依赖。当特定主机的值(UID 映射、文件系统路径)影响结果时,会明确记录。测试针对容器运行时的行为,而非主机的偶然状态。
**基础设施访问:** 研究实验室如上文“实验室环境”部分所述。拥有相同硬件和软件配置的研究人员应能复现核心发现。在需要特定GPU硬件(NVIDIA CVE研究)的地方,会注明此限制。
**负向结果记录:** 发现包括正向和负向结果。rootless Podman + runc 配置未暴露 CVE-2025-23266 利用路径;此负向结果与 crun 下的正向结果一样,记录了相同的环境特性。这避免了在不适用该发现的配置上浪费复现工作。
**补丁验证:** 当发现涉及供应商补丁时,复现步骤包括验证补丁前和补丁后的状态。提供了 CDI 规范检查命令、版本检查和配置文件差异。
## 未来研究方向 — 2026 Q3 优先事项
以下研究方向计划在 2026 Q3 进行:
### 白皮书2 — 容器边界深入探究
- 容器边界研究轨道的第二篇出版物
- 范围待定;基于 Q2 容器边界分析的发现
- 可能重点:rootless 环境中的文件系统和挂载边界滥用
### 扩展 OCI 运行时比较
- 将四向运行时比较(rootless/rootful × runc/crun)扩展至包括:
- youki(基于 Rust 的 OCI 运行时)
- Kata Containers(基于 VM 的隔离)
- gVisor(用户空间内核)
- 描述更广泛运行时环境下的钩子环境继承行为
### 内核利用基础
- 开始结构化 CVE 分析轨道:深入分析已发布的内核 CVE,提供完整根本原因分析
- 目标:具备可用 PoC 代码和补丁差异的 CVE
- 产出:索引在 `research/kernel/` 中的根本原因分析报告
### GPU 多租户隔离
- 超越 NVIDIA 钩子面:调查共享物理GPU的容器之间的GPU内存隔离
- MIG(多实例 GPU)分区分析
- CUDA 上下文隔离边界
### RE 挑战进程
- 继续 StackSmash RE 挑战系列
- 开始转向分析实际的剥离版二进制文件(C2 植入物、打包器/shellcode 分析)
## 仓库结构
```
security-research/
├── README.md
├── research/
│ ├── container-boundaries/ # Active flagship research + Whitepaper 1
│ ├── kernel/ # Linux kernel & systems research
│ ├── active-directory/ # AD technique documentation
│ └── infrastructure/ # Red team infra research notes
├── techniques/
│ ├── ad/ # Per-technique writeups (AD)
│ └── linux/
│ ├── re/ # Reverse engineering writeups
│ │ ├── re-1/
│ │ └── re-2/
│ └── kernel/ # Kernel exploitation technique notes
├── labs/
│ └── tairn/ # Lab work documented from Tairn
├── writeups/
│ ├── reverse-engineering/
│ └── README.md
└── assets/
├── screenshots/ # Environment and lab screenshots
└── certificates/ # Certifications (AD-RTS, CAPT, COSJ)
```
## 基础设施
研究在 [Veil](https://github.com/ForeverLX/veil) 基础设施上进行:
- **Cerberus** — Arch Linux 边缘节点,rootless Podman(主要容器研究平台)
- **Tairn** — NixOS 24.11, Mythic C2 + Docker(AD 实验室工作、代理测试)
- **NightForge** — Arch Linux 操作员工作站 ([nightforge](https://github.com/ForeverLX/nightforge))
## 认证
| 认证 | 颁发机构 | 状态 |
|---|---|---|
| Active Directory 红队专家 (AD-RTS) | CyberWarfare Labs | 已完成 |
| 注册助理渗透测试师 (CAPT) | HackViser | 已完成 |
| 注册攻击性安全初级专家 (COSJ) | RedTeam Ops | 已完成 |
| 注册红队分析师 (CRTA) | CyberWarfare Labs | 进行中 |
| 注册红队基础设施开发者 (CRT-ID) | CyberWarfare Labs | 进行中 |
## 免责声明
所有研究均在自主运营的基础设施上进行,用于授权的安全研究目的。发现和技术仅为教育和专业发展目的记录。未对生产基础设施进行测试。未执行未授权的目标扫描。所有PoC(概念验证)均附带适用的检测指南。内核利用需要完整根本原因分析,而不仅仅是功能性的利用。
**作者:** Darrius Grate (ForeverLX) | Azrael Security™
标签:安全渗透, 请求拦截