ObfuXtreme 是一个高级 Python 代码混淆引擎,专注于 结构性混淆、AST 层变换 和 运行时载荷保护。
它专为 安全研究、防御分析 和 逆向工程研究 而设计 — 不用于恶意用途。
✔ 生成严重混淆的 Python 代码
✔ 破坏静态分析和基于签名的检测
✔ 使用安全的 AST 变换(无字节码补丁)
✔ 运行时加载器,支持加密载荷执行
负责任且合乎道德地使用。
ObfuXtreme 是一个 概念验证(PoC) 项目,严格用于:
作者对 滥用行为不承担任何责任。
使用此项目即表示 您对使用方式承担全部责任。
ObfuXtreme 自动将输出锁定到混淆时使用的 Python 版本。
示例:
使用 Python 3.12 构建 → 输出仅能在 Python 3.12 上运行
这是有意为之,可防止:
如果更改 Python 版本,请 重新构建脚本。
安装依赖:
pip install pycryptodome
混淆后的输出也需要
pycryptodome,除非使用 PyInstaller 打包。
git clone https://github.com/spyboy-productions/ObfuXtreme.git
cd ObfuXtreme
pip install -r requirements.txt
python ObfuXtreme.py your_script.py
或
python ObfuXtreme.py your_script.py obfuscated.py
obfuscated.py
python obfuscated.py
不使用 ObfuXtreme
使用 ObfuXtreme
这些结果仅用于展示 结构性混淆效果 以进行研究和分析。
.exe(无需 Python)如果您希望在不要求安装 Python 或 pycryptodome 的情况下分发:
pip install pyinstaller
pyinstaller --onefile --noconsole obfuscated.py
这将打包:
“ObfuXtreme 已经混淆了代码,为什么操作系统还重要?”
因为混淆和打包是两个不同的步骤:
ObfuXtreme 输出 Python 代码
混淆后的 .py 文件是跨平台的
它仍然需要 Python + pycryptodome
PyInstaller 生成本地二进制文件
本地二进制文件是操作系统特定的
混淆 ≠ 打包
.py 文件是 可移植的| 功能 | 状态 | 说明 |
|---|
| AES-256-CBC 加密 | ✅ | 加密载荷、字符串和字节 |
| 每个字符串随机 IV | ✅ | 防止频率和模式分析 |
| XOR 分割密钥存储 | ✅ | AES 密钥和 IV 拆分为多个 XOR 部分 |
| AST 层混淆 | ✅ | 使用 Python ast 进行安全变换 |
| 局部变量重命名 | ✅ | 保留参数、全局变量和非局部变量 |
| 安全控制流平坦化 | ✅ | 仅应用于简单的线性函数 |
| 加密运行时加载器 | ✅ | 运行时解密并执行载荷 |
| 按 Python 版本自动重建 | ✅ | 运行时强制构建版本 |
| 跨平台 | ✅ | Windows, Linux, macOS |
| 清晰失败处理 | ✅ | 清晰错误而非崩溃 |
| VT友好(研究用途) | ⚠️ | 仅结构性混淆 |