
Moteur d'obfuscation Python au niveau AST avec chiffrement AES-256, protection de la charge utile à l'exécution et aplatissement du flux de contrôle pour la recherche en sécurité et l'analyse défensive.
ObfuXtreme est un moteur d'obfuscation Python avancé axé sur l'obfuscation structurelle, les transformations au niveau AST et la protection des charges utiles à l'exécution.
Il est conçu pour la recherche en sécurité, l'analyse défensive et les études de rétro-ingénierie — pas pour un usage malveillant.
✔ Produit un code Python fortement obscurci
✔ Brise l'analyse statique et la détection basée sur les signatures
✔ Utilise des transformations AST sûres (pas de modification de bytecode)
✔ Chargeur à l'exécution avec exécution de charge utile chiffrée
Utilisez-le de manière responsable et éthique.
ObfuXtreme est un projet Proof-of-Concept (PoC) destiné strictement à :
Les auteurs déclinent toute responsabilité en cas d'utilisation abusive.
En utilisant ce projet, vous assumez l'entière responsabilité de la manière dont il est utilisé.
| Fonctionnalité | Statut | Remarques |
|---|---|---|
| Chiffrement AES-256-CBC | ✅ | Chiffre la charge utile, les chaînes et les octets |
| IV aléatoire par chaîne | ✅ | Empêche l'analyse de fréquence et de motifs |
| Stockage de clé par division XOR | ✅ | Clé AES et IV divisés en plusieurs parties XOR |
| Obfuscation au niveau AST | ✅ | Transformations sûres utilisant ast de Python |
| Renommage des variables locales | ✅ | Arguments, globales, non locales préservées |
| Aplatissement sécurisé du flux de contrôle | ✅ | Uniquement appliqué aux fonctions simples et linéaires |
| Chargeur à l'exécution chiffré | ✅ | Charge utile déchiffrée et exécutée à l'exécution |
| Reconstruction automatique par version Python | ✅ | Version de construction imposée à l'exécution |
| Multi-plateforme | ✅ | Windows, Linux, macOS |
| Gestion propre des échecs | ✅ | Erreurs claires au lieu de plantages |
| Compatible VT (Recherche) | ⚠️ | Obfuscation structurelle uniquement |
ObfuXtreme verrouille automatiquement la sortie sur la version Python utilisée lors de l'obfuscation.
Exemple :
Build with Python 3.12 → output runs only on Python 3.12
Ceci est intentionnel et empêche :
Si vous changez de version Python, reconstruisez le script.
Installation de la dépendance :
pip install pycryptodome
La sortie obscurcie nécessite également
pycryptodomesauf si elle est empaquetée avec PyInstaller.
git clone https://github.com/spyboy-productions/ObfuXtreme.git
cd ObfuXtreme
pip install -r requirements.txt
python ObfuXtreme.py your_script.py
ou
python ObfuXtreme.py your_script.py obfuscated.py
obfuscated.py
python obfuscated.py
Sans ObfuXtreme
Avec ObfuXtreme
Ces résultats démontrent l'efficacité de l'obfuscation structurelle uniquement à des fins de recherche et d'analyse.
.exe autonome (Python non requis)Si vous souhaitez distribuer sans nécessiter Python ou pycryptodome :
pip install pyinstaller
pyinstaller --onefile --noconsole obfuscated.py
Cela regroupe :
« ObfuXtreme obfuscue déjà le code, alors pourquoi le système d'exploitation est-il important ? »
Parce que l'obfuscation et l'empaquetage sont deux étapes différentes :
ObfuXtreme outputs Python code
The obfuscated .py file is cross-platform
It still requires Python + pycryptodome
PyInstaller produces native binaries
Native binaries are OS-specific
Obfuscation ≠ packaging
.py obscurci est portable