anshul-verma-creator/Custom-Payload-Encoder-Obfuscation-Framework

GitHub: anshul-verma-creator/Custom-Payload-Encoder-Obfuscation-Framework

一个用于研究攻击性 Payload 如何通过编码和混淆绕过签名检测的教学型安全工具框架。

Stars: 1 | Forks: 0

# 自定义 Payload 编码器与混淆框架 ## 项目概述 一个实用的 payload 编码和混淆框架,旨在研究攻击性 payload 如何通过转换来规避基于特征检测的系统(AV、EDR、IPS、防火墙)。 ### 功能说明 | 模块 | 功能 | |--------|-----------| | **编码器 (Encoder)** | Base64、XOR(用户自定义密钥)、ROT13、多层链式编码 | | **混淆器 (Obfuscator)** | 6 种不同的字符串混淆技术 | | **规避测试器 (Evasion Tester)** | 模拟的基于特征的检测引擎,包含 35+ 个默认特征 | | **报告生成器 (Report Generator)** | 包含绕过率的完整对比报告 | ## 项目结构 ``` payload encoder/ ├── main.py ← Entry point (interactive + CLI) ├── encoder.py ← Encoding module (Base64 / XOR / ROT13) ├── obfuscator.py ← String obfuscation module ├── evasion_tester.py ← Detection engine + evasion comparison ├── report_generator.py ← Report builder ├── samples/ │ └── sample_payloads.txt ← Example test payloads ├── reports/ ← Auto-created, stores generated .txt reports └── README.md ``` ## 快速开始 ### 前置条件 - Python 3.8 或更高版本 - 无外部依赖 — 仅使用 Python 标准库 ### 运行(交互模式) ``` python main.py ``` ### 运行(CLI 模式) ``` # 单个 payload python main.py --payload "whoami" # 自定义 XOR key python main.py --payload "net user" --xor-key 77 # 多层编码(先 base64 → 再 xor) python main.py --payload "ipconfig" --layer base64,xor --xor-key 33 # 从文件加载 payload python main.py --file samples/sample_payloads.txt # Quiet mode(隐藏控制台输出,仍保存报告) python main.py --payload "mimikatz" --quiet --output-dir ./results ``` ## 模块 ### `encoder.py` — 编码模块 | 函数 | 描述 | |----------|-------------| | `base64_encode(payload)` | 对字符串进行 Base64 编码 | | `base64_decode(encoded)` | 将 Base64 解码回明文 | | `xor_encode(payload, key)` | 将每个字符与密钥(0–255)进行 XOR 运算,返回十六进制字符串 | | `xor_decode(hex_str, key)` | 逆向 XOR 编码 | | `rot13_encode(payload)` | 应用 ROT13 替换密码 | | `rot13_decode(encoded)` | 逆向 ROT13(自逆运算) | | `layered_encode(payload, methods, xor_key)` | 链式执行多个编码步骤 | ### `obfuscator.py` — 字符串混淆模块 | 技术 | 描述 | |-----------|-------------| | 垃圾字符插入 | 在 payload 字符之间注入随机字符 | | 字符分割 | 将字符串表示为 `"c"+"m"+"d"` 拼接形式 | | 反转 | 反转 payload 字符串 | | Unicode 转义 | 将每个字符转换为 `\u00XX` 形式 | | 大小写交替 | 交替大/小写形式(例如 `WhOaMi`) | | 十六进制交错 | 使用空字节分隔符将字符转换为十六进制 | ### `evasion_tester.py` — 检测引擎 - 35+ 个默认特征,涵盖:shell 命令、下载木马、反向 shell 模式、SQL 注入、XSS 以及已知的恶意软件名称 - `SignatureDetector.scan(payload)` — 扫描单个 payload - `SignatureDetector.compare(original, variants)` — 比较原始 payload 与所有编码/混淆后的变体 - 返回带有绕过率的结构化 `EvasionReport` ### `report_generator.py` — 报告引擎 生成一个结构化的 `.txt` 报告,包含: - 编码后的 payload 输出 - 混淆后的 payload 输出 - 各个变体的检测结果 - 绕过率 / 检出率统计 - 解码验证部分 ## 示例输出 ``` ╔══════════════════════════════════════════════════════════════╗ ║ CUSTOM PAYLOAD ENCODER & OBFUSCATION FRAMEWORK v1.0 ║ ╚══════════════════════════════════════════════════════════════╝ STEP 1 — ENCODING [Base64] d2hvYW1p [XOR k=42] 5d 46 52 47 52 4b [ROT13] jubnzv STEP 2 — STRING OBFUSCATION [Junk Insert] w!@#h#$o$%a%^m^&i… [Char Split] "w"+"h"+"o"+"a"+"m"+"i" [Reversal] imaohw [Unicode Escape] \u0077\u0068\u006f\u0061\u006d\u0069 [Case Alternation] WhOaMi [Hex Interleave] \x77\x00\x68\x00\x6f… STEP 3 — EVASION TESTING Original → 🔴 DETECTED Base64 encoded → 🟢 BYPASSED XOR encoded → 🟢 BYPASSED ROT13 encoded → 🟢 BYPASSED … Bypass rate : 88.9% Detection rate: 11.1% ``` ## 工作流架构 ``` START │ ▼ Load Payload (string / file) │ ▼ Select Encoding Methods (Base64 / XOR / ROT13 / Layered) │ ▼ Apply String Obfuscation (6 techniques) │ ▼ Run Evasion Test (signature matching on original + all variants) │ ▼ Generate Report → ./reports/evasion_report_.txt │ ▼ END ``` ## 学习成果 - payload 如何转换以规避静态特征检测 - XOR / Base64 编码为何能绕过简单的模式匹配 - 混淆如何增加恶意软件分析的难度 - 为什么需要分层安全和行为检测 - 红队如何在实战中隐藏恶意内容 ## 许可证与道德规范 本项目仅用于: - 学术课程作业和学习 - 实验室环境中的授权渗透测试 - 获得明确书面许可的安全研究 **滥用此框架是非法且不道德的行为。在对任何系统进行测试之前,请务必获得书面许可。**
标签:DNS 反向解析, Python, 免杀技术, 无后门, 暴力破解检测, 混淆框架, 载荷编码, 逆向工具