Luciano Giustini website

Netstat

Search Result 1
Da:Leonardo Serni (sernil@tin.it)
Soggetto:Leggere l'output di NETSTAT
Newsgroups:it.comp.sicurezza.windows, it.comp.sicurezza.varie
View: Complete Thread (27 articles) | Original Format
Data:2000/07/28
Visto che e' la stagione di NETSTAT, preferisco correre ai ripari prima.

Orbene, diciamo che abbiamo aperto il nostro prompt di MS-DOS e dato, in
finestra, il comando

	NETSTAT -a

(il comando NETSTAT -na e' uguale, solo piu' veloce, perche' non sta li'
a perder tempo a risolvere gli indirizzi IP nei nomi corrispondenti).

e diciamo che mi ha dato qualcosa del tipo:

C:\WINDOWS\Desktop>netstat -a

Active Connections

  Proto  Local Address          Foreign Address         State
  TCP    TOWER:1025             klinure:nbsession       ESTABLISHED
  TCP    TOWER:774              kidenas:22              ESTABLISHED
  TCP    TOWER:1038             kidenas:22              ESTABLISHED
  TCP    TOWER:139              *:*                     LISTEN
  TCP    TOWER:1033             www.ornitorinchi.org:80 SYN_SENT
  TCP    TOWER:1039             www.ornitorinchi.org:80 FIN_WAIT
  TCP    TOWER:1042             mail.ornitorinchi.org:25 ESTABLISHED
  TCP    TOWER:1043             mail.ornitorinchi.org:110 ESTABLISHED
  TCP    TOWER:1026             TOWER:110               ESTABLISHED
  TCP    TOWER:110              *:*                     LISTEN
  TCP    TOWER:20034            *:*                     LISTEN
  UDP    TOWER:nbname           *:*
  UDP    TOWER:nbdatagram       *:*

Vediamo come si leggono queste benedette righe.

La colonna PROTO indica il protocollo di comunicazione, che per Windows
e' TCP (Transmission Control Protocol) o UDP ("Unreliable" ;-) Datagram
Protocol).

L'indirizzo locale non e' altro che il nome del MIO PC, nome che potrei
avere dato io ("PIPPO"), il mio network administrator ("C06160280503"),
o magari, un CD-ROM preso in edicola con Free Internet ("LIBERO"). Fino
a che non cambio il nome io, da Risorse di Rete -> Proprieta', rimarra'
il nome impostato.

L'indirizzo locale e' seguito da due punti e dalla frequenza utilizzata
per lo scambio dati. Un computer opera nella gamma di frequenze da 1 su
su fino ai 65535 megaportz. Le frequenze da 1 a 1024 sono riservate per
gli usi di sistema, tipo le frequenze della polizia.

Su un sistema Unix, solo l'amministratore puo' ricevere (o trasmettere)
nella banda da 1 a 1024 megaportz :-).

A differenza delle onde radio, dove chi parla e chi ascolta devono, per
forza di cose, stare sulla stessa frequenza, e su una frequenza possono
parlare solo uno per volta (se vogliono capirsi! ;-) ), Internet non ha
questo limite.

Cosi', un server Web sta in ascolto sulle frequenze 80 e 443 (questa e'
la frequenza per trasmissioni crittografate, ad uso carta di credito et
similia), ma su ciascuna puo' condurre moltissime connessioni. Inoltre,
anche il chiamante puo' parlare usando piu' frequenze.

L'unico limite (principio di esclusione di Pauli) e' che i quattro dati
caratteristici (chiamante, frequenza chiamante, ricevente, freq. ric.),
non possono essere tutti e quattro uguali. Fra due hosts, quindi, posso
avere anche piu' di una connessione attiva. In questo esempio:

  TCP    TOWER:1033             www.ornitorinchi.org:80 SYN_SENT
  TCP    TOWER:1039             www.ornitorinchi.org:80 FIN_WAIT

...sto scaricando (o provandoci!) DUE immagini contemporaneamente da un
sito Web. Netscape ha un apposito setup per impostare il massimo numero
di connessioni simultanee ammesse.

Lo STATE indica in che stato e' la connessione.

Per esempio, se ho un programma ricevente sul mio PC, in attesa di dati
o comandi dall'esterno (che so: una bella backdoor!), mi comparira' una
entry del tipo

  TCP    TOWER:20034            *:*                     LISTEN

dove "LISTEN" significa appunto che il sistema sta "ascoltando" in modo
da sapere se i suoi servigii sono richiesti.

Quando mi collego a un sito Web, quel sito Web avra' la frequenza 80 in
stato LISTEN. E sara' bene, se no col fischio che ci navigo sopra :-)

Quando inizio a collegarmi, lo stato passa da SYN_SENT, SYN_ACK, fino a
un glorioso ESTABLISHED ("comunicazione in corso"). Quando termina, non
ripete al contrario la sequenza, ma passa da FIN, FIN_WAIT, a FIN2_WAIT
fino a CLOSE. Dopo un po', la frequenza viene sganciata del tutto, e il
programma NETSTAT cessa di far vedere la riga.

Le frequenze assegnate a dati servizi di rete sono standardizzate dalla
IANA e alcune sono riportate in /etc/services, o C:\WINDOWS\SERVICES, a
seconda che abbiate un sistema operativo o meno <grin>.

Nessuno vieta di fare la scempiaggine di mettere un servizio in ascolto
su una frequenza impropria. Nessuno vieta ad un fruttivendolo di andare
al banco dell'ufficio anagrafe del Comune ("Mi serve il certificato per
la casa..." "Ecco qua, ora glielo taglio in due, cosi' vede la polpa...
con questo caldo e' quello che ci vuole, tenga, lo metta in ghiacciaia,
sono tre chili boni... melone, punto?"). Pero', la conversazione assume
aspetti surreali, e i risultati non saranno quelli desiderati.

Alla luce di quanto sopra rileggiamo le righe:

  TCP    TOWER:1025             klinure:nbsession       ESTABLISHED

E' una connessione, in corso. Dato che la MIA porta e' 1025, mentre sul
sistema Klinure e' nbsession, che e' una porta riservata, significa CON
OGNI PROBABILITA' (certezze mai!) che sono stato IO ad aprire un link a
Klinure, sulla porta nbsession di Klinure.

  TCP    TOWER:774              kidenas:22              ESTABLISHED

Come sopra. In questo caso specifico, siamo di fronte all'eccezione che
conferma la regola: le connessioni alla porta "22" sono SEMPRE fatte da
porte amministrative, fra 1 e 1024.

  TCP    TOWER:139              *:*                     LISTEN

Questo significa che il MIO computer e' in ascolto sulla frequenza 139,
e che qualsiasi computer (*) con qualsiasi frequenza (*) puo' inviare i
suoi dati o comandi, e saranno ricevuti.

  TCP    TOWER:1033             www.ornitorinchi.org:80 SYN_SENT

Qui io ho iniziato una connessione Web (80), ma ancora non e' passata a
ESTABLISHED. Fra pochi secondi probabilmente lo fara'.

  TCP    TOWER:1039             www.ornitorinchi.org:80 FIN_WAIT

Qui sto CHIUDENDO una connessione allo stesso sito.

  TCP    TOWER:1042             mail.ornitorinchi.org:25 ESTABLISHED
  TCP    TOWER:1043             mail.ornitorinchi.org:110 ESTABLISHED

Queste sono due connessioni a un server ("mail.ornitorinchi.org") sulle
frequenze Posta in Partenza (25) e Posta in Arrivo (110).

  TCP    TOWER:1026             TOWER:110               ESTABLISHED

Questo sono... io, che mi collego a... me stesso. Curioso.

  TCP    TOWER:110              *:*                     LISTEN

E questo sono io, che aspetto connessioni sulla porta 110, di Posta In
Arrivo.

Quello che succede e' probabilmente questo: sul mio PC c'e' "qualcosa"
che fa finta di essere un server di posta. Questo qualcosa si collega,
poi, al vero server di posta. L'uso piu' probabile per questo rimbalzo
e' leggere la posta prima che io la scarichi. Per esempio, per vederne
il contenuto ed eliminarne possibili virus; oppure per copiarla e fare
spionaggio industriale, chissa'.

  TCP    TOWER:20034            *:*                     LISTEN

Qui c'e' un programma in attesa su una frequenza altissima ed usata da
pochissimi. Questo e' molto sospetto. Una passata d'antivirus trovera'
con ogni probabilita' la backdoor NetBUS.

  UDP    TOWER:nbname           *:*
  UDP    TOWER:nbdatagram       *:*

Questi sono due servizi typycamente Windows, da sempre in ascolto :-)

Leonardo


".signature": bad command or file name


Torna alla Home Page