Skip to content

Python based ransomware that uses Symmetric key encryption (AES)

License

Notifications You must be signed in to change notification settings

Not-Baguette/Stidium

Repository files navigation

Stidium

Description

Python based ransomware that uses Symmetric key encryption (AES), Believe it or not I made the first version under 24 hours (So expect the code to be messy). It has stuff like a normal ransomware do, a list of encrypted files, the amount, the btc address to pay, decryptor, and it saves even after restart (Also smtplib will show the user static IP by opening gmail, scrolling down to the bottom, and click details on the bottom right [below Last account activity: ... minute]). This code is tested per piece so I am not sure if it works but theoritically it should. This version is still in stages of development.

main.py might be out of date compared to main - development.py, this is not because I forgot about it. It is just me still trying to find a reason to do a 5 min work that I could do right now instead of postponing it. (P.S. Just remove most """ and some # at the end you'd be good to go) CURRENT STATUS: main.py is not outdated

This project is for educational purposes only to show how would a ransomware possibly work and encrypt your data

TODO (Before v1.1.0-beta)

  • Finish up post-infect function that infects it with Project Gideon
  • Switch to Twofish or Blowfish Algorithm.
  • Make it so that even if the user stops the process of nuking, once reopened it will just continue
  • More Testing

Preview

image

Dependencies

  • tkinter (for the ransomware demand screen)
  • cryptography (To encrypt and decrypt)

Installation

TBD

For developers

  • Get 2 burner emails
  • Put it on SENDER and RECEIVER variable on the top

image

  • Get an app password for the SENDER email
  • Install dependencies modules
  • remove the commented out encryptor, decryptor, and find_file function alongside the function call on the bottom for inserting to startup and sending via email (I heavily advice against removing the commented out tkinter attributes and configs)
  • Change the BTC address to your own (Unnecessary if you just want a preview)

More information (Nice to know basis)

  • file header encryptor & decryptor.py is another way to encrypt a file, instead of encrypting the whole file, it encrypts just the header.

  • This uses AES (Advanced Encryption Standard) algorithm to encrypt but I suggest you look at other algs like RSA (Rivest-Shamir-Adleman), Blowfish, Twofish, 3DES (Triple DES), Elliptic Curve Cryptography (ECC), and Serpent. I might consider to move to Blowfish or Twofish for it's speed but we'll see. P.S. ECC, 3DES, Serpent and RSA is most likely slower than AES/Blowfish/Twofish but some definitely have better security.