Connessioni sicure: ma quanto lo sono?

Transcript

Connessioni sicure: ma quanto lo sono?
Connessioni sicure: ma quanto lo sono?
Vitaly Denisov
Contenuti
Cosa sono le connessioni sicure ?..................................................................................................................2
Diversi tipi di protezione contro i pericoli del network……………………...………………………….….4
Il pericolo delle connessioni sicure…………………………………………………………………………6
Gmail e virus………………………………………………………………………………………………..7
Web server virus…........................................................................................................................................7
Soluzioni……………………………………………………………………………………………………7
Kaspersky Internet Security………………………………………………………………………………...9
Conclusioni…………………………………………………………………………………………..........11
1
Che cosa sono le connessioni sicure?
Le connessioni sicure sono create per proteggere le informazioni inviate tra due computer via Internet. Le
connessioni sicure dovrebbero:

Mascherare informazioni confidenziali a terzi

Verificare l’identità della persona con cui sono state scambiate le informazioni

Proteggere le informazioni affinché terzi non vi possano accedere o le possano modificare
Fig. 1. Accesso ad una mailbox MS Exchange Server attraverso una connessione sicura
Esistono poche modalità per difendere la trasmissione di informazioni e tutte queste richiedono l’uso di
informazioni codificate e di chiavi speciali per leggerle. Queste chiavi (anche conosciute come certificati)
di solito sono conservate in un database apposito – un archivio di certificati – e sono accessibili solo
dagli utenti autorizzati.
1. Informazioni crittografate. Questo metodo maschera le informazioni (ad esempio le email) da terzi e fa una verifica di chi le ha inviate. Tuttavia, non verifica l’identità dei due
computer coinvolti nello scambio di informazioni. Per creare un messaggio codificato e
per avere due destinatari che lo leggano, bisogna che all’interno di questi siano installati
dei programmi appropriati come PGP, GPG o S/MIME. La maggior parte delle
informazioni crittografate sono trasferite via e-mail.
2
Fig. 2. Codificare le informazioni con PGP
2. Crittografare un canale di trasferimento. Questo metodo occulta l’intero contenuto
della connessione e verifica l’autenticità di tutti i computer che ne fanno parte. Tuttavia
in molte situazioni le informazioni stesse, contrariamente a quanto accade nel primo
metodo, non vengono verificate. Per esempio, non è possibile l’identificazione di chi ha
mandato un e-mail ricevuta attraverso un canale codificato. Questi protocolli di
codificazione sono chiamati SSL e TLS
Fig. 3. Impostazioni delle connessioni sicure in Outlook Express
Oggi la stragrande maggioranza di applicazioni Internet è dotata di supporti per canali di trasferimento
codificati: i server email e i programmi client, web server e browser, così come molte applicazioni
proprietarie, come i sistemi bancari usati per gestire conti e fare pagamenti on-line. La semplicità di
questo metodo è ovvia per gli sviluppatori: un protocollo standard di trasferimento dati può essere
inserito all’interno di connessioni di network sicure, riducendo al minimo la necessità di effettuare delle
modifiche alle applicazioni già pronte. Così funzionano i protocolli più conosciuti:
3

HTTPS (normalmente HTTP – il principale protocollo Internet che è codificato con SSL/TLS)

POPS (normalmente POP3 – il principale protocollo per ricevere e-mail, codificato con
SSL/TLS)

SMPTPS (normalmente SMTP – il principale protocollo per inviare e-mail codificato con
SSL/TLS)

MAPS (normalmente IMAP4 – un protocollo comune per ricevere e-mail, codificato con
SSL/TLS)
 NNTPS (normalmente NNTP – un protocollo comune per leggere notizie,
SSL/TLS)
codificato con
Alcuni servizi sono offerti esclusivamente attraverso una connessione codificata, come la conosciuta
Gmail.
Questo articolo esamina i canali codificati di trasferimento, anche chiamati connessioni secure.
Diversi tipi di protezione contro i pericoli della rete
Le connessioni di rete sono utilizzate per trasmettere non solo informazioni utili ma anche informazioni
maligne che possono creare pericoli per i computer. Tipici esempi di informazioni maligne sono
rappresentati da pericoli come gli attacchi di hacker, i Trojan, gli e-mail worm e gli exploit che sfruttano
vulnerabilità di alcune applicazioni.
I seguenti tipi di programmi e di pacchetti di applicazioni possono essere usati per combattere questi
attacchi:

Firewall
o Controlla ogni connessione network sul computer locale in accordo con certe regole
definite: la connessione sarà accordata o respinta.
o Può identificare (ma non eliminare) i Trojan quando cercano di trasmettere a terzi le
informazioni personali raccolte.
o Non può individuare virus indipendentemente dal tipo di connessione.
4
Fig. 4. Normative firewall per un’applicazione

Protezione contro gli attacchi al network (IDS: Intrusion detection system)
o Esegue la scansione ed è capace di bloccare gli attacchi per i quali esiste una firma
digitale in una connessione di rete definita, indipendentemente dal protocollo
o Può individuare i virus, ma non può eliminarli dai comuni protocolli HDCL HTTP e
POP3. Quando viene rilevato un virus in un’e-mail ricevuta via POP3, l’unica possibile
azione è terminare la connessione di rete . Ciò non garantisce, tra le altre cose, protezione
contro i virus rilevati nell’e-mail e, quando l’utente cerca di ricevere altre e-mail dal
server, l’e-mail infettata causerà la disconnessione della macchina vittima dell’infezione
dal server di posta
o Non può individuare i virus che si trovano all’interno di una connessione crittografata
Fig. 5. Blocco di un attacco al network.

Soluzioni Antivirus (e-mail e web)
o Può identificare e neutralizzare i virus che si trovano nel database durante l’invio e la
ricezione di informazioni attraverso un protocollo HDCL conosciuto.
5
o Non può identificare i virus all’interno di una connessione crittografata
Fig. 6. Identificazione di un virus all’interno di un file scaricato
Il pericolo delle connessioni sicure
Come detto sopra, si possono trasmettere attraverso le connessioni di rete informazioni utili e anche
maligne. Le soluzioni standard proteggono i computer dai pericoli presenti all’interno di connessioni
network standard, ma non sono in grado di reagire contro i pericoli che si trovano all’interno delle
connessioni sicure. E’ impossibile verificare il contenuto delle connessioni sicure proprio per la loro
natura, così come dimostrato dai diversi tipi di protezione elencati sopra. Da ciò risulta che i dati maligni
all’interno di canali sicuri possono causare una notevole quantità di danni, alle volte maggiori di quelli
che si potrebbero avere nel caso di trasmissione di informazioni attraverso delle connessioni standard.
Poiché risulta semplice codificare un canale di network e poichè che nella maggior parte dei casi non ci
sarà una verifica di chi ha creato il file, ci si trova di fronte ad una situazione alquanto contraddittoria: una
“connessione sicura” ad un server infonde all’utente un senso di sicurezza, ma non garantisce che la
connessione sarà esente da informazioni maligne
I rischi inerenti le “connessioni sicure” appaiono alquanto chiari soprattutto oggigiorno, in quanto questo
tipo di connessione si sta diffondendo sempre di più. Dopo che gli sviluppatori hanno garantito il
supporto SSL/TLS per tutte le applicazioni web più popolari, un certo numero di server su Internet hanno
cominciato ad offrire i loro servizi via SSL/TLS: insieme ai maggiori siti bancari, tutti i grandi fornitori di
servizi email hanno previsto l’accesso al loro sito esclusivamente attraverso connessioni sicure. La
preparazione degli amministratori di tali server spesso non è all’altezza perchè questi possano
configurare correttamente una connessione sicura al server.
La situazione è inoltre peggiorata dal fatto che un attacco su un computer può essere sferrato in maniera
remota, come ad esempio inserendo semplicemente un file maligno su un server che può essere raggiunto
solo attraverso una connessione sicura.
6
Alcuni esempi si possono trovare sotto
Gmail e virus
Il famoso servizio Gmail offre l’accesso ai propri server esclusivamente attraverso una connessione
sicura. Si sa che i server Gmail usano un programma antivirus. Adesso, consideriamo alcune ipotetiche
situazioni:
1. Uno scrittore di virus manda il suo virus ad un utente di Gmail
2. L’antivirus di Gmail non identifica il virus poiché l’aggiornamento del database antivirus è in
ritardo
3. Dopo un po’ l’utente scarica la e-mail infetta dal computer locale poiché l’antivirus Gmail è stato
ottimizzato, nel senso che ora attua la scansione delle e-mail solo quando queste raggiungono
l’inbox e non quando queste sono trasmesse dall’utente.
4. Il programma antivirus sul computer locale, che ha già aggiornato il suo database includendo le
nuove definizioni di virus, non identifica il virus in quanto la connessione di rete non è in linea
con i requisiti di Gmail e l’antivirus per le e-mail non è riuscito a scannerizzare la e-mail.
5. Il file antivirus riesce a identificare il virus nel database delle e-mail e indica che tutto il database
delle e-mail deve essere eliminato poiché spesso risulta impossibile ripulire un database infetto.
6. Risultato: l’utente perderà tutta la sua corrispondenza.
Web Server Virus
Un esempio altrettanto interessante: un utente maligno può caricare un file maligno in un web server e poi
spingere gli utenti Internet a visitare quel server. Se il virus è posizionato su un server regolare HTTP, un
computer con un software antivirus non incorrerà in alcun pericolo. Tuttavia se il virus è posto su un
server HTTPS la situazione sarà un po’ più complicata:
1. Lo scrittore di virus può servirsi di una vulnerabilità per accedere a file conservati nel server
(come
nel
caso
dei
server
Valuehost,
di
un
provider
russo:
http://www.viruslist.com/ru/weblog?weblogid=207758614) e può sostituire i file con il virus
2. Un utente apre un sito web familiare con un browser standard che usa HTTPS. Il web antivirus
non può leggere le informazioni nella connessione crittografata e non può evitare che i file infetti
siano scaricati.
3. Al posto di una normale pagina web, il browser carica un virus che sfrutta una vulnerabilità del
browser. Il virus immediatamente eseguirà il suo codice all’interno del browser. Il file antivirus
non può bloccare l’esecuzione del codice maligno poiché il file infetto viene elaborato dal file
antivirus solo dopo essere stato salvato su un disco, in questo caso solo dopo che il codice
maligno è stato eseguito.
4. Risultato: il computer viene infettato
Soluzioni
Per riuscire a controllare le informazioni trasferite attraverso connessioni sicure, la maggior parte degli
sviluppatori di antivirus offrono dei plug-in per il web. Questo approccio ha dei vantaggi e degli
svantaggi:
7
–
–
Vantaggi:
•
Il flusso di informazioni tra client e server non è colpito
•
Il flusso di informazioni non è accessibile a terzi
Svantaggi:
•
E’ impossibile creare un plug-in per certe applicazioni. Un esempio chiave:
Outlook Express, il più diffuso programma e-mail
•
Ci sono delle limitazioni nell’utilizzo di plug-in. Un esempio: MS Outlook
Fig. 7. Un antivurus plug-in per Microsoft Office Outlook .
Un’alternativa all’uso di plug-in è l’utilizzo del metodo man-in the middle per il controllo del traffico.
Questa soluzione supera gli aspetti negativi dell’architettura del plug-in. Sebbene questo abbia i suoi
svantaggi, i produttori di antivirus sono stati spinti a implementare questo approccio per proteggere i loro
utenti.
Questo metodo è un attacco sull’essenza di SSL/TLS, poiché questo intercetta la connessione sicura,
sostituisce la certificazione originale e crea due connessioni sicure: una tra l’applicazione e il proxi
antivirus, l’altra tra il proxi antivirus e il computer remoto
Fig. 8. Una connessione sicura standard
8
Fig. 9. Un’assodata connessione sicura.
- Pro:
•
Le connessioni possono essere analizzate per ogni applicazione client
•
La connessione può essere analizzata per la ricerca di virus sotto qualsiasi
protocollo.
•
Oltre alla scansione antivirus, il proxi può eseguire tutte le altre operazioni
cercando attività di phishing, spam, etc.
•
Il flusso di informazioni non può esser visto da terzi a meno che questi non
conducano un attacco man-in-the-middle.
- Contro:
•
Il flusso di informazioni tra client e server è modificato, con questi risultati:
–
Le applicazioni web non possono verificare l’autenticità di un server
–
Un server non può verificare l’autenticità di un client
–
Se il proxy non svolge le proprie verifiche, potrebbe verificarsi un
secondo attacco man-in-the-middle (tra il proxi e il server)
Nella pratica la scansione del traffico non presenta alcun pericolo per l’utente. La scansione viene
effettuata nella macchina locale; si può richiedere all’utente di effettuare delle scelte e tutti i certificati
remoti possono essere controllati dai software antivirus e dagli archivi dei certificati così come viene fatto
dalle applicazioni web.
Gli svantaggi del metodo man-in-the-middle sono più che compensati. Il computer sarà totalmente
protetto contro i rischi in tutti i tipi di connessioni network.
Kaspersky Internet Security
Kaspersky Internet Security offre soluzioni che verificano tutti e due i tipi di connessioni sicure:
1. Plug-in per applicazioni web:
o MS Outlook,
o TheBat,
o IE ScriptChecker
9
2. Verifica della sicurezza delle connessioni nel traffico usando il metodo del man-in-the-middle
o Kaspersky Internet Security informa l’utente di tutte le azioni che compie

Dà comunicazione all’utente di sostituzioni di certificazioni del server

Verifica i certificati ricevuti da un server negli archivi di certificati Windows
esattamente alla stessa maniera delle applicazioni web

Non è incluso lo stadio finale del metodo man-in-the-middle. La registrazione di
certificati sostituti, all’interno degli archivi dei certificati riconosciuti, deve
essere eseguita dall’utente.
o Kaspersky Internet Security offre l’opzione di disattivare il controllo di certe connessioni
(opzioni di configurazione: applicazioni/server/porte). Questo elimina ogni eventuale
domanda che potrebbe presentarsi circa il corretto funzionamento di servizi che
controllano l’autenticità del cliente
o Kaspersky Internet Security verifica ogni possibile parametro all’interno delle
connessioni sicure
10

Il componente web antivirus identifica i virus nel traffico browser

Il componente e-mail antivirus identifica i virus nel traffico e-mail

Il componente anti-phishing identifica i falsi siti web e i link a loro diretti

Il componente antibanner blocca i pop-up

Il componente antispam blocca la corrispondenza indesiderata
Fig. 10. Identificazione di un file di testo eicar all’interno di una connessione browser sicura
Conclusioni
Le connessioni sicure sono create per proteggere le informazioni contro eventuali modifiche e furti.
Tuttavia, i pericoli descritti rimangono ancora un problema reale contro cui le connessioni sicure non
possono proteggersi.
E’ interessante notare come il termine connessione sicura possa ingannare l’utente creando un falso senso
di sicurezza. La situazione è peggiorata ancor più dal fatto che, all’interno dei canali sicuri, non si
possono utilizzare soluzioni standard di sicurezza.
Bisogna usare metodi speciali per fornire una protezione totale contro i pericoli del network. La soluzione
più semplice ed ovvia è l’uso di plug-in per i web browser. Sfortunatamente, i plug-in non sono universali
e molte applicazioni non li supportano o impongono troppe restrizioni sulle loro funzionalità. Un’altra
soluzione trovata dai produttori di antivirus riguarda la verifica del traffico.
I rischi delle connessioni sicure non dovrebbero essere sottovalutate . Quando prendi delle decisioni circa
la sicurezza del tuo computer, assicurati che la tua soluzione antivirus fornisca piena protezione contro
tutti i pericoli della rete.
11