hnfull / intensio-obfuscator Goto Github PK
View Code? Open in Web Editor NEWObfuscate a python code 2.x and 3.x
License: MIT License
Obfuscate a python code 2.x and 3.x
License: MIT License
I think there should be an option to keep file/directory from obfuscation(this feature will be handy as you need to retain the entry point of the application to run it)
Add support of new f-Strings format (PEP 498) appeared at python3.6 for --rts, --replacetostr
feature
arg1 = "2"
arg2 = "6"
p = f'{arg1} / {arg2}'
print(p)
If there is a function with the same name of a method of a module from Standard Library, the method is being obfuscated. Better explained with a example.
Example file:
import time
def sleep(seconds):
time.sleep(seconds)
sleep(10)
File generated with Intensio-Obfuscator and arguments -rts -v:
import time
def hIJMNIXyJUMLsJhKNxrITAabtKOzJWsbPsoRkBFdHhAIQZKsMucumMGaTFQBiKDv(seconds):
time.hIJMNIXyJUMLsJhKNxrITAabtKOzJWsbPsoRkBFdHhAIQZKsMucumMGaTFQBiKDv(seconds)
hIJMNIXyJUMLsJhKNxrITAabtKOzJWsbPsoRkBFdHhAIQZKsMucumMGaTFQBiKDv(10)
The third line should have been:
time.sleep(seconds)
The verbose output while generating the obfuscation:
********************* [ Analyze and setup environment ] **********************
[+] Running analyze input of 1 file(s)...
Analysis |================================| 100%
[+] File input found :
-> /home/dodo/tmp/safeToDelete/nuevo1/main.py
[+] Analyze input argument '/home/dodo/tmp/safeToDelete/nuevo1' -> Successful
[!] Output '/home/dodo/tmp/safeToDelete/deploy1' already exists, do you want delete it ? (Y/N) :
[+] Running analyze output of 1 file(s)...
Analysis |================================| 100%
[+] Output files copy :
-> /home/dodo/tmp/safeToDelete/deploy1/main.py
[+] Analyze and setup output argument environment '/home/dodo/tmp/safeToDelete/deploy1' -> Successful
********************** [ Obfuscation delete comments ] ***********************
[+] Running delete comments in 1 file(s)...
Obfuscation |================================| 100%
Check |================================| 100%
-> 0 lines of comments deleted
[+] Obfuscation delete comments -> Successful
******************** [ Obfuscation delete line space(s) ] ********************
Obfuscation |================================| 100%
Check |================================| 100%
[+] Obfuscation delete lines spaces -> Successful
******************* [ Correction padding empty class(es) ] *******************
Correction |================================| 100%
[!] No empty class found in /home/dodo/tmp/safeToDelete/deploy1
****************** [ Correction padding empty function(s) ] ******************
Correction |================================| 100%
[!] No empty function found in /home/dodo/tmp/safeToDelete/deploy1
************ [ Obfuscation replace string(s) to string(s) mixed ] ************
[+] Running replacement of variables/classes/functions in 1 file(s), he can be long... you have time to make a coffee :)
Setting up |================================| 100%
[+] Variable(s) found :
-> No result
[+] Class(es) found :
-> No result
[+] Function(s) found :
-> sleep : hIJMNIXyJUMLsJhKNxrITAabtKOzJWsbPsoRkBFdHhAIQZKsMucumMGaTFQBiKDv
[+] String excluded found in 'exclude/string_to_string_mixed/exclude_word_by_user.txt' that have been matched from '/home/dodo/tmp/safeToDelete/deploy1' :
-> No result
[+] String excluded found in 'exclude/string_to_string_mixed/exclude_word_do_not_modify.txt' that have been matched from '/home/dodo/tmp/safeToDelete/deploy1' :
-> No result
Obfuscation |================================| 100%
Check |================================| 100%
-> 1 variable(s)/class(es)/function(s) replaced in 1 file(s)
[+] Obfuscation replace string to string mixed -> Successful
****************** [ Obfuscation adding padding script(s) ] ******************
[!] Obfuscation [ padding script ] no asked !
******************** [ Obfuscation replace file(s) name ] ********************
[!] Obfuscation [ replace file name ] feature no asked !
****************** [ Obfuscation replace string(s) to hex ] ******************
[!] Obfuscation [ replace string to hex ] feature no asked !
********************* [ Correction delete .pyc file(s) ] *********************
[!] No .pyc file(s) found in /home/dodo/tmp/safeToDelete/deploy1
test = "I am test"
print("I am test !")
lwozKBSnzKDTBhaVgsLuRFnoScsudJFN = "I am test"
print("I am lwozKBSnzKDTBhaVgsLuRFnoScsudJFN !")
test = "I am test"
print("I am test !")
lwozKBSnzKDTBhaVgsLuRFnoScsudJFN = "I am test"
print("I am test !") # test didn't been replaced
cmd, _, action = varExemple.partition(' ')
cmd
and action
variables, not taking when --replace
parameter is enableC = "letter"
if "C:" in string or "D:" in string:
print("test")
C:
string in if
is obfuscated because local variable C
exist and char :
after char C
in if
cause the problem , this is due to bad check words, because var C
and strings C:
is not the same
a = [
1,
2
]
2
number and generate an error when start output programYour code has problems if use 3 times " .
I guess you programm gets distracted by that.
it is possible to replace strings to hex, and that python can interpret the hex as a string. for example
Python 3.7.3 (default, Jun 24 2019, 04:54:02)
[GCC 9.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("\x41")
A
def str2hex(string):
build = ""
for k in string:
build += '\\x' + str(k.encode().hex())
return build
now it can't support mac.
#!/usr/bin/python
# -*- coding: utf-8 -*-
'Phone SMS Text Message'
# packages
import twilio.rest
# globals
command = True
packages = ['twilio']
platforms = ['win32','linux2','darwin']
results = {}
usage = 'phone [sid=SID] [token=TOKEN] [number=NUMBER] [message=MESSAGE]'
description = """
Use an anonymous online phone number to send an SMS text message
containing download links to executable client droppers disguised
as a link to a funny image/video on Imgur/YouTube sent from a friend
"""
# main
def run(message=None, number=None, sid=None, token=None):
"""
Send a SMS text message from an anonymous online phone
number via Twilio
`Required`
:param str message: text message body
:param str number: recipient phone number
:param str sid: Twilio account SID
:param str token: Twilio account auth token
"""
try:
if not all([message, number, sid, token]):
return globals()['usage']
number = '+{}'.format(str().join([i for i in str(number) if str(i).isdigit()]))
cli = twilio.rest.Client(sid, token)
phone = cli.outgoing_caller_ids.list()[0].phone_number
msg = cli.api.account.messages.create(to=number, from_=phone, body=message)
return "SUCCESS: text message sent to {}".format(number)
except Exception as e:
return "{} error: {}".format(run.func_name, str(e))
python3 intensio_obfuscator.py -i test -c python -o test1 -m lower -rp -ps -rc -rts
the import code is miss!
#!/usr/bin/python
# -*- coding: utf-8 -*-
description = """
containing download links MMjHlBykqNVnADtmCsRJJaaOUNtnBKdv ReanVHFoijmruZsFxhCLSbcoXTZCibkC client droppers disguised
as iRKhtxAKwetAxaYpYLBXFYAoHklLWJeZ link MMjHlBykqNVnADtmCsRJJaaOUNtnBKdv iRKhtxAKwetAxaYpYLBXFYAoHklLWJeZ funny image/itfLjvuJYYDwMMwQtqVPOpaszYrWRqsu on Imgur/YouTube sent from iRKhtxAKwetAxaYpYLBXFYAoHklLWJeZ friend
yaUlyfEhltEldeEOgpZlJdnAHtKdbttC = 'JOALkkeBQwxOZWJwLESbrypEdzmGigOd'
lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs = 'nmpkUKaaQLQICnXccmVDhetUunaBgMmL'
KbaBBhuoLDlLFCMkejjWqIcLdiieTDmA = 'ntWwDTXJJcrXneYQutWUQYKjYZxCSzFr'
vUlILkmSpBHErRZTClqGRxpzWQGaeVAi = 'qFrStsCYfTDMLtkfEVQFPZWwlHdNnmDD'
HOQYhQYdFrbQWKORFubvBxwQdKDFqJDE = 'fROlGYKUFpFztysTaGOhBZVzvTetvaGw'
if yaUlyfEhltEldeEOgpZlJdnAHtKdbttC in lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs:
yaUlyfEhltEldeEOgpZlJdnAHtKdbttC = HOQYhQYdFrbQWKORFubvBxwQdKDFqJDE
if lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs in KbaBBhuoLDlLFCMkejjWqIcLdiieTDmA:
lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs = vUlILkmSpBHErRZTClqGRxpzWQGaeVAi
elif lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs in yaUlyfEhltEldeEOgpZlJdnAHtKdbttC:
KbaBBhuoLDlLFCMkejjWqIcLdiieTDmA = lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs
if KbaBBhuoLDlLFCMkejjWqIcLdiieTDmA in lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs:
lkLgJwYKwxcUxsdjhTpKFGMwZOKrHHLs = HOQYhQYdFrbQWKORFubvBxwQdKDFqJDE
Send iRKhtxAKwetAxaYpYLBXFYAoHklLWJeZ SMS text BxIgmXKCaWZoemMusqykCIcvzDyZixpF from an anonymous online phone
number via Twilio
`Required`
:param str BxIgmXKCaWZoemMusqykCIcvzDyZixpF: text BxIgmXKCaWZoemMusqykCIcvzDyZixpF body
:param str number: recipient phone number
:param str sid: Twilio account SID
:param str token: Twilio account auth token
Consider this sample code
class DatabaseWriter:
def __init__(self, filename, compresslevel=5):
self._file = gzip.open(filename, "wt", encoding="utf-8", compresslevel=compresslevel)
Variables compresslevel
and encoding
will be replaced with random names that are not acceptable by gzip
builtin library. Also all three occurrences of compresslevel
will be replaced with the same name
inspect
(https://docs.python.org/3/library/inspect.html)Hello, when obfuscating filenames, i'm experiencing a ModuleNotFoundError error. Maybe I'm doing something wrong. I'm on Debian Testing amd64. Steps to reproduce:
Put this two files in a dir:
File main.py:
import bye
bye.printMessage()
File bye.py:
def printMessage():
print("See You Later Alligator")
After obfuscating the dir with -rfn parameter, if you try to run the file that corresponds to main.py, you will see:
python3 ./HShhZPALpXzosVYylDpXUnDtyoQWEYtdNOcWdYmgXLkRIUscGlCoqwFoZpTAZwbu.py
Traceback (most recent call last):
File "./HShhZPALpXzosVYylDpXUnDtyoQWEYtdNOcWdYmgXLkRIUscGlCoqwFoZpTAZwbu.py", line 1, in <module>
import bye
ModuleNotFoundError: No module named 'bye'
Seems like Intensio-Obfuscator is threating # symbols inside a string as comments.
Example code to reproduce the problem:
text = "hello#world"
print(text)
running Intensio-Obfuscator without arguments, I get:
[-] Need at least one argument [-rts] - [-ps] - [-rfn] - [-rth]
File "/tmp/tesst/deploy1/main.py", line 1
text = "hello
^
SyntaxError: EOL while scanning string literal
And running it with -v -ps:
********************* [ Analyze and setup environment ] **********************
[+] Running analyze input of 1 file(s)...
Analysis |================================| 100%
[+] File input found :
-> /tmp/tesst/nuevo1/main.py
[+] Analyze input argument '/tmp/tesst/nuevo1' -> Successful
[!] Output '/tmp/tesst/deploy1' already exists, do you want delete it ? (Y/N) :
[+] Running analyze output of 1 file(s)...
Analysis |================================| 100%
[+] Output files copy :
-> /tmp/tesst/deploy1/main.py
[+] Analyze and setup output argument environment '/tmp/tesst/deploy1' -> Successful
********************** [ Obfuscation delete comments ] ***********************
[+] Running delete comments in 1 file(s)...
Obfuscation |================================| 100%
Check |================================| 100%
-> 1 lines of comments deleted
[+] Obfuscation delete comments -> Successful
******************** [ Obfuscation delete line space(s) ] ********************
Obfuscation |================================| 100%
Check |================================| 100%
[+] Obfuscation delete lines spaces -> Successful
******************* [ Correction padding empty class(es) ] *******************
Correction |================================| 100%
[!] No empty class found in /tmp/tesst/deploy1
****************** [ Correction padding empty function(s) ] ******************
Correction |================================| 100%
[!] No empty function found in /tmp/tesst/deploy1
************ [ Obfuscation replace string(s) to string(s) mixed ] ************
[!] Obfuscation [ replace string to string ] mixed no asked !
****************** [ Obfuscation adding padding script(s) ] ******************
[+] Running add of random scripts in 1 file(s)...
Setting up |================================| 100%
Obfuscation |================================| 100%
Check |================================| 100%
-> 1 scripts added in 1 file(s)
-> 10 lines added in 1 file(s)
[+] Obfuscation padding script -> Successful
******************** [ Obfuscation replace file(s) name ] ********************
[!] Obfuscation [ replace file name ] feature no asked !
****************** [ Obfuscation replace string(s) to hex ] ******************
[!] Obfuscation [ replace string to hex ] feature no asked !
******************** [ Obfuscation delete line space(s) ] ********************
Obfuscation |================================| 100%
Check |================================| 100%
[+] Obfuscation delete lines spaces of padding scripts-> Successful
********************* [ Correction delete .pyc file(s) ] *********************
[!] No .pyc file(s) found in /tmp/tesst/deploy1
File "/tmp/tesst/deploy1/main.py", line 1
text = "hello
^
SyntaxError: EOL while scanning string literal
Refer # issue 34
Hi, this one was hard to spot and reduce to a minimal working example. Is like the obfuscator thinks that part of a string, is a variable defined earlier, so it obfuscates it.
Example file:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
for i in (0, 1):
i=i+1
text = "i)P"
File generated with Intensio-Obfuscator with -rts -v parameters.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
for JYgNfXRzUIfZzVXxGBGNAwPEHgORxvdYZGenRSRlkluADRpUyTiBnpiqvsDgTuWq in (0, 1):
JYgNfXRzUIfZzVXxGBGNAwPEHgORxvdYZGenRSRlkluADRpUyTiBnpiqvsDgTuWq=JYgNfXRzUIfZzVXxGBGNAwPEHgORxvdYZGenRSRlkluADRpUyTiBnpiqvsDgTuWq+1
HJggwujJzKiRfGTXQKxpcjouanKEWXGJUueytnjnBsMsLLDoZkEdIZjZHcYKxpRq = "JYgNfXRzUIfZzVXxGBGNAwPEHgORxvdYZGenRSRlkluADRpUyTiBnpiqvsDgTuWq)P"
I expected the last line to be:
HJggwujJzKiRfGTXQKxpcjouanKEWXGJUueytnjnBsMsLLDoZkEdIZjZHcYKxpRq = "i)P"
The verbose output while obfuscating the example file was:
********************* [ Analyze and setup environment ] **********************
[+] Running analyze input of 1 file(s)...
Analysis |================================| 100%
[+] File input found :
-> /home/dodo/tmp/safeToDelete/tmp1/main.py
[+] Analyze input argument '/home/dodo/tmp/safeToDelete/tmp1' -> Successful
[!] Output '/home/dodo/tmp/safeToDelete/deploy1' already exists, do you want delete it ? (Y/N) :
[+] Running analyze output of 1 file(s)...
Analysis |================================| 100%
[+] Output files copy :
-> /home/dodo/tmp/safeToDelete/deploy1/main.py
[+] Analyze and setup output argument environment '/home/dodo/tmp/safeToDelete/deploy1' -> Successful
********************** [ Obfuscation delete comments ] ***********************
[+] Running delete comments in 1 file(s)...
Obfuscation |================================| 100%
Check |================================| 100%
-> 0 lines of comments deleted
[+] Obfuscation delete comments -> Successful
******************** [ Obfuscation delete line space(s) ] ********************
Obfuscation |================================| 100%
Check |================================| 100%
[+] Obfuscation delete lines spaces -> Successful
******************* [ Correction padding empty class(es) ] *******************
Correction |================================| 100%
[!] No empty class found in /home/dodo/tmp/safeToDelete/deploy1
****************** [ Correction padding empty function(s) ] ******************
Correction |================================| 100%
[!] No empty function found in /home/dodo/tmp/safeToDelete/deploy1
************ [ Obfuscation replace string(s) to string(s) mixed ] ************
[+] Running replacement of variables/classes/functions in 1 file(s), he can be long... you have time to make a coffee :)
Setting up |================================| 100%
[+] Variable(s) found :
-> i : JYgNfXRzUIfZzVXxGBGNAwPEHgORxvdYZGenRSRlkluADRpUyTiBnpiqvsDgTuWq
-> text : HJggwujJzKiRfGTXQKxpcjouanKEWXGJUueytnjnBsMsLLDoZkEdIZjZHcYKxpRq
[+] Class(es) found :
-> No result
[+] Function(s) found :
-> No result
[+] String excluded found in 'exclude/string_to_string_mixed/exclude_word_by_user.txt' that have been matched from '/home/dodo/tmp/safeToDelete/deploy1' :
-> No result
[+] String excluded found in 'exclude/string_to_string_mixed/exclude_word_do_not_modify.txt' that have been matched from '/home/dodo/tmp/safeToDelete/deploy1' :
-> No result
Obfuscation |================================| 100%
Check |================================| 100%
-> 2 variable(s)/class(es)/function(s) replaced in 1 file(s)
[+] Obfuscation replace string to string mixed -> Successful
****************** [ Obfuscation adding padding script(s) ] ******************
[!] Obfuscation [ padding script ] no asked !
******************** [ Obfuscation replace file(s) name ] ********************
[!] Obfuscation [ replace file name ] feature no asked !
****************** [ Obfuscation replace string(s) to hex ] ******************
[!] Obfuscation [ replace string to hex ] feature no asked !
********************* [ Correction delete .pyc file(s) ] *********************
[!] No .pyc file(s) found in /home/dodo/tmp/safeToDelete/deploy1
source code:
a = [
1, 2, 3, 4, 5,
6, 7, 8, 9, 0,
]
for _ in a:
print('xx'
'xx')
command
python3 intensio_obfuscator.py -i t -c python -o s -m high -p
running output file
λ python3 x.py
File "x.py", line 2
mRPaDyfOMcwRmabGZJeyTdjmgpripLfmwSbyXgRdzTfGPKCrAvDVIVWYQNaXoVsKkYwfuSckBGuCYkDPdUXVqQKRXAgifdERowdVqwVmNZJvJXHclqIOlOAKGixJtTWM = 'KzAydUQYNeQHOEcbwskdvfJQWbfXTJsieWSJLjkQpwKvctoYMbyKRARqCTnqBkntcBuNCoXInfaeQNHslfHquZDTATCbRkhEqBKMOFdjTLaiIqGogrHOgSMoAqypVsuQ'
^
SyntaxError: invalid syntax
the output file is like:
a = [
obfus_str1 = 'xxxxx'
obfus_str2 = 'xxxxx'
# etc.
'Remove pyc file' section in 'intensio_obfuscator.py' not handled correctly in if operator.
Failed result appear even if he no pyc file in output directory
""" and ''''
quotes correctly with this formattest = """
--- Display -----
name : test """
How to set the encoding ?
My src file is UTF8, but it seems Intensio-Obfuscator process it as a GBK file...
====================== the following is the error msg ==================
File "intensio_obfuscator.py", line 339, in
main()
File "intensio_obfuscator.py", line 133, in main
verboseArg=args.GetArgsValue().verbose
File "D:\Dev\Intensio-Obfuscator-master\intensio\core\obfuscation\intensio_delete.py", line 106, in Comments
for eachLine in inputFile:
File "D:\Python3\lib\fileinput.py", line 252, in next
line = self._readline()
File "D:\Python3\lib\fileinput.py", line 366, in _readline
return self._readline()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 688: illegal multibyte sequence
import lib1.lib2.lib3
lib = lib1.lib2.lib3.test
This doesn't work when obfuscated.
###############
File "intensio_obfuscator.py", line 299, in
main()
File "intensio_obfuscator.py", line 132, in main
verboseArg=args.GetArgsValue().verbose
File "C:\Users\10698\Desktop\Intensio-Obfuscator-master\Intensio-Obfuscator-master\intensio\core\obfuscation\intensio_delete.py", line 116, in Comments
for eachLine in inputFile:
File "C:\Users\10698\AppData\Local\Programs\Python\Python37\lib\fileinput.py", line 252, in next
line = self._readline()
File "C:\Users\10698\AppData\Local\Programs\Python\Python37\lib\fileinput.py", line 366, in _readline
return self._readline()
UnicodeDecodeError: 'gbk' codec can't decode byte 0xaa in position 519: illegal multibyte sequence
###########
[-rfn, --replacefilename]
replace file name feature from dir.file import class
from dir.file import function
from dir import file
import file
Hello, I just wanted to document this as other people may experience the same behavior.
if your code has less than 4 spaces (haven't tested other identations) you may have IndentationError when using -ps obfuscating argument.
Example:
The following file has 2 spaces as indentation:
def main():
print("1")
print("2")
print("3")
if __name__ == "__main__":
main()
It generates:
def main():
print("1")
print("2")
print("3")
if __name__ == "__main__":
SiPZoUcstvfTqktNiPIbNMsrdMCZGNjdPOGxAlCWHlxAkAdKbwTFMbjsKuwvwhFd = 'KZpmqVxLmuDbaaJqEwhxNLPqnKyJvqfYSkUbsMBhhEXVDRrxqEmpOLlDQYDRXfKO'
btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF = 'twSdecfaTSikQKiLXgFyXImbOQFtRTVGqAhQZEOoXUwckxGDlPwJAgcguMbBdhmz'
tNiVZYPfDTDvFYVakOZNhNEIeuwfNItWfChFcDHlDadUoAiaNknhfecNjxgTehex = 'dIgjoTfMGxQkBqMoPosExDEQtVDfOuNYrevGThkwafBKNMsOYSqAzubbPvRHQrBN'
rkwYEoQkhTNzhdUHFFPDHRAwDTlTkhsaDhVUqmilkihZFWvAowhBDZJcbBazxmjL = 'GcOgNDekaTqUjKFofGlQAkXIGeAryneUDsnBuiWVRPdOdybaUpSJqDvikCYEeeJn'
bNyNQrDZyWhMdgbYIagmFOtbpLdiSJlqZmMGuQTCTqsyOPYklakkkPGCZqxonlqj = 'CqDUkArbpJeeWIVYdtuLnncdpmUvuAJuRlLiwtPNsvoPfarZFLwtRrnAQRIqlkuI'
if SiPZoUcstvfTqktNiPIbNMsrdMCZGNjdPOGxAlCWHlxAkAdKbwTFMbjsKuwvwhFd in btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF:
SiPZoUcstvfTqktNiPIbNMsrdMCZGNjdPOGxAlCWHlxAkAdKbwTFMbjsKuwvwhFd = bNyNQrDZyWhMdgbYIagmFOtbpLdiSJlqZmMGuQTCTqsyOPYklakkkPGCZqxonlqj
if btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF in tNiVZYPfDTDvFYVakOZNhNEIeuwfNItWfChFcDHlDadUoAiaNknhfecNjxgTehex:
btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF = rkwYEoQkhTNzhdUHFFPDHRAwDTlTkhsaDhVUqmilkihZFWvAowhBDZJcbBazxmjL
elif btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF in SiPZoUcstvfTqktNiPIbNMsrdMCZGNjdPOGxAlCWHlxAkAdKbwTFMbjsKuwvwhFd:
tNiVZYPfDTDvFYVakOZNhNEIeuwfNItWfChFcDHlDadUoAiaNknhfecNjxgTehex = btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF
if tNiVZYPfDTDvFYVakOZNhNEIeuwfNItWfChFcDHlDadUoAiaNknhfecNjxgTehex in btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF:
btLsnIOfWrOuajzxGErDwgvjRcsPDhxGpoUFuBplmdJjXVPYECoWaPHMewDdGDhF = bNyNQrDZyWhMdgbYIagmFOtbpLdiSJlqZmMGuQTCTqsyOPYklakkkPGCZqxonlqj
main()
And if you execute it, you get:
File "deploy1/main.py", line 19
main()
^
IndentationError: unindent does not match any outer indentation level
So, it seems like obfuscating with -ps argument expect that your code to be indented with 4 spaces. if you change that, the error should go away.
Add function in Remove class into intensio/core/obfuscation/intensio_remove.py that allow obfuscate all python file on project
My python proggrams have many chinese characters output. When I use '-rth' param to 'replace string to hex', the obfuscated output code make something wrong, it can run as normal, but the output contents(Chinese characters) are not displayed properly.
How to solve the problem?
test1, test2, test3 = prompt.partition(' ')
test1, test2, ddSSOHWgJvJpNTGvKfibxAeLueAvdgEg = prompt.partition(' ')
test1, test2, test3 = prompt.partition(' ')
XjKqxQncsvgMhQSpUqvXppThDglkpDUx, xNzZwxLCNAToRlLmDqpkRWABjIVJmMii, ddSSOHWgJvJpNTGvKfibxAeLueAvdgEg = prompt.partition(' ')
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.