
Offusquer un code Python 2.x et 3.x
variables/classes/fonctions/noms-de-fichiers par des chaînes aléatoires d'une longueur définie, puis tous les caractères par leur valeur hexadécimalecommentaires, toutes les lignes d'espaces$ git clone https://github.com/Hnfull/Intensio-Obfuscator.git
$ python3 -m pip install -r Intensio-Obfuscator/requirements.txt
$ cd Intensio-Obfuscator/src/intensio_obfuscator
$ python3 intensio_obfuscator.py --help
$ python3 -m pip install intensio-obfuscator
$ intensio_obfuscator --help
| Fonctionnalités | Descriptions | But de l'obfuscation | Compatibilité avec tous les types de codes/syntaxes python |
|---|---|---|---|
| Supprimer les commentaires | Supprime tous les commentaires (cette fonctionnalité est exécutée par défaut) | Supprimer les informations comportementales potentielles | élevée python files 2 & 3 |
| Supprimer les espaces de ligne | Supprime toutes les lignes d'espaces (cette fonctionnalité est exécutée par défaut) | Réduire la visibilité du code en clair | élevée python files 2 & 3 |
| Correction du remplissage des classes/fonctions vides | Ajoute un remplissage aux classes et fonctions vides ; si la classe ou la fonction ne contient que des commentaires, la fonctionnalité par défaut Supprimer les commentaires peut potentiellement laisser une classe ou une fonction vide, cela évitera de générer une erreur (cette fonctionnalité est exécutée par défaut) | Aucun, seulement pour éviter de générer des erreurs | élevée python files 2 & 3 |
| Remplacement de chaîne en chaîne mélangée | Remplace tous les noms de variables/classes/fonctions par des chaînes aléatoires d'une longueur définie | Réduire la visibilité du code en clair - Retarder la déduction du comportement des variables/classes/fonctions | faible - élevée (dépend du nombre de noms à exclure ou non) python files 2 & 3 |
| Exclure des mots | Fichier pour exclure des mots (vérifier la documentation pour le format) uniquement pour la fonctionnalité d'obfuscation 'remplacer le nom de fichier' | Information non requise | Information non requise |
| Remplissage de script | Ajoute un remplissage de scripts aléatoires après chaque ligne | Réduire la visibilité du code en clair - Ajouter des extraits de code/classes/fonctions morts pour brouiller et retarder l'analyse du comportement du programme | élevée python file 2 & 3 |
| Remplacement des noms de fichiers | Remplace tous les noms de fichiers par des chaînes aléatoires d'une longueur définie | Réduire la visibilité du code en clair - Réduire la déduction des fonctionnalités des fichiers | faible python files 2 & 3 |
| Exclure des noms de fichiers | Fichier pour exclure des noms de fichiers (vérifier la documentation pour le format) uniquement pour la fonctionnalité d'obfuscation 'remplacer le nom de fichier' | Information non requise | Information non requise |
| Remplacement de chaîne en hexadécimal |
remplacement de chaîne en chaîne mélangée -> -rts, --replacetostrremplissage de script -> -ps, --paddingscriptremplacement de nom de fichier -> -rfn, --replacefilenameremplacement de chaîne en hexadécimal -> -rth, --replacetohex| Paramètres | Descriptions |
|---|---|
| -h, --help | afficher ce message d'aide et quitter |
| -i, --input | répertoire source - indiquer un répertoire contenant votre fichier |
| -o, --output | répertoire de sortie qui sera obfusqué - indiquer un répertoire vide qui contiendra votre fichier |
| -mlen, --mixerlength | définir la longueur des chaînes aléatoires générées [lower:32|medium:64|high:128] caractères lorsque les fonctionnalités --replacetostr ou --paddingscripts ou -rfn, --replacefilesname ou --replacetohex sont spécifiées, valeurs possibles : [lower|medium|high] |
| -ind, --indent | indiquer l'indentation de votre code source python, valeurs possibles : [2|4|8] |
| -rts, --replacetostr | activer la fonctionnalité d'obfuscation remplacement de chaîne en chaîne mélangée |
| --excludewords | fichier pour exclure des mots spécifiques (vérifier la documentation pour le format) uniquement pour la fonctionnalité d'obfuscation -rts, --replacetostr |
| -ps, --paddingscript | activer la fonctionnalité d'obfuscation remplissage de script |
| -rfn, --replacefilename | activer la fonctionnalité d'obfuscation remplacement de nom de fichier |
| --excludefiles | fichier pour exclure des noms de fichiers (vérifier la documentation pour le format) uniquement pour la fonctionnalité d'obfuscation -rfn, --replacefilename |
| -rth, --replacetohex | activer la fonctionnalité d'obfuscation remplacement de chaîne en hexadécimal (python files 2 only) |
| --version | vérifier la version actuelle |
| -v, --verbose | augmenter la verbosité |
| Remplace tous les caractères par leur valeur hexadécimale |
| Réduire la visibilité du code en clair / éviter d'être détecté par les commandes 'grep' par exemple |
moyenne python files 2 only |
| Correction de la suppression des fichiers pyc | Supprime tous les fichiers pyc dans le répertoire de sortie (cette fonctionnalité est exécutée par défaut) | Supprimer les fichiers déjà compilés sans avoir été obfusqués auparavant | élevée python files 2 & 3 |
| Longueur de mélangeur basse | Définit une longueur de chaînes aléatoires de 32 caractères lorsque les paramètres -rts, --replacetostr ou -ps, --paddingscripts ou -rfn, --replacefilesname ou -rth, --replacetohex sont spécifiés | Plus la longueur est grande, plus la visibilité du code est difficile | Information non requise |
| Longueur de mélangeur moyenne | Définit une longueur de chaînes aléatoires de 64 caractères lorsque les paramètres -rts, --replacetostr ou -ps, --paddingscripts ou -rfn, --replacefilesname ou -rth, --replacetohex sont spécifiés | Plus la longueur est grande, plus la visibilité du code est difficile | Information non requise |
| Longueur de mélangeur haute | Définit une longueur de chaînes aléatoires de 128 caractères lorsque les paramètres -rts, --replacetostr ou -ps, --paddingscripts ou -rfn, --replacefilesname ou -rth, --replacetohex sont spécifiés | Plus la longueur est grande, plus la visibilité du code est difficile | Information non requise |