La Sicurezza del VoIP

La notizia è sui giornali di tutto il mondo in queste ore: la Polizia bavarese ha perquisito l’abitazione di alcuni esponenti del Partito Pirata Tedesco, colpevoli di avere reso pubblico un documento da cui si evince che la stessa Polizia bavarese, in spregio ad una serie di risoluzioni del governo federale tedesco e della Comunità Europea, ha tentato di sviluppare una tecnologia basata su Trojan Horse e Worm con cui intercettare le conversazioni VoIP dei cittadini, soprattutto quelle basate su Skype. Potete leggere la notizia in questo articolo di Gaia Bottà su Punto Informatico: “Germania, il trojan tradisce le autorità”.

Considerando la grande diffusione di Skype e di altri sistemi VoIP, anche “incapsulati” negli abbonamenti ADSL+Voice di molti operatori, c’è sicuramente da preoccuparsi per la propria privacy. Il rischio di finire intercettati (e non solo dalla Polizia) è abbastanza concreto e deve essere tenuto presente.

Qui di seguito riporto alcune mie personalissime riflessioni sulla sicurezza dei sistemi VoIP, sperando che possano esservi utili a capire meglio la situazione esistente.

ATTENZIONE: se state cercando uno di quegli articoli tecnici, ricchi di dettagli sistemistici e di frammenti di codice, avete sbagliato posto. Internet è piena di articoli di questo genere e non c’è nessun motivo di scriverne altri. Potete trovarli eseguendo questa ricerca di Google.

Quella storiaccia brutta de Skype

Skype è sotto osservazione da tempo per vari motivi legati alla sua sicurezza. Tra le altre cose, si sospetta che contenga delle backdoor che permettono al personale di Skype di ascoltare le conversazioni degli utenti:

http://en.wikipedia.org/wiki/Skype#Security_concerns

In particolare:

“The implementation of a text filter in China [19] suggests that Skype makes use of its eavesdropping capabilities if necessary, or whenever it is in their economic interest.”

In questi giorni, tuttavia, si è scoperto che anche la Polizia bavarese vorrebbe creare un suo sistema per intercettare le comunicazioni su Skype:

“È in questo clima che il Partito Pirata locale, informato da una fonte anonima, ha deciso di dare spazio a dei documenti che testimonierebbero l’avanzata fase si sviluppo dei sistemi di intercettazione voluti dalle autorità tedesche. Si trattava di documenti emessi dal ministro della Giustizia locale: assicurava di poter gestire le intercettazioni di comunicazioni cifrate, esponeva il listino prezzi e le condizioni del servizio offerto da Digitask, l’azienda incaricata dello sviluppo dei trojan. Vi si spiegava coma le forze dell’ordine avrebbero potuto installare, aggiornare e rimuovere in segreto il software sul computer del sospetto, come avrebbero potuto ascoltare le conversazioni Skype, come per 3500 euro si potesse usufruire di un mese di servizio. I documenti erano stati messi a disposizione sul sito del Partito Pirata, erano stati pubblicati su Wikileaks.”

[Da Punto Informatico]

Insomma, Skype è ormai diventato una “storiaccia” e si può solo consigliare di tenersene alla larga. Il discorso, tuttavia, è molto più ampio e riguarda il software VoIP in genere, così come l’ambiente hardware e software in cui esso si trova ad operare.

Vulnerabilità #1: il client

Come ha ampiamente dimostrato la triste vicenda bavarese citata all’inizio, uno dei punti deboli dei nostri sistemi di comunicazione VoIp è il client, inteso come PC personale e software installato su di esso.

Se qualcuno riesce ad installare un programma spia (spyware) sul nostro PC, può ascoltare le nostre conversazioni VoIP (registrando l’audio in ingresso dal microfono e quello in arrivo alle cuffie) esattamente come può leggere le nostre password (dalla sequenza di tasti premuta) e qualunque altro documento (sul disco fisso).

Tenere lontano gli spyware da un PC Windows è estremamente difficile. Anche i più raffinati antivirus si trovano a volte in difficoltà. La ragione di questa vulnerabilità, specifica di Windows e solo di Windows, risiede nel fatto che in molte versioni di questo sistema operativo l’utente può installare software che opera a livello di sistema operativo e di kernel (come i driver) senza nessun controllo. Di conseguenza, se si riesce a convincere l’utente (con l’inganno, ovviamente) ad installare qualcosa sul suo PC, o si riesce ad installarlo di nascosto sfruttando le credenziali dell’utente, si può installare un “driver” che siede tra le periferiche di input (tastiera, microfono, etc.) ed il sistema. Questo “driver” registra ogni cosa e spedisce le registrazioni altrove usando la connessione Internet. Tutte le versioni di Windows, tranne Windows NT, 2000, XP e Vista soffrono di questo problema. In realtà, anche NT, 2000 e XP Home non lo risolvono in maniera adeguata (perchè dipendono dalla competenza dell’utente).

Questa tecnica non è applicabile su nessun altro sistema operativo. Linux, BSD, OpenSolaris e Mac OS X (che derivano tutti da Unix) separano chiaramente il ruolo dell’utente da quello dell’amministratore di sistema. L’utente non può installare driver (o altri programmi “di sistema”) e quindi non può installare (senza rendersene conto) programmi spia. Nemmeno un eventuale hacker che riuscisse a penetrare nel sistema con le credenziali dell’utente potrebbe farlo. L’unico utente che può installare driver (e programmi spia) è “root”, l’amministratore unico del sistema. Ovviamente, l’utenza “root” viene usata di rado sui sistemi Unix e viene sempre usata con cognizione di causa.

Come se tutto questo non bastasse, i worm ed i trojan horse usati per installare gli spyware, e gli spyware stessi, solitamente (nel 99,9999% dei casi) funzionano solo su Windows e, nel 70% dei casi, solo su software Microsoft (Internet Explorer, Outlook, Word, Excel, etc.).

La prima precauzione da prendere per evitare di essere intercettati consiste quindi nel non usare Windows. Almeno non usare le versioni di Windows precedenti ad XP e Vista e, in ogni caso, usare due utenze separate (una “normale”, priva dei privilegi di amministrazione, per l’uso quotidiano, ed un’altra, di amministrazione, da usarsi solo per l’amministrazione di sistema). In ogni caso, è opportuno non usare software Microsoft, soprattutto è meglio non usare Internet Explorer e Outlook (ora “MS Mail).

Usate Linux (Ubuntu o roba simile), usate BSD (ottime le “distro” PC-BSD e DesktopBSD) o compratevi un Mac. Usate Firefox, Opera, Safari o Chrome per navigare sul web. Usate Thunderbird come client di posta. Usate OpenOffice o ThinkFree Office per i vostri lavori di ufficio, al posto di MS Office.

Ma non è finita qui: se permettete a qualcun’altro di accedere fisicamente alla vostra macchina, questa persona può farla ripartire da una live distro di Linux (Knoppix o roba simile) e rovistare sulla vostra macchina. Può crackare le vostre password (con Ophcrack o simili). Può far ripartire la vostra macchina, accedere alla sessione di amministrazione con le password che ha scoperto ed installare tutto quello che vuole.

Contro questo tipo di attacco non c’è difesa (quasi…). Nemmeno Linux, BSD, Solaris o Mac OS X possono proteggervi da un attacco di questo tipo. Niente può farlo, tranne una buona password del BIOS.

Tenete gli estranei alla larga dal vostro PC.

Vulnerabilità #2: il canale

Il canale di comunicazione che si instaura tra voi ed il vostro interlocutore può essere cifrato (su Skype è cifrato sempre e comunque). In questo modo, un estraneo non può “origliare” lungo il cavo.

Assicuratevi di usare un programma VoIP che cifra il canale di comunicazione. Se non sapete quale scegliere, consultate questa tabella comparativa di Wikipedia. Se il vostro programma non supporta la crittografia, usate Zfone per aggiungerla.

Tenete presente che un sistema crittografico è sicuro solo se non contiene delle “backdoor” nascoste. Skype è un programma a sorgente chiuso, protetto da brevetti. Solo Skype sa cosa c’è veramente dentro al suo programma. Potrebbe benissimo esserci una backdoor. Anzi: alcuni recenti episodi fanno pensare che ci sia davvero una backdoor nei programmi di Skype e che quindi il personale di Skype possa ascoltare le comunicazioni dei suoi utenti.

C’è solo un modo di evitare questo rischio: non usare Skype.

Usate OpenWengo, Ekiga, Gizmo o qualcosa di simile. Scegliete un programma a sorgente aperto, dentro il quale nessuno possa nascondere qualche porcheria.

NOTA: crittoanalisi

Sebbene il traffico VoIP sia normalmente cifrato (e compresso), alcuni ricercatori hanno scoperto che è possibile identificare alcune parole dalla lunghezza del “pacchetto” che le contiene:

Compressed web phone calls are easy to bug

Eavesdropping on Encrypted Compressed Voice

Oltre a questo, è sempre possibile tentare di decrittare una conversazione con tutta calma dopo averla salvata su file. Con i computer che ci sono in giro al giorno d’oggi, non è plausibile che qualcuno ci riesca ma… non è detto che le cose non possano cambiare nel prossimo futuro..

Vulnerabilità #3: il server

La vostra comunicazione passa attraverso diversi altri computer prima di arrivare a destinazione. Ognuno di questi server può tentare di decifrare la vostra comunicazione e “origliare”. Ciò che impedisce al proprietario del server di riuscirci è la cifratura del canale.

Ovviamente, se il proprietario del software che voi usate (Skype) è lo stesso dei server (Skype) e nel software c’è la backdoor che tutti temiamo… siete perduti.

Usate un servizio (dei server) forniti da una azienda diversa da quella che produce il programma che usate. Usate dei server “aperti” a diversi tipi di client.

Vulnerabilità #4: il software

Come abbiamo detto, ci sono ragioni per pensare che dentro Skype ci sia una backdoor che permette di intercettare le comunicazioni degli utenti. Potete approfondire questo argomento leggendo questi articoli:

http://en.wikipedia.org/wiki/Skype#Security_concerns

http://en.wikipedia.org/wiki/Skype_security

In realtà, qualunque programma che scaricate ed installate “a scatola chiusa” (cioè come file binari precompilati) può contenere una backdoor.

Usate Linux ed imparate ad installare i programmi partendo dai sorgenti. Non è difficile.

Vulnerabilità #5: i codec

I codec sono i programmi che codificano in formato digitale la voce (che, per come viene acquisita dal microfono, è analogica) e la riconvertono in formato analogico all’arrivo, prima di inviarla alla scheda audio.

Sfortuna vuole che i codec siano quasi tutti proprietari, siano quasi tutti a sorgente chiuso e che solo chi li ha scritti sappia cosa veramente fanno.

Per quello che ne sappiamo, uno di questi codec potrebbe spedire una copia della vostra conversazione direttamente alla CIA (od al KGB, a seconda di chi considerate il nemico peggiore).

L’unico modo di evitare questo rischio consiste nell’usare dei codec a sorgente aperto, come Speex.

Se usate il videotelefono, fate attenzione anche ai codec video…

I contratti ADSL+voce ed i cellulari

Ricordatevi che se avete un contratto ADSL+Voce, quasi certamente il vostro traffico voce è di tipo VoIP. Valgono quindi le stesse considerazioni già fatte per tutti gli altri sistemi ma con una aggravante: non avete nessuna possibilità di scegliere né il software, né la cifratura del canale, né i server.

Più in generale, tutti i tipi di telefono possono essere intercettati, se si ha accesso ai server che gestiscono il traffico (e non è solo la Polizia ad avere accesso a quei server. Leggetevi questi articoli di Bruce Schneier: “VoIP Encryption” e “Phone Tapping in Greece”). Bisogna quindi imparare a trattare i propri affari con una maggiore cautela.

Chi tratta affari “delicati” non lo fa mai per telefono. Non lo fa mai per posta elettronica e non lo fa mai per iscritto. Solo i nostri politici sono così fessi da farsi beccare in questo modo.

Se vi è possibile, date appuntamento al vostro interlocutore in una sala rumorosa (il Pachinko va abbastanza bene) e parlate a bassa voce.

Se avete bisogno di scambiare informazioni a lunga distanza, procuratevi un telefono cifrante (“criptofonino”. Vedi anche questo articolo di Marco De Salvo: “Criptofonino. Il telefono GSM che non può essere intercettato.”) o usate una connessione VoIP costruita nel modo che ho spiegato in questo articolo.

Perdete il vizio di parlare dei vostri interessi al cellulare o dal telefono dell’ufficio.

Solidarietà ai Pirati tedeschi

Ora che abbiamo spiegato come non farsi intercettare, permettetemi di dire che trovo scandaloso il modo in cui ha operato la Polizia bavarese. Non solo ha agito in aperto contrasto con quanto già deliberato, in varie occasioni e varie sedi, dal Governo Tedesco e dalla Comunità Europea, ma sta persino cercando di vendicarsi nei confronti di chi ha scoperto e reso pubblici i suoi loschi propositi.

Speriamo vivamente che, per una volta, Angela Merkel si lasci andare ad una sana incazzatura e dia una sonora tirata d’orecchie a questi epigoni della Gestapo.

Che fare?

Mio nonno diceva spesso: “male non fare, paura non avere”. Poi però è andato al potere Benito Mussolini ed ha stabilito che molte cose che mio nonno riteneva del tutto innocue erano “male”. Alla fine, Benito ha regnato indisturbato per vent’anni e mio nonno (che pure era un fascista convinto) ha dovuto andarsene in Belgio.

Accettare passivamente che ci vengano tolti dei diritti, come quello alla riservatezza delle comunicazioni, non è un segno di “misuratezza”, di “tolleranza”, di “senso di responsabilità sociale” o di “equilibrio”. È solo segno di ingenuità o di vigliaccheria.

Fatevi sentire.

Alessandro Bottoni

Lascia un commento