Adam-ZS/OMEN

GitHub: Adam-ZS/OMEN

OMEN 是一个基于 Flask 的红队载荷生成工具包,提供统一的 Web 界面与 API 来快速构建和混淆 Office 宏、HTA、LNK 等多种类型的攻击载荷与投递物。

Stars: 0 | Forks: 0

# ◈ OMEN — Artifact Toolkit Builder ``` ██████╗ ███╗ ███╗███████╗███╗ ██╗ ██╔═══██╗████╗ ████║██╔════╝████╗ ██║ ██║ ██║██╔████╔██║█████╗ ██╔██╗ ██║ ██║ ██║██║╚██╔╝██║██╔══╝ ██║╚██╗██║ ╚██████╔╝██║ ╚═╝ ██║███████╗██║ ╚████║ ╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝ ``` *版权所有 (c) 2025 Adam-ZS — https://github.com/Adam-ZS* [![平台](https://img.shields.io/badge/platform-Web%20%7C%20Cross--platform-purple)]() [![后端](https://img.shields.io/badge/backend-Flask%202.3-cyan)]() [![前端](https://img.shields.io/badge/frontend-Glassmorphism%20Dark-6c5ce7)]() [![许可证](https://img.shields.io/badge/license-EDUCATIONAL-red)]() **OMEN** 是一个基于 Web 的 Artifact Toolkit Builder,专为授权的安全评估而设计。它提供了一个简洁的玻璃拟态深色 UI,用于快速生成恶意文档、payload 和投递机制,并支持配置混淆级别。 专为红队、渗透测试人员和安全研究人员打造,他们需要一个统一的接口来生成 payload,而无需在十几个不同的工具之间切换。 ## ⚠️ 法律免责声明 ## ✨ 功能 ### Generator 模块 - 📄 **Office VBA Macro** — 下载 cradles、keyloggers、droppers、reverse shells、凭据钓鱼、持久化(AutoOpen/Workbook_Open) - 🌐 **HTA Payload** — 包含 PowerShell、BITSAdmin、Certutil、XMLHTTP 或 WScript droppers 的 HTML 应用程序;支持 fallback 链和沙箱规避 - 💻 **VBA Stager** — Shellcode 加载器、DLL 注入、进程镂空,以及带有完整 Win32 API 声明的 WinHTTP 下载 stager - 🕸 **JavaScript Payload** — 针对 WSH、浏览器或 Node.js 目标;下载 cradles、反向 HTTP beacon、keyloggers、WMI 持久化、屏幕捕获、剪贴板监控 - 🔗 **LNK Shortcut** — 具有图标伪装(PDF、文件夹、文档、Chrome)、热键触发和隐藏执行的恶意快捷方式文件 - 💿 **ISO Disk Image** — 用于构建包含嵌入式 droppers、支持 autorun.inf 和虚假文档名称的 ISO 镜像的 PowerShell 脚本 ### 混淆引擎 - 🔒 **Base64** — 简单编码 - 🔐 **XOR** — 基于密钥的 XOR 混淆,支持运行时解密 - 🛡 **AES-256** — 完整的 AES 加密包装器 - 🔥 **Full Multi-Layer** — 结合垃圾代码注入和变量随机化的组合混淆 ### Web Dashboard - 🎨 **Glassmorphism Dark UI** — 现代、响应式的界面,带有玻璃卡片 - ⚡ **Live Preview** — 下载前预览生成的 artifact - 📊 **Risk Analysis** — 带有检测风险评分的静态分析 - 📦 **Batch Downloads** — 在一个 ZIP 中生成多种 artifact 类型 - 🔍 **Copy to Clipboard** — 一键复制以便快速使用 - ⌨ **Keyboard Shortcuts** — Ctrl+Enter 生成,Ctrl+D 下载 ## 🚀 快速开始 ### 安装 ``` # Clone the repository git clone https://github.com/Adam-ZS/OMEN.git cd OMEN # 安装依赖项 pip install -r requirements.txt # 运行服务器 python app.py ``` 在浏览器中打开 `http://localhost:5000` 即可开始使用。 ### Docker ``` docker build -t omen-toolkit . docker run -p 5000:5000 omen-toolkit ``` ## 🏗 架构 ![架构](https://static.pigsec.cn/wp-content/uploads/repos/cas/da/da16f9ff79d2b9f5063575e265ed08ae39af54de86a3179f0a9614d5742219f7.png) ``` ┌──────────────────────────────────────────────────────────┐ │ OMEN Web Server │ │ ┌────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ Generator │ │ Obfuscation │ │ Analysis Engine │ │ │ │ Modules │──▶ Engine │──▶ (Risk Scoring) │ │ │ └────────────┘ └──────────────┘ └──────────────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────────────────────────────────┐ │ │ │ API Layer (REST JSON) │ │ │ │ /api/generators /api/generate /api/download │ │ │ │ /api/preview /api/analyze /api/obfuscate │ │ │ └──────────────────────────────────────────────────┘ │ └──────────────────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────┐ │ Glassmorphism Dark Web UI │ │ ┌──────────┐ ┌──────────────────┐ ┌───────────────┐ │ │ │ Generator │ │ Config Panel │ │ Output / │ │ │ │ Sidebar │ │ (Dynamic Forms) │ │ Preview Pane │ │ │ └──────────┘ └──────────────────┘ └───────────────┘ │ └──────────────────────────────────────────────────────────┘ ``` ## 📖 用法 ### Web 界面 1. 从侧边栏**选择一个 Generator**(Macro、HTA、VBA、JS、LNK、ISO) 2. **配置选项** — 每个 Generator 都有自己的表单和相关的参数(URL、目标进程、混淆设置) 3. **设置混淆级别** — 从 None 到 Full 多层混淆 4. **点击“Generate Artifact”** — 输出将显示在预览窗格中 5. **下载、复制或分析** — 使用操作按钮 ### API 所有 Generator 均可通过 REST API 访问: ``` # 列出可用 generators curl http://localhost:5000/api/generators # 生成 artifact curl -X POST http://localhost:5000/api/generate \ -H "Content-Type: application/json" \ -d '{ "generator": "macro", "options": { "payload_type": "download_cradle", "url": "http://YOUR_SERVER/payload.exe", "auto_open": true, "sandbox_evasion": true }, "obfuscation": "aes" }' # 下载已生成的 artifact curl -X POST http://localhost:5000/api/download \ -H "Content-Type: application/json" \ -d '{"generator": "hta", "options": {"payload_url": "http://YOUR_SERVER/payload.exe"}}' \ --output payload.hta # 分析 artifact 的检测风险 curl -X POST http://localhost:5000/api/analyze \ -H "Content-Type: application/json" \ -d '{"content": "your payload content here"}' # 批量下载多个 artifacts curl -X POST http://localhost:5000/api/download/batch \ -H "Content-Type: application/json" \ -d '{"requests": [{"generator": "macro"}, {"generator": "hta"}]}' \ --output artifacts.zip ``` ## 🧩 Generator 模块 ### Office VBA Macro 通过 MSXML2.XMLHTTP + ADODB.Stream 下载并执行 payload,带有 AutoOpen/Workbook_Open 触发器、沙箱规避检查和可选的自删除功能。 ### HTA Payload 使用 PowerShell、BITSAdmin、Certutil、原始 XMLHTTP 或 WScript 投递并执行 payload 的 HTML 应用程序。可配置的 fallback 链会尝试多种方法。 ### VBA Stager 包含用于执行 shellcode(VirtualAlloc + RtlMoveMemory + CreateThread)、DLL 注入(OpenProcess + VirtualAllocEx + WriteProcessMemory + CreateRemoteThread)和进程镂空的完整 Win32 API 声明。 ### JavaScript Payload 适用于 WSH(ActiveXObject)、浏览器(DOM API)和 Node.js(http/child_process 模块)的跨运行时 JS payload。支持带命令执行的反向 HTTP beacon。 ### LNK Shortcut 基于 VBScript 的 .lnk 快捷方式创建器,具有图标伪装、热键触发和隐藏执行功能。可伪装为文档、文件夹或系统实用工具。 ### ISO Disk Image 生成带有嵌入式 droppers 的可启动 ISO 镜像的 PowerShell 脚本。支持在较旧版本的 Windows 上使用 autorun.inf 进行 AutoPlay 执行。 ## 🔒 混淆级别 | 级别 | 方法 | 大小开销 | 检测降低率 | |-------|--------|--------------|-------------------| | None | 原始输出 | 0% | 基准 | | Base64 | 标准编码 | ~33% | 低 | | XOR | 滚动密钥 XOR + Base64 | ~40% | 中 | | AES | AES-256 CBC 加密 | ~50% | 高 | | Full | 多层 + 垃圾代码 + 变量随机化 | ~80-120% | 极高 | ## 🛡 OPSEC 注意事项 1. **切勿在生产网络上生成 payload** — 使用隔离的 VM 或物理隔离系统 2. **加密所有 C2 流量** — 使用 HTTPS 进行通信,使用 DNS over HTTPS 进行数据外发 3. **使用重定向器** — 切勿直接暴露您的 C2 基础设施 4. **频繁轮换 payload** — 静态 payload 会很快被提取特征码 5. **首先在您的实验室中测试** — 在执行操作前验证检测率 6. **注意清理** — 生成的 artifact 可能会被本地 AV 隔离 ## 📁 项目结构 ``` omen/ ├── app.py # Flask web application ├── requirements.txt # Python dependencies ├── generators/ │ ├── __init__.py # Base Generator class │ ├── macro.py # Office VBA macro generator │ ├── hta.py # HTA payload generator │ ├── vba.py # VBA stager generator │ ├── js_payload.py # JavaScript payload generator │ ├── lnk.py # LNK shortcut generator │ └── iso.py # ISO disk image builder ├── static/ │ ├── css/ │ │ └── style.css # Glassmorphism dark theme │ └── js/ │ └── app.js # Frontend application logic ├── templates/ │ └── index.html # Main UI template ├── screenshots/ │ ├── architecture.png # Architecture diagram │ └── dashboard.png # Dashboard screenshot └── README.md # This file ``` ## 📄 许可证 版权所有 (c) 2025 **Adam-ZS** — https://github.com/Adam-ZS **仅供教育用途** — 完整条款请参见 [LICENSE](LICENSE)。 未经授权访问计算机系统是违法行为。在测试任何您不拥有的系统之前,您必须获得明确的书面许可。 *由 [Adam-ZS](https://github.com/Adam-ZS) 使用 ◈ 构建,仅用于授权测试和教育。*
标签:DNS 反向解析, Flask, Payload生成, 代码混淆, 免杀混淆, 搜索语句(dork), 数据可视化, 知识库安全, 请求拦截, 逆向工具