Le porte di I/O sono il sistema di comunicazione che utilizzano i Pc per far entrare e uscire i dati. Queste porte, come tutte, sono però a rischio dato che possono permettere l'accesso anche da parte dei malintenzionati. Per prevenire questo tipo di problemi si fa ricorso ai Firewall, che filtrano gli accessi alle porte.
Le porte sono identificate da un numero e a ogni gruppo di porte è associato l'accesso per un tipo di protocollo e una specifica funzione. Le porte
Tcp (Transmission Control Protocol) e Udp (User Datagram Protocol) sono importanti perchà© costituiscono un serio rischio per la sicurezza dei sistemi. Sono infatti una delle strade preferite per gli attacchi da parte di worm, trojan e hacker che le possono utilizzare direttamente per accedere al vostro Pc. Basta uno scanner di porte per trovare facilmente quella aperte nel Pc e quindi la presenza di un firewall che le gestisca in sicurezza è sempre fortemente auspicabile. Vediamo come funzionano.
[tit:Il funzionamento delle porte]
C'è un meccanismo ben preciso che associa il numero della porta ai protocolli di rete Tcp e Udp per assicurare la consegna dei dati al protocollo corretto.
In pratica nella prima parola dell'header del datagramma c'è
un byte che ospita l'identificativo del protocollo Ip, per esempio il 6 per il Tcp o il 17 per l'Udp. I processi applicativi ricevono i dati grazie al protocollo di trasporto e
vengono identificati tramite il numero della porta che è lungo 16 bit (quindi 65.536 valori complessivamente).
Nel'header del datagramma Tcp e Udp ci sono i numeri di porta di origine e quello di destinazione. Indirizzo Ip e numero di porta insieme costituiscono quello che viene chiamato un socket (non c'è nessuna attinenza con i socket dei processori) e permette di identificare in modo univoco un singolo processo in Internet. Se, inoltre, una applicazione deve poter essere raggiunta tramite uno specifico numero di porta, questo viene comunicato allo stack del Tcp/Ip
[tit:I gruppi di porte]
Le porte sono classificate in base al numero i
tre gruppi diversi e chiamati rispettivamente
well known, registered e dynamically allocated/private. Se volete una lista completa dei numeri di porta, a questo
indirizzo c'è la lista esaustiva e aggiornata.
Il sistema usato per definire le porte è
indirizzo_ip:numero_porta e la connessione ed è univoco. I due protocolli Tcp e Udp possono assegnare gli stessi numeri di porta, ma occorre rammentare che porte con lo stesso numero possono non essere identiche.
La connessione è definita da due socket, rispettivamente uno per l'origine e l'altro per la destinazione. Le porte
well known hanno numeri che vanno
da 1 a 1023 e questi valori sono standardizzati in modo da semplificare le connessioni. Avendo infatti dei numeri di porta riservati, destinatario e mittente conoscono perfettamente dove devono essere inviati i dati per un certo processo e questo permette anche ai client di non richiedere altre configurazioni quando si connettono a un server.
Le porte well known Dccp non possono essere usate senza la registrazione allo Iana, con una procedure di registrazione ben precisa.
Le p
orte registered, invece, hanno numeri che vanno da
1024 a 49151 e usano dei servizi, che funzionano di solito su specifiche connessioni derivate, come per esempio quelle dei proxy. Anche le porte registered Dccp non possono essere utilizzate senza la registrazione dello Iana.
La terza categoria, quelle dell
porte dynamically allocated/private è chiamata anche delle porte effimere perchà© sono assegnate dinamicamente. Sono sostanzialmente porte secondarie con la numerazione che va da 49152
a 65535. I client possono utilizzare usare questa categorie di porte fino a quando resta univoca la combinazione tra il protocollo di trasporto, l'indirizzo Ip e il numero di porta.
[tit: Una panoramica sulle porte]
In questa tabella sono riportate le principali informazioni su alcune delle porte usate dai protocolli Tdp e Udp e le applicazioni che le utilizzano. Una lista completa è disponibile sul sito Iana.
N. Porta
Servizio
Protocollo
Descrizione
Categoria
20
ftp-data
Tcp/Udp
File Transfer (Default Data)
well known
21
ftp
Tcp/Udp
File Transfer (Control)
well known
22
Ssh
Tcp
SSH Remote Login Protocol
well known
23
Telnet
Tcp
Telnet
well known
25
Smtp
Tcp
Simple Mail Transfer Protocol
well known
33
dsp
Tcp/Udp
Display Support Protocol
well known
38
rap
Tcp/Udp
Route Access Protocol
well known
53
Domain
Tcp/Udp
Domain Name Server
well known
67
bootps
Tcp/Udp
Bootstrap Protocol Server
well known
68
bootpc
Tcp/Udp
Bootstrap Protocol Client
well known
70
gopher
Tcp/Udp
gopher
well known
80
Http
Tcp
Hypertext Transfer Protocol
well known
102
Iso-tsap
Tcp/Udp
X.400, ISO-TSAP Class 0
well known
110
Pop3
Tcp
Post Office Protocol Version 3
well known
119
Nntp
Tcp
Network News Transfer Protocol
well known
135
Loc-srv/epmap
Tcp/Udp
MS DCE RPC end-point mapper
well known
137
Netbios-ns
Tcp/Udp
Netbios Name Service
well known
138
Netbios-dgm
Tcp/Udp
Netbios Datagram Service
well known
139
Netbios-ssn
Tcp/Udp
Netbios Session Service
well known
143
Imap4
Tcp
Internet Message Access Protocol Version 4
well known
389
Ldap
Tcp
Lightweight Directory Access Protocol
well known
443
Ssl
Tcp
Hypertext Transfer Protocol over TLS/SSL
well known
445
m icrosoft-ds
Tcp/Udp
Windows 2000/XP SMB
well known
554
Rtsp
Tcp
Real Time Stream Control Protocol
well known
636
Sldap
Tcp
Lightweight Directory Access Protocol over SSL
well known
993
Imaps
Tcp
Internet Message Access Protocol Version 4 over TLS/SSL
well known
995
Pop3s
Tcp
Post Office Protocol Version 3 over TLS/SSL
well known
1038
mtqp
Tcp/Udp
Message Tracking Query Protocol
registered
1188
Hp-webadmin
Tcp/Udp
HP Web Admin
registered
1433
Ms-sql-s
Tcp/Udp
Microsoft SQL Server
registered
1434
Ms-sql-m
Udp
Microsoft SQL Monitor
registered
1863
Msnp
Tcp
Microsoft MSN Messenger
registered
3112
Ksysguard
Tcp/Udp
KDE System Guard
registered
3185
Smpppd
Tcp/Udp
SuSE Meta PPPD
registered
5050
Mmc
Tcp
Multimedia Conference Control Tool
registered
5060
Sip
Tcp/Udp
SIP
registered