Jump to content
Tuts 4 You

Python CrackMe - FunnyProtector

Go to solution Solved by iclapcheeks,

Recommended Posts

Is a specific version of Python needed ?

It crashes here using Python34_x64


Edited by Kurapica
Link to comment
Share on other sites

  • 3 months later...
  • Solution

Pretty straight-forward, good luck next time!





1) The second line of "crackme.py" has a exec statement, simply replace the __file__ with "" and replace exec with print, this will give you the code behind the "XORified" script.

2) The next script uses base64 and another exec along with a function that gets the Unicode Code of each character and subtracts it be 10, as the string is being passed with a +10 increase of each Unicode Code

2 a) All you have to do, is replace exec with print and it'll give you the next step (I used decode() so it was more readable)

3) This one uses the DLL to see if the input is equivalent to the key, looking at the DLL, it does what step 2 does, by adding +10 to the Unicode Code, and the reverse is -10, now all we have to do is print the Cipher Function on line 16 which is checking if key (input var) is equal to the ciphered key. This will in turn give us the output "funnyprotectorthefunniestprotector" which works as the key

Final Result







  • Like 1
Link to comment
Share on other sites

  • 6 months later...



1) before returning "result" from protector.py add the line "print(result)" to get more readable code
2) again, before the "EEE3E3E3E3" function returns print the result of "binascii.unhexlify(bytes(Z2ZZZZ2Z2,'utf-8')).decode()"
3) lastly print the return from the "Cipher" function which will eventually decrypt the key and print to screen





Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...