Alessandro Bottoni

Aprile 6, 2009

Il Futuro delle Comunicazioni Digitali

Archiviato in: Business, Internet, Networking, Ricerca, Sysadmin, Tecnologia, sicurezza, telefonia — alessandrobottoni @ 11:48 am
Tags: , ,

Viste le notizie degli ultimi giorni, credo che valga la pena esaminare alcune delle più promettenti novità tecnologiche per capire quale possa essere il loro impatto sul mercato e sulla nostra vita sociale.

Per capire quale sia il quadro politico, vi prego di leggere anche questo articolo di Scambio Etico:

http://www.scambioetico.eu/index.php?&topic=673.0

NOTA: Mentre leggete questo articolo, tenete presente che gli smartphone che stanno invadendo il mercato sono quasi sempre dotati di sistema operativo (Windows Mobile, Symbian, Linux, etc.) e di scheda di rete 80.2.X (Wi-Fi). In altri termini, qualunque cosa si possa fare su un normale laptop/notebook si può fare anche con gli smartphone. Ad esempio, si può creare una connessione “ad-hoc” tra due terminali per scambiare file.

Skype sugli Smartphone

La notizia è proprio di questi giorni: finalmente Skype diventa disponibile sui telefoni cellulari di terza generazione (smartphone):

http://www.repubblica.it/2007/08/sezioni/tecnologia/cellulari/nokia-apple/nokia-apple.html?ref=hpspr1

Peraltro, Skype non è certo né l’unica né la prima tecnologia di questo tipo ad arrivare sui cellulari:

http://www.fring.com/

http://www.nimbuzz.com/

http://www.noverca.it/

Su molti smartphone dotati di sistema operativo si possono (o si potranno presto) installare anche i normali sistemi già usati sui Noetbook, come Gizmo, Wengophone ed Ekiga. Skype è solo il “culo più grosso”, come direbbero gli americani (“the largest ass” – to kick, ovviamente). Vedi:

http://it.wikipedia.org/wiki/VoIP

http://it.wikipedia.org/wiki/Skype

L’arrivo di Skype sui cellulari crea ovviamente un grosso problema agli operatori telefonici, che rischiano di verdersi sottrarre una parte importante del loro fatturato. D’altra parte, crea un grosso problema anche ai governi, che rischiano di vedersi sottrarre le ultime possibilità di controllare ed intercettare le telefonate delle persone oneste e dei dissidenti politici (le telefonate dei criminali NON erano intercettabili già da anni). Questo porta ad un certo “nervosismo” sui mercati:

http://punto-informatico.it/2593806/Telefonia/News/internet-wireless-net-neutrality.aspx

Ma dove sta il problema?

Il problema sta nel fatto che queste telefonate possono essere effettuate sfruttando una qualunque connessione Wi-Fi, come quella disponibile in molti uffici o quelle “libere” disponibili in molti “hotspot” (stazioni ferroviarie, aeroporti, etc.). Ovviamente, se la telefonata avviene attraverso una connessione Wi-Fi, NON passa attraverso l’operatore (Telecom, Vodafone, etc.) e quindi l’operatore non ne sa nulla: non la può intercettare e non la può fatturare. Telefonate gratis e senza possibilità (neanche teorica) di intercettazione. Cosa si può volere di più dalla vita?

Skype può sostituire in toto le Telecom?

No. Per poter telefonare attraverso Skype (o qualunque altro sistema VoIP) in questo modo, è necessaria una connessione Wi-Fi. In una città, le connessioni Wi-Fi utilizzabili sono moltissime. Si pensi a quelle che si possono chiedere a prestito negli uffici od a quelle che si possono”scroccare” abusivamente camminando in strada. Oltre queste, ci sono molti hotspot pubblici. Tuttavia, non sempre è disponibile una connessione a cui agganciarsi e quindi non sempre si può fare affidamento su questa tecnica.

Come se questo non bastasse, bisogna tenere conto del fatto che le connessioni Wi-Fi possono essere facilmente saturate da un traffico voce come questo. Se tutto il personale di un ufficio comincia a sfruttare l’unico PoA (“Point of Access”) Wi-Fi disponibile in azienda per telefonare, dopo poco l’intero sistema si inchioda.

Bisogna anche tenere presente che NON si può usare una connessione Wi-Fi camminando per strada. I telefoni cellulari NON possono passare automaticamente da una “cella” Wi-Fi alla successiva in modo automatico, come fanno per il GSM e l’UMTS. Ogni punto di acesso Wi-Fi appartiene ad un diverso “operatore” (di solito un privato cittadino) ed è caratterizzato da un diverso nome, per cui la connessione va ricreata (manualmente o automaticamente) ad ogni passaggio. La riconnessione richiede tempo e fa saltare la comunicazione in corso perchè cambiano gli indirizzi di rete degli interlocutori.

Tutto questo, naturalmente, senza tenere conto del fatto che la stragrande maggioranza delle “celle” Wi-Fi disponibili sono in realtà protette da password ed inaccessibili.

In realtà, Skype su Cellulari è utilizzabile solo in luoghi dove comunque sarebbe più semplice e più economico usare la linea fissa normalmente presente: uffici e case private. L’unica vera eccezione sono le stazioni ferroviarie e gli aeroporti (dove peraltro sono disponibile le postazioni telefoniche tradizionali).

Skype non può quindi essere considerato un vero avversario per le TelCo e le TelCo non dovrebbero cadere nel facile tranello di fare la guerra a questo giocattolo, inimicandosi gran parte dei loro clienti solo per due soldi di mancata fatturazione.

Terranet

Terranet (http://www.terranet.se/), è una bestia completamente diversa ed apparentemente molto più pericolosa di Skype per le TelCo (vedi: http://en.wikipedia.org/wiki/TerraNet_AB).

In buona sostanza, si tratta di una tecnologia che permette a due telefoni distanti tra loro di comunicare passando attraverso una catena di altri telefoni che si trovano lungo il percorso (e quindi SENZA passare dalla TelCo).

Ad esempio, il telefono di un utente che si trova a Roma Termini potrebbe comunicare con quello di un altro utente che si trova a Piazza di Spagna passando attraverso i telefoni Terranet di due altri utenti che si trovano a Piazza della Repubblica ed in via Barberini. Tutto questo senza mai passare dalla rete del gestore (Telecom) e senza fare uso di nessuna rete ausiliaria, come Wi-Fi, Wi-MAX o Bluetooth. La connessione avviene direttamente da un telefono all’altro sfruttando la radio abitualmente usata per collegarsi alla cella del gestore. Ovviamente, il traffico è cifrato per cui nessuno dei telefoni che agiscono da intermediari può “origliare”. Ad essere più precisi, nessuno di questo telefoni può nemmeno identificare i due telefoni che stanno parlando.

Terranet può sostituire completamente le TelCo?

No. Terranet fa uso di una tecnologia nota come “Wireless Ad-Hoc Mobile Networking” (solitamente nota come MANET). Questa tecnologia è adatta a piccole reti con relativamente poco traffico. Se si tentasse di usare questa tecnologia per connettere migliaia di telefoni, l’intera rete collasserebbe.

Terranet, in realtà, è utilizzabile solo in aree a bassa densità abitativa (aree rurali) e che non possono essere completamente servite da piloni GSM/UMTS in modo economicamente remunerativo. Ad essere precisi, Terranet è realmente utilizzabile su larga scala e su ampie aree solo usando un mix di telefoni intermediari e piloni (“celle”).

Di conseguenza, Terranet è molto più utile alle TelCo per integrare ed allargare la loro offerta di quanto lo sia per gli utenti che vorrebbero scavalcare le TelCo.

Anche in questo caso, le TelCo non dovrebbero cadere nella facile trappola di fare la guerra a questa nuova tecnologia. Anzi: la dovrebbero sfruttare su larga scala per migliorare ed ampliare il loro servizio. Se sfruttata con intelligenza, Terranet è una GROSSA opportunità di guadagno.

Netsukuku

Se c’è qualcosa di cui le TelCo ed i governi dovrebbero veramente preoccuparsi sono le WMN (“Wireless Mesh Networks”) come Netsukuku (http://en.wikipedia.org/wiki/Netsukuku e http://it.wikipedia.org/wiki/Netsukuku in italiano).

Intendiamoci: anche Netsukuku soffre, almeno in parte, degli stessi limiti delle altre reti. Non può essere usata per collegare migliaia di terminali (telefoni o computer) perchè collasserebbe e non può essere usata al posto delle reti telefoniche 3G perchè non è in grado di riconfigurasi così velocmente ed in modo così indolore da non far cadere la comunicazione.

Tuttavia, Netsukuku può reggere un carico molto più ampio di altri tipi di rete Wireless e riesce a riconfigurarsi senza cambiare l’indirizzo dei terminali. Questo vuol dire che può essere usata per creare una MANET adatta anche alle comunicazioni VoIP. Soprattutto, può essere usata come base per sviluppare qualcosa di veramente adatto allo scopo, soprattutto se la si associa ad una tecnologia a lunga portata come Wi-MAX o HyperLAN.

Netsukuku, però, è anche anonima e cifrata. Usando questo tipo di reti, la possibilità di venire identificati e/o intercettati è sostanzialmente nulla.

Non c’è quindi solo il problema del mancato guadagno per le TelCo. C’è anche il problema della totale impossibilità di effettuare sorveglianza ed indagini da parte della Polizia. Questo può essere un bene o può essere un male, dipende da chi usa questa tecnologia. I privati cittadini potranno finalmente tirare un sospiro di sollievo perchè non dovranno più temere di giocarsi la casa per due brani Mp3 di Laura Pausini scaricati “illegalmente”. Tuttavia, i veri criminali faranno salti di gioia per la possibilità di mettere in piedi, senza nessun timore, una rete di comunicazione perfetta per il traffico di organi, la compravendita di bambini per il mercato pedofilo, il traffico di droga e via dicendo.

Meno “pericolosa” di Netsukuku, ma ugualmente promettente, è CuWIN (http://en.wikipedia.org/wiki/Cuwin). Molto più famosa di entrambe, è FON (http://en.wikipedia.org/wiki/FON).

Conclusioni

Le solite conclusioni di sempre: contrastate le persone ONESTE che si scambiano file musicali e film, che non comprerebbero comunque, e spingerete la rete verso sistemi perfetti per sostenere le attività dei veri criminali.

Sfruttate le nuove tecnologie con intelligenza e ne guadagneremo tutti (anche in termini economici).

Alessandro Bottoni

alessandro.bottoni@infinito.it

Aprile 4, 2009

Conservare i dati per i posteri

Archiviato in: Business, Sysadmin, Tecnologia, sicurezza — alessandrobottoni @ 7:29 am
Tags: , ,

Se avete una azienda od una attività professionale, quasi certamente avete il problema di conservare una certa quantità di documenti digitali per il periodo di tempo previsto da una delle nostre innumerevoli leggi. Tipicamente, si tratta di conservare qualche centinaio di documenti di testo (quasi sempre Microsoft Word in formato DOCX) ed uno o più database della contabilità per un periodo di tempo di 10 – 50 anni. Se avete questo problema, sapete già che non ha una soluzione semplice. Qui di seguito trovate qualche indicazione che può esservi d’aiuto.

Lo stato della discussione

Prima di procedere oltre, chiariamo un punto. La gente che si occupa di queste cose solitamente ricade in uno di questi due errori logici:

  1. Vi consiglia di usare un tape (un registratore a nastro) per i vostri backup perchè i tape sono più affidabili dei CD.

  2. Vi dice che non c’è soluzione perchè comunque la nostra tecnologia scomparirà dal mercato prima che abbiate bisogno di leggere i vostri dati e quindi qualunque tipo di backup, su qualunque supporto odierno sarebbe comunque privo di significato.

Entrambe queste tipologie di esperti dimostrano con i loro consigli di non aver assolutamente capito qual’è il problema in esame ma le ragioni del loro fallimento sono diametralmente opposte.

I primi sbagliano perchè il problema che dobbiamo affrontare non è quello dell’affidabilità dei supporti. Se anche un tape durasse in eterno, tra qualche anno sarebbe comunque impossibile trovare un drive per leggerlo, un computer a cui attaccare il drive (attraverso quale tipo di interfaccia?), sarebbe impossibile trovare il software necessario a leggere i dati e/o sarebbe impossibile far girare questo programma sui computer del 2059.

I secondi sbagliano perchè qui non ci viene chiesto di lasciare dietro di noi una “stele di rosetta” con le istruzioni per trattare le storie nucleari, cosa che richiederebbe una tecnologia in grado di resistere per decine di migliaia di anni. Non ci interessa superare la “barriera tecnologia” rappresentata dall’obsolescenza dell’informatica intesa come disciplina e la sua sostituzione con qualcosa che ora non possiamo nemmeno immaginare. Nel nostro caso, possiamo ancora dare per scontato che esisterà qualche tipo di computer quando dovremo recuperare i nostri dati, anche se sarà un computer molto diverso da quelli a cui siamo abituati.

Cosa conservare

Se vogliamo conservare dei dati in modo che servano effettivamente a qualcosa quando ne avremo bisogno, dobbiamo preoccuparci sin da adesso della loro leggibilità. Un documento è leggibile solo se esistono tutte queste condizioni:

  1. Esiste un programma in grado di caricare e visualizzare il documento (cioè un viewer od un editor).

  2. Esiste un ambiente operativo all’interno del quale quel viewer può essere caricato ed avviato (cioè un sistema operativo ospite).

  3. Esiste una macchina (reale o virtuale) sulla quale possano essere caricati il sistema operativo ospite, il viewer ed il documento.

Queste condizioni portano direttamente a delle conclusioni che non vi piaceranno. Le spiego in dettaglio qui di seguito.

L’esempio di MAME

La prima conclusione ovvia è che bisogna memorizzare insieme ai vostri dati sia il sistema operativo che usate (Windows, dico bene?) e le applicazioni che usate per creare i vostri documenti (MS Office?).

Solo a queste condizioni sarà possibile, in futuro, ricreare un ambiente di lavoro che vi permetta di leggere i vostri documenti.

L’uso di un formato standard, come ODF, è sicuramente una buona alternativa. Anzi: sarebbe ciò che dovrebbe essere già fatto per legge da almeno 5 anni (non lo sapevate?). Tuttavia anche l’adozione di un formato che adesso è standard ed è molto diffuso, come ODF, non dà nessuna garanzia sul fatto che tra 50 anni esisterà ancora un programma in grado di leggerlo.

L’unico modo di esserne sicuri consiste nel “portarsi dietro” anche il software. Un esempio eclatante della affidabilità di questo approcio ci viene da MAME. Questo emulatore di giochi ricrea lo stesso ambiente hardware su cui giravano i giochi “arcade” degli anni ‘70 ed ‘80 e permette di caricare e di eseguire i giochi. Il fatto che non esistano più da decenni i dispositivi hardware su cui originariamente giravano questi giochi non ci impedisce di continuare ad usarli.

L’Open Source obbligatorio

La seconda conclusione ovvia è che non potete usare nessun tipo di software commerciale per questo scopo semplicemente perchè non potete sapere se sarà possibile eseguire il programma tra 50 anni a causa della sua licenza. Windows Vista, con tutti i suoi catenacci, si lascerebbe installare su un PC sconosciuto tra 50 anni? Si lascerebbe eseguire? E che ne sarebbe di MS Office?

L’unico modo di essere sicuri di poter installare ed eseguire il vostro software sul vostro nuovo (e per ora sconosciuto) computer tra 50 anni consiste nell’usare sin da adesso solo software libero, come Linux ed OpenOffice.

La toolchain affidabile

A voler essere precisi, non potete usare nemmeno nessun tipo di programma “closed source”. Alcuni programmi sono liberi e gratuiti ma di essi non sono disponibili i sorgenti. Non c’è nessuna garanzia che sia possibile installare ed esguire questi programmi su un nuovo sistema tra 50 anni.

L’unico modo di esserne certi consiste nel portarsi appresso anche i sorgenti di questi programmi. Gentoo, ad esempio, può essere ricompilata su un nuovo computer da zero (anche su un computer virtuale, emulato su un altro computer).

L’unico elemento della toolchain che dipende veramente dall’hardware, infatti, è il compilatore C. Su Linux si usa GCC (GNU C Compiler). Tutto il resto del software (compresi gli altri compilatori di linguaggio) può essere ricostruito a partire dal compilatore C e dalle sue librerie di base. Questo infatti è ciò che permette di avere Debian su decine di piattaforme hardware diverse.

Quando, tra 50 anni, dovrete installare la vostra roba sul vostro nuovissimo computer, potrete sempre contare sul fatto che esista un compilatore C (od un traduttore dal C al loro nuovo linguaggio) che vi permetta di ricompilarlo. Molto probabilmente, esisterà anche una Virtual Machine in grado di emulare una architettura Intel su cui eseguirlo. Questo, infatti, è ciò che succede già oggi quando si cerca di recuperare del vecchio codice scritto per i computer degli anni ‘70, ‘80 e ‘90 e leggere i loro archivi di dati. Si tratta di una metodologia già collaudata e che si sa essere affidabile per esperienza diretta. Rileggete la documentazione di MAME per convincervene.

Dove conservare

Riguardo a questo punto, i consulenti tecnici sono soliti recitare questi due mantra:

  1. Non si possono usare dei server remoti per ragioni di privacy e di affidabilità a lungo termine. Il personale dell’azienda potrebbe accedere ai vostri dati e/o l’azienda che ospita i vostri dati potrebbe chiudere.

  2. I supporti (magnetici, ottici, etc.) sono comunque destinati a deteriorarsi nel giro di 10 – 30 anni, per cui l’unica soluzione di lungo periodo sarebbe quella di svincolarsi completamente dai supporti digitali e conservare le copie cartacee di tutto quanto.

Questi mantra ci lasciano però senza nessuna soluzione realmente praticabile.

In realtà, io credo che la soluzione “giusta” sia quella di conservare i propri dati su un server remoto in formato cifrato (il cosiddetto “Offsite Storage”, vedi: http://en.wikipedia.org/wiki/Off-site_data_protection). Le ragioni che mi spingono a crederlo sono le seguenti.

  1. Cifrando i dati, il problema della confidenzialità è risolto. Il fatto di dover memorizzare da qualche altra parte (dal notaio?) le password e di doversi “portare appresso” il software crittografico usato (GNU Privacy Guard, per esempio), non altera in maniera significativa la complessità del processo.

  2. Il server remoto viene continuamente seguito, sorvegliato, aggiornato e custodito dall’azienda che lo possiede. La sua affidabilità è sicuramente maggiore di quello che potreste ottenere voi nei ritagli di tempo.

  3. Se l’azienda chiude o se succede qualcosa che può compromettere la continuità del servizio, l’azienda è tenuta per legge ad avvisarvi. A quel punto potete migrare la vostra roba altrove.

Si tratta, come ho detto, di una opinione del tutto personale ma, se questo può rassicuravi, è quello che i programmatori come me fanno da sempre: sbattono i loro sorgenti su un server remoto (che agisce anche da sistema di versioning) e lasciano che sia il gestore di quel sistema ad occuparsene.

Potete usare un sistema come Amazon S3 o come CVSDude. Quest’ultimo fa anche da sistema di controllo di versione e per sua natura è più adatto a gestire solo qualche centinaio di file che cambiano frequentemente. Amazon S3 è invece un deposito indifferenziato e generico che può contenere centinaia di Gb di materiale facendovi spendere una cifra più che ragionevole. Amazon S3 è a prova di impatto da meteorite: i suoi server sono sparsi in giro per il mondo e creano un servizio distribuito che è praticamente immortale. Finchè ci sarà corrente elettrica su questo pianeta, ci sarà una copia utilizzabile dei vostri backup su uno dei loro server. Se tutti i loro server moriranno… il restore dei dati non sarà comunque una vostra preoccupazione (e neanche una preoccupazione di nessun’altro essere umano).

Conclusioni

Se dovete conservare i vostri documenti digitali per decine d’anni, fate un backup “fatto bene”, cifratelo e sbattetelo su uno dei server di Amazon S3 insieme ai sorgenti del software che usate in ufficio (compreso il programma di cifra). Fate incidere le password su una pietra e consegnatela ad un notaio. Tra 50 anni, sarete comunque in grado di ricostruire la “pila” di programmi necessari per leggere i vostri dati sui computer che esisteranno a quel tempo.

Potete trovare diversi servizi di online storage adatti allo scopo qui:

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

Sistemi più specifici per il backup remoto sono reperibili qui:

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

Non usate Windows e MS Office. Usate Linux ed OpenOffice.

Non usate i formati di MS Office (DOCX, XLSX, etc.). Usate l’ODF di OpenOffice.

Se dovete conservare i documenti di un deposito di scorie nucleari per 50.000 anni, questo approcio non funziona. Date un’occhiata a questi progetti:

http://it.wikipedia.org/wiki/Long_Now_Foundation

http://www.rosettaproject.org/

Ne trarrete sicuramente una utile ispirazione.

Alessandro Bottoni

alessandro.bottoni@infinito.it

Aprile 2, 2009

La Resistenza al Telecom Package

Se verrà approvato nella sua forma corrente il cosiddetto “Telecom Package” sarà la fine di Internet come noi la conosciamo (come pure della libertà personale, della democrazia e dello stato di diritto). Vista l’attuale preponderanza di governi neofascisti (Francia ed Italia) e neonazisti (Austria) in Europa, è altamente probabile che questa nuova forma di leggi razziali venga approvata. In questo malaugurato caso, cosa si potrebbe fare? Qui di seguito trovate qualche idea e qualche informazione.

Il volto del demonio

Secondo la descrizione che ne fornisce Scambio Etico, il Nazi Package prevede:

  1. Sarà possibile disconnetterti dalla Rete sulla base di semplici indizi, raccolti da società private senza autorizzazione della magistratura, che facciano sospettare che tu abbia condiviso contenuti protetti da copyright. Il tuo fornitore di accesso Internet sarà obbligato a collaborare con le società private per fornire i tuoi dati, e sarà costretto a procedere alla sospensione del servizio. Non avrai diritto né alla difesa né ad un equo processo.

  2. Il tuo fornitore di accesso sarà libero di filtrare contenuti, servizi e applicazioni a piacimento. Per fare solo un esempio fra i tanti possibili, diventerà lecito e legale bloccare Skype al fine di promuovere e costringerti ad acquistare un servizio VoIP a pagamento.

  3. Il tuo fornitore potrà applicare “differenziazioni di tariffe”, e farti pagare abbonamenti aggiuntivi per applicazioni e protocolli specifici, ad esempio per e-mail, FTP, newsgroups, chat, peer-to-peer ecc.; potrà inoltre liberamente decidere a quali siti web potrai accedere senza limitazioni, a quali potrai accedere con de-prioritizzazione del traffico (quindi con rallentamento nello scambio dati), e a quali non potrai accedere affatto.

  4. Qualsiasi società privata, per generici scopi di sicurezza di rete, potrà intercettare, memorizzare a tempo indefinito, leggere e analizzare, tutti i dati che invii e che ricevi sulla Rete senza autorizzazione di alcun organismo governativo, inclusa la magistratura.

Come potete vedere, il termine “nazista” per descrivere questa oscenità è ancora largamente eufemistico. Si tratta del peggior attacco alla libertà personale, al diritto di espressione, al diritto alla difesa ed alla riservatezza delle comunicazione che si ricordi a memoria d’uomo. Nemmeno Adolf Hitler e Josef Stalin erano mai arrivati a concepire un simile abominio.

Comunque, è evidente che il problema centrale diventa quello di sfruttare un modesto canale autorizzato (ad esempio un’asfittica connessione a 16 bit/mese HTTP verso un server considerato legittimo) per far transitare tutto il nostro traffico senza che il nostro mortale nemico (cioè l’ISP a cui paghiamo la connessione!) possa accorgersene. Non si tratta di una sfida facile ma… leggete il resto.

Tecnologia dell’oppressione

Per capire come si può sfuggire a queste crudeli SS, armate di doberman e fucile, bisogna capire come funzionano i loro cani da caccia, cioè i firewall. Più in generale,bisogna capire come funziona internet e come si mettono abitualmente in pratica (già adesso) queste odiose tecniche di sorveglianza, intercettazione, filtratura e blocco.

Per poter mettere in atto le politiche (“policy”) previste dallo Stalin Package, è necessario essere tecnicamente in grado di:

  1. Riconoscere il tipo di comunicazione che si vuole filtrare in mezzo a molti altri tipi di comunicazione lecita.

  2. Intervenire selettivamente su quel tipo di traffico per rallentarlo, filtrarlo o bloccarlo.

Per nostra fortuna, l’asino casca subito sul primo punto.

Per come è costruita Internet (che è una rete TCP/IP identica a molte LAN basate su Unix), il traffico è identificato da una o più di queste caratteristiche:

  1. La porta IP utilizzata. Ad esempio la porta 80 viene usata (spesso ma non sempre) per il traffico tra il browser web ed il server.

  2. Gli “header” contenuti nei pacchetti (datagrammi) e che vengono usati proprio per informare il ricevente di quale applicazione usare per leggere i dati in arrivo.

  3. Il tipo di “dialogo” che si instaura tra i due estremi della connessione. Ad esempio, lo scambio di “saluti” che dà inizio ad una connessione FTP. Fa parte di questo tipo di analisi anche la determinazione del fatto che un programma stia agendo da client o da server.

  4. Il contenuto reale della comunicazione.

I firewall di prima generazione (i cosiddetti “packet filter”) sono in grado di esaminare i primi tre elementi senza introdurre ritardi particolarmente gravi nella comunicazione. Per esaminare il contenuto reale della comunicazione è invece necessario un firewall di terza generazione (“deep inspection”) che costa una follia e che rallenta parecchio il traffico.

Il “guaio” è che tutti questi parametri sono mascherabili e/o falsificabili, con maggiore o minore facilità. Di conseguenza, non esiste un modo realmente affidabile di riconoscere un certo tipo di traffico. Come ulteriore conseguenza, non è possibile intervenire selettivamente su un certo tipo di traffico.

Tecniche di evasione

Da diversi anni, infatti, esistono parecchie tecniche che permettono di camuffare una qualunque connessione (ad esempio una connessione telnet) per un altro tipo qualunque di connessione (ad esempio una innocente connessione web). Questo è proprio ciò che fanno moltissime backdoor, diversi rootkit, molti worm e… diverse reti P2P di ultima generazione. Potete vedere un’esempio di questa tecnica leggendo questa pagina di Wikipedia:

http://it.wikipedia.org/wiki/HTTP_tunneling

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

ATTENZIONE: l’http tunneling è solo UNA delle molte tecniche di questo tipo utilizzate da anni da hacker e malware di vario tipo. In particolare, non fatevi ingannare dal fatto che i firewall normalmente possono impedire ad un programma di accettare connessioni dall’esterno della rete (cioè di agire da server). Anche questa limitazione può essere facilmente superata usando un “reverse HTTP tunnel”. Ne trovate alcune descrizioni qui:

http://dspace.mit.edu/bitstream/handle/1721.1/9086/46894281.pdf?sequence=1

http://www.sans.org/resources/malwarefaq/rwww_shell.php

http://www.securiteam.com/tools/5WP08206KU.html

Questa è anche (in parte) la stessa tecnica usata per il reverse SSH tunneling:

http://linux.byexamples.com/archives/238/ssh-reverse-tunneling/

http://articles.techrepublic.com.com/5100-10878_11-5779944.html?tag=nl.e011

http://www.howtoforge.com/reverse-ssh-tunneling

http://www.marksanborn.net/howto/bypass-firewall-and-nat-with-reverse-ssh-tunnel/

Potete trovare anche alcune applicazioni ed alcuni servizi già pronti all’uso qui:

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

https://secure.logmein.com/products/hamachi/vpn.asp?lang=it

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

https://www.gotomypc.com/en_GB_EUR/entry.tmpl?Action=rgoto&_sf=2

Per capire di cosa stiamo realmente parlando conviene confrontare questa soluzione con le tecniche di evasione abitualmente usate dalle reti P2P più avanzate. Queste reti sono normalmente delle reti “chiuse” (F2F, cioè “Friend-to-Friend”) e cifrate.

Le tecniche di evasione usate dalle reti F2F si basano abitualmente su questi criteri:

  1. Usare una porta diversa da quella che viene analizzata e bloccata. In molti casi la porta cambia continuamente e viene scelta a caso. In realtà, questa tecnica non è realmente necessaria. Vedi oltre.

  2. Cifrare il traffico, in modo che gli header non siano più visibili. (Restano visibili gli header del pacchetto esterno, lo “envelope”, ma questo è irrilevante ai nostri fini).

  3. Cifrare il traffico, in modo che non sia più possibile analizzare il dialogo che avviene tra gli interlocutori.

  4. Cifrare il traffico, in modo che non sia più possibile esaminare il contenuto della comunicazione.

Questo però le lascia ancora vulnerabili a due tipi di “attacco”:

  1. Resta possibile bloccare il traffico in entrata al computer, rendendo impossibile la connessione bidirezionale di cui hanno bisogno queste reti. Questo è un problema ben noto a chiunque usi eMule.

  2. Resta possibile bloccare il traffico cifrato che non appare giustificato da una applicazione di livello superiore (come una connessione HTTP su SSL3.0, del tipo usato per i server bancari).

Ed è qui che entrano in gioco i sistemi di tunneling di cui stavamo parlando. Questi programmi sono in grado di spacciare una comunicazione di tipo A per una di tipo B. Invece di rendere imperscrutabile la comunicazione (e correre il rischio che venga bloccata proprio per questo motivo), si può far passare il traffico sotto gli occhi del firewall “travestendolo” da comunicazione legittima.

Questo è proprio il caso di molte backdoor che camuffano una sessione telnet o FTP da traffico web usando una sequenza di false interrogazioni HTTP cioè (di post e get abilmente forgiate).

Inutile dire che se questa tecnica può essere usata (come viene effettivamente usata) per attraversare un firewall di seconda e terza generazione, può essere usata per aggirare qualunque tipo di filtro e per permettere qualunque tipo di attività.

In particolare, se vengono usate queste tecniche di mascheramento, non è tecnicamente possibile bloccare, filtrare o rallentare in modo selettivo né le reti P2P, né Skype (che è poi una rete P2P particolare), né altri sistemi VoIP, né i sistemi TVoIP, né una banale VPN, né nient’altro. Tutti questi tipi di comunicazione possono essere facilmente camuffati da qualcos’altro e fatti passare attraverso i filtri. In alcuni casi, lo fanno già adesso da soli (lo fa persino Skype: “How does Skype get through Firewalls and NAT Routers?”). In molti altri casi, scrivere il software necessario è relativamente semplice. Se non ci credete, guardate a cosa è già stato fatto sulla base di BitTorrent, dando origine a OneSwarm e ad Anomos. Nell’attesa, è pur sempre possibile far scorrere il traffico di questi sistemi all’interno di un apposito canale cifrato usando i sistemi di tunneling già citati e/o una banalissima VPN.

Anche scrivere le GUI necessarie per rendere “umanamente utilizzabile” il software che ora è alla portata solo degli specialisti è relativamente semplice. Ne è un esempio Galet. Questo programma rende banale la creazione di una VPN punto-punto. Lo stesso compito richiede normalmente uno specialista se si usa software “normale” come OpenVPN o roba simile.

Tra l’altro, proprio le nostre banalissime VPN creano un evidente problema: se noleggio una linea ADSL per usare una VPN (ad esempio per collegarmi da casa al mio server in azienda), il mio ISP viene automaticamente tagliato fuori da qualunque possibilità di controllo. Non può impedirmi di cifrare il canale (perchè mi ha noleggiato la linea proprio per quello scopo) e non può vedere cosa scambio con i miei amici. Non può mettere in atto nessuna delle raccapriccianti malvagità previste dal Pinochet Package.

Se esiste una Giustizia…

Le persone che hanno concepito questo crimine contro l’umanità dovranno essere portate di fronte all’alta corte di Giustizia e fucilate alla schiena (senza processo, come senza processo verranno tagliate le nostre connessioni). In attesa di questa sacrosanta punizione, possiamo fare una semplicissima e velocissima riflessione di carattere legale.

Se rileggete la presentazione del Telecom Package fornita da Scambio Etico, vedrete che ci sono diversi punti che fanno palesemente a pugni sia con la Costituzione della Repubblica Italiana che con la Dichiarazione Europea dei Diritti dell’Uomo che con ogni altro principio di Diritto attualmente conosciuto.

Francamente, credo che sia impossibile mettere in atto una simile oscenità per evidenti ragioni di incostituzionalità.

Conclusioni

Non fatevi ingannare dal fatto che il vostro personale programma P2P, installato adesso sul vostro computer possa avere delle difficoltà ad attraversare il “vostro” firewall aziendale. In questo momento il problema del cosiddetto “traffic shaping” (aka “Quality of Service”) è ancora poco sentito e non tutti i programmi implementano le tecniche che ho descritto. Se il Pol Pot Package verrà approvato, i sistemi come quelli che ho descritto spunteranno come funghi.

Gli unici effetti pratici del Fascist Package sarebbero quindi i seguenti:

  1. Uno sviluppo senza precedenti della tecnologia delle reti cifrate, mimetiche ed anonime. Verrebbero portate “nelle mani dell’utente” come mai prima.

  2. Una separazione senza precedenti tra “svegli” e “tonti”, con i tonti costretti a subire abusi di ogni tipo dai loro fornitori e gli svegli che continuano a fare quello che vogliono esattamente come ora.

  3. Un appesantimento generalizzato del traffico di rete, della infrastruttura tecnica, di quella “umana” e quindi un aumento assolutamente ingiustificato dei costi.

Per questo vi prego ancora una volta di collegarvi al sito di Scambio Etico e di associarvi alla nostra lotta per impedire che venga messa in atto questa mostruosità.

Alessandro Bottoni

alessandro.bottoni@infinito.it

Links:

http://www.p2panonimi.p2pforum.it/

http://sebsauvage.net/punching/

http://www.buzzsurf.com/surfatwork/

http://cyber.law.harvard.edu/publications/2009/2007_Circumvention_Landscape_Report

http://www.hopster.com/

Pagina Successiva »

Blog su WordPress.com.