██████╗ ███████╗██╗ ██╗███████╗██████╗ ███████╗███████╗
██╔══██╗██╔════╝██║ ██║██╔════╝██╔══██╗██╔════╝██╔════╝
██████╔╝█████╗ ██║ ██║█████╗ ██████╔╝███████╗█████╗
██╔══██╗██╔══╝ ╚██╗ ██╔╝██╔══╝ ██╔══██╗╚════██║██╔══╝
██║ ██║███████╗ ╚████╔╝ ███████╗██║ ██║███████║███████╗
╚═╝ ╚═╝╚══════╝ ╚═══╝ ╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝
███████╗██╗ ██╗███████╗██╗ ██╗
██╔════╝██║ ██║██╔════╝██║ ██║
███████╗███████║█████╗ ██║ ██║
╚════██║██╔══██║██╔══╝ ██║ ██║
███████║██║ ██║███████╗███████╗███████╗
╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝
A multi-client reverse shell allowing multiple connections from target computers.
| Description | |
|---|---|
| ➡️ | Can be used by converting the ReverseShell script to an exe extension using the setup.py script. |
| ➡️ | When ReverseShell.py is converted to an exe, the persistence of ReverseShell is ensured for Windows operating system only, thanks to the persistent method. |
| ➡️ | Thus, every time an operating system session starts, ReverseShell disguises itself as a Windows file and begins to run. |
| ➡️ | The target computer where ReverseShell is running continuously sends connection requests to the Hacker (Listener). The Hacker (Listener) establishes the connection as soon as it becomes active. As a result, the Hacker (Listener) can connect to the target computer at any time or disconnect the active connection. |
| ➡️ | Notifications are sent to the Hacker (Listener) when connection requests come from target computers. |
| ➡️ | File download and upload features allow for downloading and uploading files from/to the target computer. |
Module to install to run ReverseShell and Listener scripts
- For Linux installation
python3 -m pip install termcolor==1.1.0
- For Windows installation
python -m pip install termcolor==1.1.0
Module to install to use setup.py to convert ReverseShell.py to exe extension
- For Linux installation
python3 -m pip install PyInstaller==3.4
- For Windows installation
python -m pip install PyInstaller==3.4
Listener usage
- For Linux usage
python3 Listener.py
- For Windows usage
python Listener.py
ReverseShell.py script usage
- For Linux usage
python3 ReverseBackdoor.py
- For Windows usage
python ReverseBackdoor.py
| Usage Commands | |
|---|---|
| help | Provides information about application usage. |
| list | Lists connected target computers. |
| select | Used to select connected computers. Selection is made according to the index numbers of the listed computers. |
| quit | Used to stop the connection from the active target computer being operated on. |
| exit | Stops the server from running. Exits the application. |
| upload | Enables uploading files to the selected target machine. This command runs after the target computer is selected. |
| download | Enables downloading files from the selected target machine. This command runs after the target computer is selected. |
- The scripts work on both Linux and Windows operating systems.
- Python version: 3.7.2 (And better)
- The reason I did not convert ReverseShell to exe using the cx_Freeze module in the setup script is that the ReverseShell copied to the appdata folder for persistence with the persistent module does not run. Alternatively, I performed the conversion to exe with the pyinstaller module.
- The setup.py file converts ReverseShell to an exe extension by using the pyinstaller exe conversion command with subprocess. For the pyinstaller module to work, the path to the pyinstaller module must be added to the Windows Paths.
- For more information, you can check the following 2 links: