Skip to content
Obfuscate a python code 2.x and 3.x
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs create readme.md in examples folder Jun 22, 2019
intensio update Banner in commentary Jun 19, 2019
.gitignore add Intensio-Obfuscator test project Jun 17, 2019
CHANGELOG.md update CHANGELOG.md version 1.0.3 Jun 17, 2019
LICENSE fix issue #7 & #8 Jun 15, 2019
README.md update demo Jun 22, 2019
requirements.txt Rename requirement.txt to requirements.txt Jun 16, 2019

README.md

Intensio-Obfuscator (Beta)

  • 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 differents values.

Requirements

  • Python >= 3.5
  • requirements.txt

Files supported

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

Installation

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

pip3 install -r Intensio-Obfuscator/requirements.txt

cd Intensio-Obfuscator/intensio/

python3.x intensio_obfuscator.py --help

Features

Features Descriptions
Replace Replace all names of variables/classes/functions defined and remove all line breaks
Padding Add random scripts after each line and remove all line breaks
Rcommentaries Remove all commentaries and all line breaks
Rprint Remove all print functions and all line breaks
Mixer lower Generate 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 medium Generate 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 high Generate 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

Parameters Descriptions
-h, --help show this help message and exit
-i, --input source directory - indicate a directory that contain your file(s)
-c, --code language used in input directory, default value: [python], possible value: [python]
-o, --output output directory that will be obfuscated - indicate a empty directory that will contain your file(s)
-m, --mixer length levels of the number of characters for output variables /classes/functions, default value: [medium], possible values: [lower, medium, high]
-r, --replace activate the 'replace' obfuscation feature
-p, --padding activate the 'padding' obfuscation feature
-rc, --rcommentaries activate the 'rcommentaries' obfuscation feature
-rp, --rprint activate the 'rprint' obfuscation feature
  • If you want exclude python variables/classes/functions which will be taken by the 'replace' feature, edit intensio/exclude/python/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/include_python_words.txt

Examples

Demo

Python target files demo

Recommendations

Malfunctions

Todo

  • 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++

License

  • MIT

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
You can’t perform that action at this time.