frangelbarrera/StyxLoaderX-EDR-Evasion

GitHub: frangelbarrera/StyxLoaderX-EDR-Evasion

StyxLoaderX 是一款模块化的 Windows x64 EDR 绕过框架,通过动态系统调用、进程镂空和加密混淆等技术帮助红队和安全研究人员评估端点检测能力。

Stars: 6 | Forks: 0

# StyxLoaderX:高级 EDR 绕过框架 [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![C++](https://img.shields.io/badge/C%2B%2B-11-blue)](https://isocpp.org/) [![Windows](https://img.shields.io/badge/Platform-Windows-blue)](https://www.microsoft.com/en-us/windows) [![Evasion Rate](https://img.shields.io/badge/Evasion%20Rate-85%25-green)](https://github.com/frangelbarrera/StyxLoaderX-EDR-Evasion) [![GitHub Stars](https://img.shields.io/github/stars/frangelbarrera/StyxLoaderX-EDR-Evasion?style=social)](https://github.com/frangelbarrera/StyxLoaderX-EDR-Evasion) ## 概述 **StyxLoaderX** 是一个复杂且模块化的框架,专为在 Windows x64 系统上进行高级端点检测与响应(EDR)绕过而设计。该项目展示了网络安全研究中的前沿技术,包括动态系统调用映射、AES-256 加密、进程镂空和沙箱检测。它对 Sysmon 等工具达到了 **85% 的绕过率**,展示了在底层 Windows 内部机制和反取证方法方面的专业能力。 **核心亮点:** - **模块化架构:** 易于通过可互换的绕过模块进行扩展。 - **动态系统调用解析:** 适应 Windows 更新,无需重新编译。 - **AES 加密与 UPX 壳:** 保护二进制文件和字符串免受静态分析。 - **教育重点:** 专为学习红队技术而构建;严格限制在道德和受控环境中使用。 - **性能:** 执行时间 <5秒,资源占用极低。 该框架非常适合渗透测试人员、安全研究人员以及探索 EDR 绕过的学生。它可以在绕过现代安全解决方案的同时执行任意 payload(例如,打开 calc.exe)。 **仓库 URL:** [https://github.com/frangelbarrera/StyxLoaderX-EDR-Evasion](https://github.com/frangelbarrera/StyxLoaderX-EDR-Evasion) **文档:** [完整白皮书](docs/Whitepaper.md) | [测试报告](docs/test_report.md) ## ⚖️ 道德使用政策 该框架记录了具有合法防御应用价值的攻击性技术。安全专业人员必须了解攻击者的方法论,才能构建有效的检测和防护措施。 **授权使用场景包括:** - 签署了正式交战规则(Rules of Engagement)的红队评估 - EDR 产品测试与检测工程 - 关于 Windows 内部机制和恶意软件分析的学术研究 - 在受控实验室环境中进行的网络安全培训 **所有测试都必须在隔离的实验室 VM 中进行。** 请参阅 [docs/config_lab.md](docs/config_lab.md) 获取安全的设置说明。 **使用本软件即表示您保证:** - ✅ 在测试任何系统之前,已获得明确的书面授权 - ✅ 正在进行合法的红队评估或学术研究 - ✅ 将遵守所有适用法律(如 CFAA、Computer Misuse Act、Budapest Convention 等) - ❌ 绝不未经授权对这些技术进行攻击 - ❌ 绝不将此用于任何非法或恶意目的 **作者对滥用行为不承担任何责任。** 如果您不确定您的使用是否已获得授权,那就是未授权。 ## 目录 - [功能](#features) - [架构](#architecture) - [安装说明](#installation) - [用法](#usage) - [测试](#testing) - [截图](#screenshots) - [贡献](#contributing) - [许可证](#license) - [致谢](#acknowledgments) ## 功能 ### 核心能力 - **直接系统调用与动态映射:** 通过直接调用 NT 函数来绕过用户态钩子,在运行时解析系统调用号,以兼容不同的 Windows 版本。 - **进程镂空:** 用恶意代码替换合法进程的内存,使注入看起来像正常的系统活动。 - **字符串混淆:** 对敏感数据(如 DLL 名称)使用 AES-256 加密,运行时动态解密以规避基于特征的检测。 - **二进制加壳:** UPX 压缩可将文件大小减小约 50%,并增加混淆层。 - **沙箱规避:** 检测并在虚拟化或分析环境(如 VM、沙箱)中终止运行。 ### 高级指标 - **绕过有效性:** 绕过 Sysmon 日志的成功率达 85%(经过增强,从 66% 提升)。 - **执行速度:** 部署 payload 不到 5 秒。 - **兼容性:** Windows 10/11 x64;支持多种注入模式。 - **模块化:** 支持即插即用的自定义绕过策略模块。 ### 教育价值 - 学习 Windows API 内部机制、内存操作和红队战术。 - 包含全面的文档、研究笔记和测试报告。 - 适用于网络安全课程、CTF 或作品集项目。 ## 架构 ``` StyxLoaderX/ ├── src/ # Main loaders (MainLoader.cpp, SimpleInjector.cpp) ├── modules/ # Evasion modules (DirectSyscall.cpp, HollowInjector.cpp, etc.) ├── shellcode/ # Assembly payloads (shellcode.asm) ├── docs/ # Documentation (Whitepaper.md, test_report.md, etc.) ├── run_project.bat # Automated build and execution script └── README.md # This file ``` - **MainLoader.cpp:** 用于选择绕过模式(simple、direct、hollow)的中央调度器。 - **模块:** 用于特定技术(例如,syscalls、加密)的可复用组件。 - **Shellcode:** 由汇编编译的可定制 payload。 - **自动化:** `run_project.bat` 负责处理依赖项、编译和测试。 ## 安装说明 ### 前置条件 - **操作系统:** Windows 10/11 x64。 - **工具:** Visual Studio Community(包含 C++ 桌面开发)、NASM 汇编器。 - **硬件:** 至少 4GB 内存(建议 VM 使用 8GB)。 - **权限:** 需要管理员权限才能执行。 ### 分步设置 1. **克隆仓库:** git clone https://github.com/frangelbarrera/StyxLoaderX-EDR-Evasion.git cd StyxLoaderX-EDR-Evasion 2. **安装依赖项:** - 下载并安装包含 C++ 工作负载的 [Visual Studio](https://visualstudio.microsoft.com/)。 - 下载并安装 [NASM](https://www.nasm.us/)。 - 如果需要,`run_project.bat` 脚本将自动下载 OpenSSL 和 UPX。 3. **构建项目:** - 以管理员身份运行 `run_project.bat`。 - 它将编译 shellcode、loader 并应用混淆。 4. **验证安装:** - 检查生成的文件:`MainLoader.exe`、`SimpleInjector.exe`、`shellcode.bin`。 - 在 VM 中进行测试(见 [测试](#testing))。 有关详细的实验室设置,请参阅 [docs/config_lab.md](docs/config_lab.md)。 ## 用法 ### 快速开始 1. 执行 `run_project.bat` 并选择一种模式(例如,使用 "direct" 进行高级绕过)。 2. 提供目标进程的 PID 或 EXE(例如,notepad.exe)。 3. 监控结果:payload 将隐秘执行。 ### 命令示例 - **Simple 模式:** `MainLoader.exe simple 1234 shellcode\shellcode.bin`(基础注入)。 - **Direct 模式:** `MainLoader.exe direct 1234 shellcode\shellcode.bin`(基于 syscall,高绕过率)。 - **Hollow 模式:** `MainLoader.exe hollow explorer.exe shellcode\shellcode.bin`(进程镂空)。 ### 模式概述 | 模式 | 描述 | 绕过级别 | 使用场景 | |-----------|--------------------------------------|---------------|---------------------------| | Simple | 基础的 CreateRemoteThread 注入 | 低(易被检测) | 测试基础功能 | | Direct | 动态 syscalls | 高(~80%) | 绕过钩子 | | Hollow | 进程镂空 + AES | 极高(~90%)| 高级持久化 | ### 自定义 - 修改 `shellcode/shellcode.asm` 以自定义 payload。 - 在 `modules/` 中扩展新技术的模块。 - 在 `StringObfuscator.h` 中调整混淆密钥。 ## 测试 在受控的 VM 环境中进行测试以避免风险。 ### 设置测试环境 - 安装具有高遥测配置的 Sysmon(见 [docs/config_lab.md](docs/config_lab.md))。 - 运行 `run_project.bat` 并选择模式。 - 检查事件查看器 > Windows 日志 > 应用程序中的 Sysmon 事件(注入对应的事件 ID 为 8)。 ### 预期结果 - **成功:** 在高级模式下无日志记录;calc.exe 打开时不会触发警报。 - **指标:** 85% 的绕过率;执行时间 <5秒。 - **调试:** 使用 x64dbg 进行进程检查。 完整测试报告:[docs/test_report.md](docs/test_report.md)。 ## 许可证 本项目基于 MIT 许可证授权 - 有关详细信息,请参阅 [LICENSE](LICENSE) 文件。 ## 致谢 - 灵感来源于 [klezVirus/inceptor](https://github.com/klezVirus/inceptor) 等开源项目。 - 研究基于 Windows 内部机制和 EDR 绕过技术。 - 感谢网络安全社区分享的知识。 **出于对道德网络安全教育的热情而构建。如果您觉得它有用,请给该仓库点个 Star!** 🚀
标签:C++, DNS 反向解析, EDR绕过, SSH蜜罐, Windows底层, 免杀技术, 安全测试工具, 数据擦除, 暴力破解检测, 端点可见性, 进程注入, 高交互蜜罐