Tutorials

Netstat

Netstat Network Statistics è uno degli strumenti di rete più utili e potenti per il monitoraggio delle connessioni di rete e l'analisi delle statistiche di rete in sistemi Unix-like, inclusi Kali Linu

#networking

Netstat: Comando di Rete in Kali Linux

Netstat (Network Statistics) è uno degli strumenti di rete più utili e potenti per il monitoraggio delle connessioni di rete e l'analisi delle statistiche di rete in sistemi Unix-like, inclusi Kali Linux. Questo comando fornisce informazioni dettagliate su tutte le connessioni di rete attive e le porte di ascolto, nonché statistiche sul traffico di rete.


Cos'è Netstat e a cosa serve

Netstat è uno strumento da riga di comando che permette di visualizzare le connessioni TCP/IP, le porte in ascolto, le statistiche sulle interfacce di rete e altre informazioni utili relative alla rete. È particolarmente utile durante attività di pentesting per analizzare le porte aperte su un sistema target, le connessioni attive e per diagnosticare problemi di rete.

Alcuni dei principali utilizzi di netstat includono:

1. Monitoraggio delle connessioni di rete: Identifica le connessioni attive, le porte di ascolto e i protocolli utilizzati. 2. Diagnosticare problemi di rete: Analizza le connessioni e le comunicazioni tra client e server per diagnosticare eventuali problemi di rete. 3. Controllo di backdoor e malware: Durante un'attività di pentesting o analisi forense, netstat può aiutare a identificare connessioni sospette a porte non comuni. 4. Verifica delle porte aperte: Permette di monitorare le porte aperte sul proprio sistema, un aspetto fondamentale nella valutazione della superficie di attacco di un server.


Sintassi del Comando Netstat

La sintassi base del comando netstat è la seguente:

netstat [opzioni]

Dove le opzioni determinano il tipo di informazioni che verranno mostrate. Vediamo le opzioni più comuni.


Opzioni più Comuni di Netstat

1. -a: Mostra tutte le connessioni e le porte di ascolto. - Esempio: netstat -a - Mostra tutte le connessioni (TCP/UDP) e le porte in ascolto.

2. -t: Mostra solo le connessioni TCP. - Esempio: netstat -t - Visualizza solo le connessioni che utilizzano il protocollo TCP.

3. -u: Mostra solo le connessioni UDP. - Esempio: netstat -u - Visualizza solo le connessioni che utilizzano il protocollo UDP.

4. -l: Mostra solo le porte in ascolto. - Esempio: netstat -l - Mostra tutte le porte che sono attualmente in ascolto sul sistema.

5. -n: Mostra gli indirizzi IP e i numeri di porta numericamente, senza risolvere i nomi di dominio. - Esempio: netstat -n - Utilizza gli indirizzi IP e i numeri di porta anziché cercare di risolverli in nomi di dominio o servizi.

6. -p: Mostra il PID (Process ID) e il nome del processo associato alla connessione. - Esempio: netstat -p - Mostra quale processo è associato a una connessione di rete.

7. -r: Mostra la tabella di routing del sistema. - Esempio: netstat -r - Visualizza la tabella di routing, che mostra come i pacchetti sono diretti nelle reti.

8. -i: Mostra le statistiche delle interfacce di rete. - Esempio: netstat -i - Visualizza le informazioni relative alle interfacce di rete, come il numero di pacchetti inviati e ricevuti.

9. -s: Mostra le statistiche dei protocolli di rete. - Esempio: netstat -s - Visualizza le statistiche per i protocolli di rete come TCP, UDP, ICMP, ecc.

10. -c: Esegue netstat in modo continuo, aggiornando le informazioni ogni pochi secondi. - Esempio: netstat -c - Mostra informazioni di rete in tempo reale, aggiornandole periodicamente.


Esempi di Utilizzo di Netstat

#### 1. Visualizzare tutte le connessioni di rete attive

Per ottenere una panoramica di tutte le connessioni di rete attive (sia in ingresso che in uscita) e le porte in ascolto, utilizza il comando:

bash
netstat -a

Questo comando mostrerà tutte le connessioni TCP e UDP, incluse quelle in stato di ascolto (listening).

#### 2. Visualizzare solo le connessioni TCP

Se sei interessato solo alle connessioni TCP, puoi usare l'opzione -t:

bash
netstat -t

Questo mostrerà solo le connessioni che utilizzano il protocollo TCP.

#### 3. Visualizzare solo le porte in ascolto

Se desideri vedere solo le porte che sono in ascolto (le porte che il sistema sta monitorando per le connessioni in arrivo), usa:

bash
netstat -l

In questo caso, il comando mostrerà solo le porte in ascolto, senza le connessioni stabilite.

#### 4. Visualizzare i processi associati alle connessioni

Per identificare quale processo è associato a una determinata connessione, usa l'opzione -p:

bash
netstat -p

Questo comando mostrerà il PID (ID del processo) e il nome del processo che ha stabilito ciascuna connessione.

#### 5. Visualizzare la tabella di routing

Se desideri esaminare la tabella di routing del sistema, usa il comando:

bash
netstat -r

Questo ti mostrerà le informazioni relative alla configurazione del routing, che determinano come i pacchetti vengono indirizzati nelle reti.

#### 6. Monitoraggio continuo delle connessioni di rete

Se desideri monitorare continuamente le connessioni di rete in tempo reale, puoi usare l'opzione -c:

bash
netstat -c

Questo comando aggiornerà continuamente le informazioni sulle connessioni di rete ogni pochi secondi.


Utilizzi di Netstat nel Pentesting

Durante le operazioni di pentesting, netstat è uno strumento fondamentale per ottenere una visione d'insieme delle connessioni di rete e delle porte aperte su un sistema target. Alcuni scenari di utilizzo includono:

1. Identificazione di backdoor: Le connessioni sospette su porte non comuni possono essere indicatori di una backdoor. Netstat può essere utilizzato per identificare queste connessioni e analizzare i processi associati. 2. Verifica delle porte aperte: Un test di scansione delle porte può essere integrato con netstat per ottenere un'analisi completa delle porte aperte sul sistema. 3. Individuazione di vulnerabilità: Se un sistema espone porte non necessarie o vulnerabili, netstat può fornire un rapido punto di partenza per l'identificazione di potenziali vettori di attacco.


Conclusioni

Netstat è uno strumento potente e versatile per monitorare le connessioni di rete, diagnostica i problemi di rete e aiuta nell'individuazione di potenziali vulnerabilità. Sebbene non sia un tool di scansione avanzata come nmap, la sua capacità di monitorare in tempo reale e visualizzare le connessioni attive lo rende uno strumento essenziale nelle operazioni di pentesting e nell'amministrazione di sistemi Linux.