本仓库包含一系列针对 Windows 平台的红队工程化 DLL 加载器,旨在绕过 EDR 的静态查杀、行为监控及内存扫描。
所有项目均采用 Rust 编写,支持 no_std 级优化(依赖 windows-rs),并实现了全自动化的 CI/CD 构建。
| 版本 | 项目名称 | 核心技术 | 对抗目标 | 推荐场景 |
|---|---|---|---|---|
| v1.0 | version_proxy |
Export Forwarding Proxy DLL |
静态查杀 白名单拦截 (Exelock) |
初始访问,针对传统 AV |
| v2.0 | version_stomp |
Module Stomping Manual PE Parsing |
栈回溯分析 (Stack Walking) 内存扫描 |
对抗 CS/S1 等 EDR 的 "Call Stack" 检查 |
| v3.0 | version_obfus |
Build-time Encryption XOR Obfuscation |
静态特征匹配 落地查杀 |
首选。全内存加密,防止载荷特征被扫 |
在项目根目录下放置您的 Payload,命名为 calc.shellcode(Raw Binary 格式)。
# 生成测试 Payload (弹出计算器)
msfvenom -p windows/x64/exec CMD=calc.exe -f raw -o calc.shellcode使用 GitHub Actions 自动构建,或本地构建:
# 构建 v3.0 (推荐)
cd version_obfus
cargo build --release- 找到目标白文件(如某看图王、OneDrive)。
- 将编译好的 DLL 重命名为
version.dll。 - 将
version.dll放置在白文件同级目录。 - 运行白文件。
- 编译时加密: 使用
build.rs在编译期间随机生成 XOR 密钥,对calc.shellcode进行加密并嵌入。每次编译生成的 DLL 指纹均不同(多态)。 - 运行时解密: Shellcode 在内存中以密文形式存在,仅在 Module Stomping 写入目标内存的那一刻解密。
- 无文件依赖: 不再在运行时读取
calc.shellcode文件,Payload 硬编码在 DLL 数据段中,减少 IO 特征。
- 零依赖 PE 解析: 手动计算 DOS/NT Header 偏移,定位
.text段。 - 合法内存伪装: 将 Shellcode 注入到
xpsservices.dll等系统合法 DLL 的代码段中,欺骗 EDR 的栈回溯检查。
- Linker Forwarding: 利用 Rust
.drectve段实现完美的导出函数转发。 - Thread Separation: 异步执行 Payload,防止主进程卡死。
本项目仅用于授权的红队评估与安全研究。