OpenShell is a lightweight, open-source reverse shell management server written in Go.
It allows users to establish reverse shell channels and interact with them through a simple web-based graphical user interface (GUI).
If you encounter bugs or have suggestions, feel free to open an issue.
If you find this project useful or informative, a ⭐ on the repository would be greatly appreciated! Your support would be a great motivation for me to continue improving this tool.
This project was developed as part of my personal interest in studying cybersecurity. However, it may potentially be misused for malicious purposes.
Please do NOT use this tool for any illegal activities.
The author is not responsible for any misuse of this software.
The idea of this project originated while I was learning web penetration testing and working on one of my side projects, Eden-RAT.
Compared to Eden-RAT, OpenShell focuses only on establishing reverse shell channels and providing a simple interactive interface.
Additional features may be added in the future.
- Lightweight reverse shell server written in Go
- Web-based GUI for interactive shell sessions
- Simple reverse shell command to connect
- Designed for learning and research purposes
Download the lastest release:
$ wget https://github.com/iss4cf0ng/OpenShell/releases/latest/download/openshell-server-linux-amd64.tar.gz
$ tar -xzf openshell-server-linux-amd64.tar.gz
$ ./openshell-server
- Create
key.pemandcert.pem:
$ openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes
- Start the server
$ ./openshell-server
- Open your browser and navigate to:
https://localhost:8080
- Login using the default password (Please change it in production):
123456
- Generate a reverse shell command and execute it on the target machine.
- Have fun!
OpenShell consists of two main components:
-
Go Server
- Handles reverse shell connections
- Manages sessions
- Provides WebSocket interface
-
Web GUI
- Built with xterm.js
- Allows interactive shell sessions in browser
- Supports multiple terminal tabs
- Go
- WebSocket
- xterm.js
- PTY (github.com/creack/pty)
Future improvements may include:
- File upload / download
- Agent management
- Session persistence
- Authentication improvements
This project is licensed under the MIT License.








