this is just my way of understanding this,
Source: Miuri - THM.
- Proxychains and FoxyProxy are used to access a proxy created with one of the other tools
- SSH can be used to create both port forwards, and proxies
- plink.exe is an SSH client for Windows, allowing you to create reverse SSH connections on Windows
- Socat is a good option for redirecting connections, and can be used to create port forwards in a variety of different ways
- Chisel can do the exact same thing as with SSH portforwarding/tunneling, but doesn't require SSH access on the box
- sshuttle is a nicer way to create a proxy when we have SSH access on a target
Local port forwarding with Chisel:
assuming you want to access your computer at home from the workplace, but at work, the RDP port 3389 outbound connection is blocked by a firewall.
So we will open another port on the computer at work and pass the RDP port(3389) info to the newly opened port and since the firewall only blocking 3389, we can use any other port to establish a connection with port 3389 on our laptop at home.
Reverse(Remote) Port Forwarding with Chisel.