Intensio Obfuscator : Obfuscate A Python Code 2.x & 3.x

Intensio Obfuscator is an obfuscate a python code 2.x and 3.x. Takes a python source code and transform it into an obfuscated python code, replace name of variables/classes/functions to random chars and defined length, removes comments, line breaks and add to each line a random script with an always different values.

Requirement

  • Python >= 3.5

Files Supported

  • Files written in python 2.x and 3.x

Installation

git clone https://github.com/Hnfull/Intensio-Obfuscator.git
cd Intensio-Obfuscator/intensio/

Also Read – ShellPhish : Phishing Tool For 18 Social Media

Features

FeaturesDescriptions
ReplaceReplace all names of variables/classes/functions defined and remove all line breaks
PaddingAdd random scripts after each line and remove all line breaks
RemoveRemove all commentaries and all line breaks
Mixer lowerGenerate words with 32 chars that replace variables/classes/functions defined in source code and in random scripts if ‘replace’ or ‘padding’ features are specified
Mixer mediumGenerate words with 64 chars that replace variables/classes/functions defined in source code and in random scripts if ‘replace’ or ‘padding’ features are specified
Mixer highGenerate words with 128 chars that replace variables/classes/functions defined in source code and in random scripts if ‘replace’ or ‘padding’ features are specified

Usages

ParametersDescriptions
-h, –helpshow this help message and exit
-f, –onefileif only one file
-d, –multiplefilesif multiple files (project)
-i, –inputsource file or directory – if multiple files indicate a directory that contain all your files
-c, –codelanguage used in input file or directory, default value: [python], possible value: [python]
-o, –outputoutput file or directory that will be obfuscated – if multiple file indicate a empty directory that will contain all your files
-m, –mixerlength levels of the number of characters for output variables /classes/functions, default value: [medium], possible values: [lower, medium, high]
-r, –replaceactivate the ‘replace’ obfuscation feature
-p, –paddingactivate the ‘padding’ obfuscation feature
-rm, –removeactivate the ‘remove’ obfuscation feature
  • If you want exclude python variables/classes/functions which will be taken by the ‘replace’ feature, edit intensio/exclude_python_words.txt
  • If you want to include python variables/classes/functions that are not included when launching the ‘replace’ feature, edit intensio/include_python_words.txt

Examples

Python target file(s):

  • Multiple files basic:
  • Multiple files advanced:
  • One files basic and advanced :
    • The command is same that for multiple file, just do not pointed a directory but a python file directly for -i and -oparameters, then change -d parameter into -f parameter

Possible Malfunctions

  • Do not define identically your names of local variables/classes/functions to python keywords or names of functions/classes of imported python libraries !
  • If a variable/class/function has an identical name with a word between ' ' or " " in print() function, your text will have the same value that the mixer variables/class/function.
  • If a variable/class/function has an identical name with a word in after # (commentary) your text will have the same value that the mixer variables – class – function, but if between """ or ''' without a variables before, no replacing is performed.
  • If you named your variables/classes – functions in the same way as python keywords or names of functions/class of imported python libraries, an error may appear. Edit intensio/excluded_python_words.txt to add the variables not to obfuscate or change your names of local variables/classes – fuctions, if your variables/classes – functions have the same name as a keyword it, he will be obfuscated and errors will appear.

To Do

  • Version 1.0.1-x:
    • Code optimization
    • Fix bugs and problems
    • Improved features already present
  • Version 1.1.0:
    • Support files written in C
  • Version 1.2.0:
    • Support files written in C++

Disclamer

Intensio-Obfuscator is for education/research purposes only. The author takes NO responsibility ay for how you choose to use any of the tools provided.

R K

Recent Posts

Bash Scripting Best Practices Every Beginner Should Know

Introduction Bash scripting is a powerful way to automate Linux tasks, but writing a script…

23 hours ago

How To Create A Self-Signed SSL Certificate Using Bash And OpenSSL

Introduction A self-signed SSL certificate is a certificate that is created and signed by the…

1 day ago

How To Debug Bash Scripts Using bash -x And set Commands

Introduction Debugging is an important part of Bash scripting. When a script does not work…

1 day ago

How To Use Cron Jobs With Bash Scripts For Automation

Introduction Cron jobs are used in Linux to run commands or Bash scripts automatically at…

1 day ago

How To Use Pipes In Bash Scripts For Command Chaining

Introduction Pipes are an important feature in Linux and Bash scripting. A pipe allows you…

1 day ago

How To Use grep, awk, And sed In Bash Scripts

Introduction The grep, awk, and sed commands are powerful text-processing tools in Linux. They are…

1 day ago