Internet è un mezzo
insicuro per comunicare!
Approfondimento |
Sistemi
di sorveglianza e controllo
Tutti i dati che partono dalla vostra tastiera e giungono
sino ad un computer situato a molte migliaia di chilometri di distanza percorrono una
grande quantità di cavi e mezzi fisici diversi e vengono trattati da un notevole numero
di computer.
Chiunque abbia accesso ad essi potrebbe teoricamente spiare le vostre
comunicazioni; sebbene ovviamente la sicurezza sia relativamente garantita dalla enorme
quantità di dati, per cui cercare i blocchi di dati contenenti un'informazione
particolare sarebbe come cercare un ago in un pagliaio, una persona intenzionata a spiare
proprio voi, e tale da conoscere l'indirizzo del vostro computer e da avere accesso ad uno
di questi sistemi, potrebbe intercettare facilmente tutti i messaggi spediti dal vostro
computer che attraversino il sistema su cui è in ascolto.
Ovviamente, il punto migliore per intercettare le vostre
comunicazioni è molto vicino a voi, ad esempio sul gateway che collega la vostra rete
locale al resto di Internet. D'altra parte, esistono programmi detti sniffer che
intercettano tutti i messaggi in transito sulla rete locale e selezionano quelli
interessanti, ad esempio in base al mittente o al contenuto. Tanto per fare un esempio,
esistono sniffer che riconoscono i messaggi contenenti la stringa di caratteri password:,
ossia quelli che un computer Unix spedisce al terminale dell'utente per chiedergli la
password, e provvedono a intercettare la risposta dell'utente, permettendo così il furto
della password. Per complicare ulteriormente le cose, esistono sistemi che si
sostituiscono al vostro computer nel dialogo con quello remoto, assumendo il vostro
indirizzo (IP spoofing), e mandando dati che sembrano provenire da voi, ma che sono
falsificati!
Gli amministratori della vostra rete locale o del vostro
provider, inoltre, possono facilmente, se disonesti, leggere le vostre informazioni, ad
esempio la vostra posta, o combinare guai "a nome vostro". (Voi potreste
facilitarli ulteriormente, ad esempio non modificando la password che vi hanno fornito.)
Il punto più debole della catena, quindi, è proprio il
tratto di "navigazione costiera" che va tra il vostro computer e il "mare
aperto" della rete, attraverso la rete locale a cui vi collegate. Mentre, come
vedremo, esistono sistemi crittografici per proteggere efficacemente le
vostre comunicazioni a lungo raggio, un amministratore locale disonesto potrebbe essere
difficile da fermare!
Un ulteriore problema da considerare è quello dell'anonimato o della falsificazione dell'identità dei vostri interlocutori.
Nessuno vi permette di sapere che la persona che dialoga con voi è effettivamente colui
che pretende di essere, o che un indirizzo che oggi funziona ed esiste continuerà a
funzionare ed esistere anche domani. Una persona esperta può facilmente inviarvi E-mail
falsificati, o scrivere articoli in un newsgroup sotto falso nome; del resto esistono siti
creati proprio allo scopo di fornire recapiti postali anonimi. Anche se l'identità del
destinatario dei vostri messaggi è certa, comunque, egli potrebbe non comportarsi
correttamente: ad esempio tutte le transazioni commerciali in rete, che si basano
sull'invio tramite rete dei codici della propria carta di credito, sono decisamente
pericolose, per quanto la loro crescente diffusione indichi che i problemi non si
verificano tanto spesso.
Infine, qualunque utente della rete Internet può accedere
dall'esterno alla vostra rete locale e ai vostri computer. Sebbene egli non possa entrare
all'interno di nessun sistema protetto senza conoscere la relativa password, la semplice
possibilità di entrare sulla rete potrebbe permettere in qualche modo l'accesso a
informazioni riservate. Se voi siete l'amministratore di una rete locale che deve essere
connessa a Internet, avete il problema di come garantire che gli utenti esterni non
possano andare dove non devono.
Pagamenti elettronici
Uno dei rischi più comuni è legato alla sicurezza dei
pagamenti elettronici, che richiedono normalmente l'invio di un numero di carta di
credito. Anche ammettendo l'affidabilità dell'azienda da cui acquistate, il vostro numero
di carta di credito - così come qualsiasi dato che voi inseriate in un modulo del WWW -
viaggia in chiaro e può essere intercettato in modo molto semplice lungo la rete. Per
questo motivo, è bene inviare dati importanti soltanto se essi possono essere comunicati
in modo cifrato - ad esempio, usando un protocollo di navigazione cifrato come HTTPS.
Comunque, la sicurezza non è soltanto legata agli aspetti
tecnici. Ad esempio, pensate al caso seguente: voi volete acquistare via Internet un
prodotto da una nota multinazionale, pagando con carta di credito. A questo scopo, vi
collegate con un motore di ricerca, trovate l'indirizzo del sito ufficiale dell'azienda,
vi collegate con esso, trovate il modulo per gli acquisti, e inserite il vostro numero di
carta di credito, fidandovi del fatto che si tratta di una azienda molto nota e che avrà
preso tutte le opportune precauzioni per garantire la sicurezza del pagamento. Tutto a
posto?
Ad alcune persone che hanno messo in pratica questa
procedura è capitata una brutta sorpresa: difatti, una persona piuttosto furba aveva
realizzato una copia automatica del sito ufficiale della multinazionale, l'aveva messa ad
un indirizzo simile a quello del sito originale, e aveva pubblicizzato la pagina nei
motori di ricerca. Gli utenti, senza prestare troppa attenzione, si erano quindi collegati
con quella pagina, anzichè con quella ufficiale (peraltro identica nell'aspetto), e
avevano così fornito il proprio numero di carta di credito ad un malintenzionato.
Insomma, anche su Internet si possono riproporre tutte le truffe più tradizionali, a
partire dalla falsificazione dei siti WWW (Web spoofing), indipendentemente dalla
sicurezza intrinseca delle comunicazioni.
Alle volte le truffe sono particolarmente
ingegnose: ad esempio mi è successo di vedere un sito americano di hacker che,
mediante un linguaggio da spie e una grafica da film di fantascienza, proponeva una form
per "cancellare la propria esistenza dagli elenchi dell'FBI". Inutile dire che
in questo modulo bisognava inserire una serie di dati personali che sarebbero stati di
grande aiuto a chi volesse falsificare un documento o impersonare qualcun altro. State
attenti...
Sistemi per proteggere le comunicazioni
Sono stati inventati vari sistemi di crittografia allo
scopo di proteggere il contenuto delle comunicazioni e/o di autenticare l'identità del
mittente di un messaggio. I sistemi di crittografia si basano sull'uso di una chiave
(key) che viene usata dal mittente all'interno di una serie di trasformazioni
matematiche effettuate sul corpo del messaggio in chiaro (plaintext), che viene
così trasformato in un testo cifrato (ciphertext). Il destinatario, usando una
chiave uguale o diversa a seconda dei sistemi, provvede alla decodifica del messaggio
cifrato. Un buon sistema di crittografia non deve essere praticamente attaccabile per
"forza bruta" (ossia provando tutte le chiavi possibili!).
I sistemi di crittografia si dividono in due categorie:
- Sistemi a chiave segreta (secret key). In
questi sistemi, il messaggio viene criptato usando una chiave che deve essere nota solo al
mittente e al destinatario: difatti la chiave usata per la decodifica deriva da quella
usata per la codifica. Un esempio molto semplice di cifratura a chiave segreta si avrebbe
se noi, per criptare un messaggio, sostituissimo ogni lettera con quella che la segue
nell'alfabeto. Per decrittare il messaggio è necessario usare la stessa chiave
all'incontrario (ossia sostituire ogni lettera del messaggio cifrato con quella che la
precede). Il problema di un sistema di questo tipo è che il mittente e il destinatario
devono scambiarsi la chiave, che ovviamente non può essere acclusa al messaggio, ma deve
essere spedita in altro modo.
- Sistemi a chiave pubblica. In questi sistemi, ad ogni
persona vengono assegnate due chiavi: una chiave pubblica (public key) e una chiave
privata (private key), tali che, sebbene la chiave privata sia "capace"
di decrittare un messaggio cifrato con la chiave pubblica, non sia possibile ricavare la
chiave privata direttamente da quella pubblica (al contrario di quanto avviene nei sistemi
a chiave segreta). La chiave pubblica viene messa a disposizione di chiunque, all'interno
di un apposito archivio; la propria chiave privata, invece, deve venire gelosamente
conservata da ciascuno. Per spedire un messaggio ad un determinato utente, è necessario
procurarsi la sua chiave pubblica e criptare il messaggio con essa; il destinatario, e
soltanto lui, potrà decrittare il messaggio con la propria chiave privata. In questo modo
viene meno il problema della comunicazione della chiave; tuttavia è necessario disporre
di archivi pubblici affidabili (ossia che garantiscano l'autenticità della chiave
pubblica).
Un programma usato in molte reti locali è Kerberos: esso è
basato su un sistema a chiavi segrete detto DES (Data Encryption System).
Kerberos deve venire installato dal gestore della rete, e provvede, tramite un archivio
riservato di chiavi segrete, ad autenticare l'identità di chiunque usi la rete. Ad
esempio, se una persona vuole accedere tramite la rete ad un proprio account, egli deve
fornire la propria chiave segreta, che viene confrontata con quella conservata
nell'archivio. DES è anche il sistema usato per cifrare le password d'utente in un
sistema Unix.
Il più noto sistema a chiave pubblica è invece RSA (Rivest-Shamir-Adleman),
originariamente sviluppato dal governo degli Stati Uniti. Su di esso è sostanzialmente
basato un programma denominato PGP
(Pretty Good Privacy), che è attualmente il più usato mezzo di autenticazione per
comunicazioni E-mail su Internet. Tramite questo programma è possibile non solo criptare
un intero messaggio, ma anche accludere ad un messaggio "in chiaro" una firma
digitale (digital signature), ricavata dalla propria chiave privata, tramite la
quale chi riceve il messaggio può verificare l'autenticità o meno dello stesso. Le
chiavi pubbliche PGP sono reperibili via E-mail presso vari server (in Italia, pgp-public-keys@dsi.unimi.it);
ogni volta che un utente installa per la prima volta il programma, dovrà provvedere a
generare le proprie chiavi (quella pubblica e quella privata) e a spedire quella pubblica
al server. Quest'ultima operazione non è obbligatoria, ma permette a chiunque voglia
comunicarvi di recuperare la vostra chiave in modo semplice.
Se volete usare PGP, dovrete orientarvi nella selva di
versioni, parte gratuite, parte commerciali, attualmente esistenti. Le due versioni più
comuni sono la 5.0, per Windows 9x, Macintosh e Linux, e la precedente 2.6.3i, dove la i
sta per internazionale e indica che l'uso è consentito soltanto a persone non
statunitensi; ciò in ragione dei numerosi problemi legali connessi alla crittografia.
L'uso di PGP, purtroppo, è tutt'altro che semplice: per
questo motivo è consigliata la lettura di alcune delle guide esistenti, anche in
italiano, per l'uso del programma, e reperibili nell'archivio delle FAQ italiane. Per lo
stesso motivo, può essere utile installare anche delle "shell" per PGP, che ne
semplificano l'uso, o ancora meglio il modulo PGPEudora, che vi permette di
utilizzare facilmente le funzioni di PGP all'interno di Eudora. Per avere un aiuto
sull'uso del server E-mail per chiavi pubbliche, potete inviare all'indirizzo sopra
indicato un messaggio avente come subject help. Se infine
volete testare il programma e scrivermi in maniera sicura, ecco la mia
chiave pubblica (il file si chiama amadeus.asc,
e potete usarlo anche per aggiungere la mia chiave al vostro portachiavi pubblico).
SSL e HTTPS
SSL (Secure Sockets Layer) è un insieme di
protocolli sviluppato dalla Netscape per proteggere le comunicazioni tra browser e siti
WWW, criptando i messaggi in entrambe le direzioni. Esso è particolarmente utile per il
commercio elettronico, che richiede la trasmissione senza pericoli di dati personali e
numeri di carta di credito. Tale insieme di protocolli, inoltre, garantisce un ulteriore
controllo sull'integrità dei dati, e inoltre dispone di tecniche per l'autenticazione del
sito remoto (ossia, per controllare che il sito che sta dialogando con l'utente sia
proprio quello desiderato, e non un impostore che si spaccia per esso).
A livello tecnico, i protocolli di SSL si inseriscono tra
l'HTTP (il protocollo di trasmissione degli iperoggetti) e il TCP
(il protocollo che cura la trasmissione vera e propria dei dati); l'insieme dell'HTTP e
dell'SSL è denominato HTTPS, e il suo uso è individuato da URL
aventi come metodo https. Ad esempio, l'indirizzo
https://home.netscape.com/
indica una connessione HTTP al sito home.netscape.com
effettuata criptando le comunicazioni secondo quanto stabilito dall'SSL. Solitamente,
l'utente non inserisce direttamente un indirizzo di questo tipo, ma esso è richiamato a
partire da un'altra pagina o da un modulo. Inoltre, per poter effettuare una connessione
di questo tipo anche il server del sito deve essere opportunamente attrezzato.
Anonimato e privacy
A questo punto potreste chiedervi: perchè esistono modi di
spedire messaggi criptati o anonimi, e perchè essi non vengono messi fuorilegge? Il
motivo è semplice: l'anonimato è considerato da molti un importante diritto di chi vive
su Internet, ed un vantaggio di valore incommensurabile. Questo è vero in molti casi: ad
esempio, ve la sentireste di criticare apertamente il comportamento dell'azienda in cui
lavorate su un newsgroup internazionale, anche se a ragione? O di parlare delle vostre
vicende più intime, come avviene in certi gruppi che parlano di salute o di alcolismo o
di abusi sessuali subiti, rivelando subito a tutti il vostro nome? Bisognerebbe sempre
avere il coraggio delle proprie idee, ma talvolta ciò non è possibile.
Non bisogna quindi pensare che la
crittografia o l'anonimato siano un mezzo per compiere crimini o comunque per nascondere
messaggi particolarmente riservati. In particolare, cifrare un E-mail è semplicemente
l'equivalente elettronico di inserire una lettera in una busta per evitare che il postino
e qualsiasi impiegato dell'ufficio postale possano facilmente leggere la vostra
comunicazione. Per questo motivo, l'uso di PGP è caldamente consigliato: si tratta
semplicemente di difendere la propria privacy. Bisogna anche sapere che l'autore del
programma è stato processato negli Stati Uniti per aver reso disponibile al mondo questo
tipo di crittografia, che è il più avanzato esistente e, negli Stati Uniti, è
considerato di grande importanza militare; tanto è vero che a tutt'oggi è illegale, per
un utente europeo, prelevare il programma da un sito americano, e viceversa, in quanto si
compirebbe un reato di esportazione illegale di segreti militari. I problemi legali legati
alla crittografica, comunque, sono sempre aperti; in molti paesi del mondo, anche
civilissimi (come la Francia), cifrare i propri messaggi è illegale. Difatti, la
crittografia può essere di grande aiuto ai criminali, e scardinare tutti i tradizionali
sistemi di controllo sotterraneo della criminalità; d'altra parte, come già detto, essa
è essenziale per difendere la privacy dei singoli e prevenire fenomeni di "grande
fratello".
Sistemi
di sorveglianza e controllo
PGP disponibile
Key ID: 0679D549
Fingerprint: 07 83 9F A5 95 A9 4E E6 A9
D1 71 0B 2C B2 19 2A |
Preleva la mia
chiave pubblica PGP scegliendo tra uno dei tre formati disponibili:
amadeus.zip o amadeus.asc
o amadeus.txt |
|