Netcat: uno strumento indispensabile per ogni hacker che si rispetti!

SPONSORED LINKS

swissknife
Netcat, comunemente definito come il “TCP/IP swiss army knife” (il coltellino svizzero del TCP/IP) è una delle utility più conosciute ed usate in assoluto sia da coloro che si occupano di networking sia da chi è appassionato di hacking. Si tratta infatti di un tool estremamente versatile che si presta alle più svariate applicazioni in ambito TCP/IP: può essere utilizzato tanto come HTTP server quanto per effettuare un port scanning verso una macchina remota.

In questo articolo vedremo in dettaglio alcune delle sue applicazioni ed utilizzi più comuni:

  1. HTTP Server
    Ecco come attivare un semplice HTTP Server in ascolo sulla porta 8080. L’opzione “-l ” avvia netcat in modalità LISTEN e l’opzione “-c” specifica il comando da lanciare ogni volta che viene stabilita una connessione:

    
    #!/bin/bash
    handle_req()
    {
       read req file proto
       echo -e "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"
       echo -e "<html><h1>Hello World</h1></html>"
    }
    typeset -fx handle_req
    nc -l -p 8080 -c handle_req
    
    
  2. HTTP Client
    L’esempio che segue vi permetterà di visualizzare l’ultima versione del kernel di linux presa direttamente dal sito kernel.org:

    
    echo -e "GET /kdist/finger_banner HTTP/1.0\r\n" | \
    nc www.kernel.org 80 | grep latest
    
    
  3. Terminale remoto
    Per attivare un terminale remoto senza utilizzare telnet o ssh è sufficiente lanciare lato server netcat in modalita LISTEN:

    
    nc -l -p 4000 -e /bin/sh
    
    

    Per connettervi dal client invece è sufficiente invece il comando:

     
    
    nc <host> 4000
    
    

    Dove <host> è l’indirizzo IP del server.

  4. Port Scanning
    Per effettuare un port scan con netcat al fine di verificare le porte aperte di un certo server remoto è sufficiente lanciare il comando:

    
    #test di due porte specifiche (80 e 21)
    nc -v -z www.kernel.org 80 21
    #test di un range di porte (dalla 21 alla 23)
    nc -v -z www.kernel.org 21-23
    
    
  5. File transfer
    Netcat si presta benissimo anche al trasferimento files via rete: la configurazione da utilizzare è simile a quella utilizzata per il terminale remoto. Supponendo che il nome del file da trasferire sia “miofile.txt“, posizionatevi nella directory in cui si trova e lanciate netcat come segue:

    
    cat miofile.txt| nc -l -p 4000
    
    

    Per avviare il download lato client invece lanciate il comando:

     
    nc <host>  4000 > miofile.txt
    
    

    Dove <host> è l’indirizzo IP del server su cui si trova il file da scaricare.

  6. Anonimizzare Netcat
    Installando anche il pacchetto “tor” avrete a disposizione il comando “torify” che vi consentira di anonimizzare tutto il traffico generato con Netcat (funzione sicuramente gradita agli appassionati di hacking 😉 ). Di seguito un esempio di utilizzo:

    
    echo -e "GET /iponly/ HTTP/1.0\r\n" | torify nc ipid.shat.net 80
    
    

    Questo comando visualizzerà l’IP address del server anonimo verso cui vi avrà dirottato il comando “torify”.

Via Ubuntuforums

SPONSORED LINKS
Ti è piaciuto l'articolo?
Iscriviti alla newsletter per ricevere in tempo reale tutte le notizie e gli aggiornamenti!

Articoli correlati a "Netcat: uno strumento indispensabile per ogni hacker che si rispetti!"


Lascia un commento