A ransomware is malware that encrypts all your files and shows a ransom request, which tells you to pay a set amount, usually in bitcoins (BTC), in a set time to decrypt your files, or he will delete your files.
First, the script checks if it's in a sandbox, debugger, vm, etc, and try bypass it.
It then encrypts all files starting with the defined directory.
Then, downloads the ransom request script, disable cmd, taskmanager and the registry tools. And starts the counter to delete the files.
Generate the keys, upload the public key to pastebin, copy the raw link, and change the site on the line 7 in deathransom.py python generate_key.py
Transform time_script.py and main.py(Located at Ransom Request) into exe.
Transform the time_script into exe using pyinstaller in python2 version typing pyinstaller --onefile --windowed <FILE>
To transform the main of ransom request we will use the pyinstaller in the python3 version pyinstaller --onefile --windowed main.py
Then uploads the scripts to any file hosting service and change the links on the line 28 and 31 in deathransom.py
So just transform deathransom.py into exe using pyinstaller in python2 version and be happy :D
Creates several variables to try to make disassembly difficult.
Checks if a debugger is active using the ctypes function: windll.kernel32.IsDebuggerPresent()
Checks if the machine's mac is the same as the standard vms mac.
-
Sleep-Acceleration
Some sandboxes speed up sleep, this function checks if nothing out of the ordinary has occurred.
- Sandbox in Process
Checks if have any sandbox in running processes
- Display-Prompt
Shows a message, if the user interact with the pop up, the malware will be executed.
- Idle-Time
Sleeps for a while and proceed. Some sandboxes wait for a while and stop running, that tries to bypass this.
- Check-Click
If the user does not click the number of times necessary the malware not will be executed.
- Check-Cursor-Pos
If the user not move the mouse in a seted time the malware not be executed.