Storia e fatti dell’hacking (S01 E08 EOS): Dieci aspetti da cui partire

In questo Episodio che conclude la Stagione individuiamo un primo percorso per studiare alcuni concetti di base assai utili.

Storia e fatti dell’hacking (S01 E08 EOS): Dieci aspetti da cui partire

Non è facile suggerire un percorso di "curiosità" alla base delle attività di hacking. Le tecnologie cambiano in fretta. Però abbiamo individuato, sinteticamente, dieci aree di ricerca che potrebbero sicuramente riservare grandi soddisfazioni.

1. Imparare a cifrare i dati.

La società odierna è una società che vive, e si “nutre”, di dati in chiaro.

Che significato può avere, in questo contesto, una simile affermazione apparentemente banale? Significa che smarrire il telefono cellulare, essere derubati del proprio computer o dimenticare una chiavetta USB o una memry card in un luogo pubblico comporta quasi sempre la possibilità, in capo a chi entra in possesso del nostro strumento, di conoscere tutto di noi, ogni nostro dato, di prendere visione di ogni foto e video, di leggere ogni e-mail, di poter analizzare ogni nostro documento.

Non vi è, allora, da stupirsi se la crittografia, l’arte di nascondere le informazioni in chiaro antica come l’uomo, si sia sviluppata in ambito militare, ambiente dove il segreto è tenuto in gran conto, e sia utilizzata, nell’era tecnologica, non solo da “paranoici” ma anche da dissidenti o da soggetti che, semplicemente, non vogliono che le loro informazioni siano comprensibili in caso d’intercettazione e sorveglianza da parte di terzi.

La crittografia, poi, è particolarmente temuta dagli investigatori, perché un disco o un supporto cifrato creano non pochi problemi in fase di analisi e perché, di solito, essa è molto efficace, ossia offusca veramente i dati.

2. Interessarsi alla navigazione anonima e alla rete Tor.

Tor, sorto come progetto della marina militare americana e ora diffuso in tutto il mondo, è un software sviluppato dagli hacker del Tor Project che si propone di garantire un buon livello di anonimato durante la navigazione in rete.

Senza entrare troppo nel tecnico, il funzionamento è tanto banale quanto sofisticato: i pacchetti di dati che partono dal computer dell’utente non arrivano direttamente a destinazione (ad esempio: verso un sito web che si vuole consultare) ma transitano attraverso almeno tre computer che li reindirizzano, cifrati, sino al collegamento finale.

Detto così può sembrare complicato, ma anche l’utilizzatore meno esperto è in grado di usare questo sistema perché è totalmente trasparente per l’utente (tranne, a volte, nel causare un leggero rallentamento nella navigazione).

Ci si collega al sito di Tor, si scarica il software o un bundle che comprende anche un browser già configurato, si accede alla rete Internet passando attraverso la rete Tor e l’operazione è conclusa. Ovviamente, accanto alla tecnica, occorre accortezza umana: i nodi di uscita di Tor (ossia il collegamento al sito finale) sono in chiaro, quindi occorre evitare di inserire informazioni personali che possano essere intercettate in quella fase. Meglio: Tor provvede all’anonimato ma non alla riservatezza della trasmissione, tanto che deve essere l’utente a provvedere, se interessato (ad esempio: usando https, o e-mail cifrate, o sistemi di chat cifrata). Inoltre Tor può permettere altre operazioni interessanti come, ad esempio, cambiare l’indirizzo IP della macchina scegliendo lo “Stato di uscita” (ad esempio: per aggirare filtri o blocchi, o per entrare in possesso di un bene che non si può acquistare dal Paese d’origine dal momento che il venditore riconosce la provenienza geografica dell’IP) o cambiare costantemente l’IP per, ad esempio, votare più volte a uno stesso sondaggio online alterando i risultati finali. Tor è utilizzato spesso anche dai dissidenti per evitare di essere individuati o per aggirare filtri e blocchi alla navigazione nel Paese in cui si trovano.

3. Dedicare attenzione alle tecniche di cancellazione sicura dei dati.

Può sembrare un’affermazione banale, ma cancellare file, cartelle, documenti e informazioni da un computer è diventato sempre più complesso.

Tutti sanno, o dovrebbero sapere, che gli “spostamenti dei file nei cestini” con successivo svuotamento, o le formattazioni rapide, non servono a nulla. Un soggetto mediamente abile, usando software ad hoc, può, senza difficoltà, recuperare i file e le informazioni che si reputano cancellate, anche da supporti esterni (memory flash di macchine digitali o telefoni, chiavette USB, etc.).

Non deve stupire, allora, che in contesti politici critici i dissidenti dedichino grande attenzione alla distruzione, anche fisica e non solo logica, dei dati e dei supporti.

Il primo concetto da tenere a mente è che una cancellazione sicura di un dato (meglio: una sovrascrittura) richiede una discreta quantità di tempo. Grandi moli di dati possono richiedere ore, o giorni, prima che sia completato un processo di cancellazione corretto. Fortunatamente esistono software pensati proprio per questo: aiutano l’utente a cancellare veramente i file o a ripulire il proprio computer da dati importanti, anche se il tempo realmente necessario (tanto) rimane lo stesso.

Al contempo, esistono dei software, denominati di recovery o di data carving, che eseguono il processo inverso: ricercano file cancellati male o blocchi di dati apparentemente informi e cercano di recuperare informazioni nella forma la più integra possibile.

4. Usare applicazioni portable.

Esistono applicazioni, denominate portable, molto interessanti nel loro utilizzo. Si tratta di applicazioni (ad esempio: per scrivere documenti, gestire la posta elettronica, cifrare i dati, conversare in chat, navigare, cancellare informazioni) che sono, appunto, portable, ossia non hanno bisogno di essere installate in un sistema operativo ma possono “vivere” tranquillamente su una chiavetta USB abbastanza capiente o su un disco esterno.

I vantaggi sono numerosi: lasciano tracce minime sul sistema operativo che le ospita (in particolare non lasciano tracce di configurazioni, o le “preferenze” del proprietario), permettono di creare un kit che chiunque si può  portare sempre con sé indipendentemente dal computer che si troverà di fronte (anche se per funzionare dipenderà dal sistema operativo installato in quella macchina) e potranno essere utilizzate anche laddove ci si trovi a dover utilizzare un computer di cui non ci si fida (anche se, in quest’ultima ipotesi, sarebbe preferibile evitare il suo utilizzo a meno che proprio non sia indispensabile, oppure fare un boot con una distribuzione live).

Una applicazione portable interessante è quella che ricrea, a fini di accessibilità, una tastiera su schermo, al fine di non utilizzare neppure la tastiera del computer ospitante ma solo il mouse (in tal modo, se il computer ha installato keylogger di vecchia generazione, il software “spione” non riesce a registrare e inviare all’esterno la lista dei tasti premuti e dei caratteri immessi).

5. Usare distribuzioni live.

Esistono alcune distribuzioni (insieme di ambiente operativo e applicazioni) LIVE che sono pensate anche per fornire un ambiente il più sicuro e anonimo possibile per l’utilizzatore: le potremmo definire come particolarmente orientate all’anonimato.

L’uso è semplicissimo: la distribuzione può risiedere su una chiavetta, un Cd-Rom o un DVD e il computer dell’utente (o di un terzo, anche non fidato) viene avviato (boot) da questo supporto senza far avviare il sistema operativo e i programmi del computer ospitante.

Di solito queste distribuzioni, una volta avviate, “cercano” una connessione di rete e, nel momento in cui si connettono, lanciano programmi, ad esempio Tor, che già garantiscono sin dall’inizio, se usati in modo corretto, un buon grado di anonimato.

L’uso di tali distribuzioni è molto semplice: è sufficiente prelevare da Internet l’immagine di un disco, spostarlo (masterizzarlo) su un CD o una chiavetta e avviare il computer da quel supporto (eventualmente cambiando, nel BIOS, l’ordine di boot o tenendo premuti alcuni tasti in fase di accensione e avvio). Occorre sempre ricordare che tali sistemi danno un primo livello di anonimato, e che tutto ciò che poi l’utente compie una volta collegato in rete deve essere anch’esso anonimo.

6. Usare macchine virtuali.

L’idea di macchina virtuale, per quanto complessa da un punto di vista tecnico, è di una semplicità disarmante nel suo utilizzo.

Si tratta, in un certo senso, di avere uno o più computer “dentro” al nostro computer, di poter usufruire di un ambiente “asettico” che contenga uno o più sistemi operativi che possiamo tranquillamente utilizzare senza influenzare (e danneggiare) il sistema principale.

A cosa può servire? A tante cose. A operare da un sistema operativo per poi farlo “scomparire” (basta cancellare la macchina virtuale facendo attenzione ai dati rimasti in RAM, riavviare la macchina e magari “ripulire” il disco), a fare esperimenti che non condizionino l’ambiente principale (testing di programmi, anche di virus!), ad avere su un computer più sistemi operativi, a creare ambienti anonimi. Il suo fine? Quello di creare un ambiente dentro il sistema operativo che non influenzi l’ambiente principale e non causi malfunzionamenti.

7.  Tenere sempre in grande considerazione il fattore umano.

È troppo semplice pensare che una sicurezza assoluta la possa fornire la tecnologia da sola.

Tre sono le componenti fondamentali per garantire un ambiente sicuro: i) hardware senza difetti, ii) software senza difetti e iii) essere umano “senza difetti”.

Tutte e tre hanno la stessa importanza, e molte volte tanti errori che portano a svelare dati, o a compromettere la nostra sicurezza, non sono altro che conseguenze di nostre responsabilità. Ecco allora che meditare sui nostri comportamenti “tecnologici” è altrettanto importante che parlare di strumenti per l’anonimato o la cifratura dei dati.

Il sistema più forte al mondo di cifratura, si pensi, crolla se la passphrase viene annotata o viene inserita in un contesto non sicuro, oppure è identica a tutte le nostre altre password o viene effettuato un backup dei dati cifrati in chiaro. L’anonimato crolla se tanti singoli dati apparentemente anonimi che rilasciamo, se correlati, permettono di individuarci e di arrivare a noi. Il non essere a conoscenza se le fotografie che rendiamo pubbliche, o inviamo per e-mail, contengono metadati che indicano la nostra posizione geografica, o il dispositivo (modello della macchina fotografica) che ha scattato quelle foto, o vengono processate e correlate a un nostro profilo (ad esempio: su Facebook), comporta vulnerabilità altrettanto importanti. Come fare? Conoscenza. Leggere i manuali dei dispositivi che utilizziamo, leggere i forum di discussione sulle caratteristiche nascoste di siti web, database e dispositivi che possono profilare l’utente o tracciare una persona. Un livello di paranoia e di diffidenza molto alto, infine, è sempre cosa saggia.

8. Sperimentare la cancellazione sicura di interi supporti.

Può sorgere la necessità, spesso l’urgenza, di cancellare completamente i dati di un intero hard disk affinché non siano più recuperabili o affinché il recupero, ove dovesse avvenire, richieda sforzi di calcolo e di tempo molto ampi.

La distruzione dei dati, la distruzione fisica del disco e la sua smagnetizzazione sono tre metodi molto usati ed efficaci per eliminare tracce su un supporto. La prima va effettuata tramite software che sono pensati appositamente per riscrivere le tracce di un hard disk più volte al fine di cancellare i dati. Il secondo metodo è più fisico, e consiste nella distruzione (martellate, incendio) del disco con la consapevolezza, però, che esistono ditte specializzate anche nel recupero di supporti danneggiati e che intervengono soprattutto in caso d’incendio o allagamento all’interno di aziende. Il terzo metodo consiste nell’utilizzare sofisticati apparecchi, denominati degausser, che emettono campi magnetici per cancellare i dati.

Perché si dovrebbe distruggere il proprio hard disk o attivare una lunga operazione di cancellazione delle informazioni? Per non lasciare tracce se il supporto conteneva dati importanti, per impedire che qualcuno recuperi i dati, semplicemente per installare nuovamente un sistema operativo e un ambiente di lavoro facendo scomparire i dati che c’erano in precedenza.

9. Analizzare le funzionalità di servizi anonimi.

Operare seriamente con le identità, in Internet, è una delle cose più complesse. Facilissimo è creare un’identità di fantasia; molto difficile è far sì che tale identità resista a controlli, anche semplici, effettuati per svelare la reale natura del soggetto. Se si vuole creare una identità, un indirizzo e-mail, un profilo su Facebook, un blog che voglia essere realmente anonimo e, quindi, capace di resistere a controlli anche accurati, occorre seguire un insieme di regole, spesso di buon senso, condite da alcuni espedienti tecnologici.

Innanzitutto, il primo passo, ossia da dove si crea l’identità, è il passo più delicato. Creare un account di e-mail o un blog anonimo usando il proprio indirizzo IP è il primo errore tipico. Un’analisi a ritroso, in cooperazione con il provider, può condurre alla identificazione immediata. Ciò significa che la prima azione in assoluto subito dopo aver pensato alla strategia, ossia il collegarsi in rete per creare qualcosa, deve essere compiuta da un contesto non riferibile al soggetto o con un indirizzo IP non riferibile allo stesso.

Il mantenimento dell’anonimato è la seconda cosa difficile: è quindi opportuno non indicare riferimenti personali, anche incrociabili, o evitare di far circolare fotografie che contengano informazioni sulla macchina fotografica o il telefono che le ha scattate o, peggio, le coordinate GPS, e non discutere di luoghi, eventi, orari che possano portare a una riconoscibilità.

Tor, già citato, permette alcune funzioni, denominate hidden services, che sono interessanti e che meritano un approfondimento: sono molto utilizzate per creare blog anonimi o sistemi di leaking e di gestione di fonti confidenziali.

10. Comprendere il funzionamento dei firewall hardware e software.

Il firewall è uno strumento molto utilizzato a livello aziendale ma, sovente, poco noto da un punto di vista personal, ossia da parte dell’utente comune. Eppure, un uso accorto di questo dispositivo, che può diventare in pochi giorni un’abitudine semplice da comprendere, può aumentare notevolmente il livello di sicurezza dell’utente, soprattutto quando è obbligato a utilizzare connessioni a Internet in contesti non sicuri quali, ad esempio, Internet Café, postazioni in hotel o villaggi turistici, linee UMTS e HSDPA, biblioteche o altri luoghi pubblici.

Il principio fondamentale alla base della necessità di un firewall, che molti professionisti della sicurezza già applicano, è quello di non collegarsi mai direttamente a un access point, a un cavo di rete e, in generale, a una connessione a Internet offerta da terze parti e non fidata senza prima porre nel mezzo, tra il computer e il collegamento, una “scatoletta” o un software (firewall) che, oltre a funzionare come un filtro, si comporti in base a regole ben precise che il possessore del computer ha elaborato e che operano sui pacchetti di dati, sulle modalità di connessione, sui siti web ammessi in visione e contro il possibile malware intenzionato ad attaccare.

Ciò comporta un controllo del traffico e delle applicazioni in tempo reale, l’analisi di tutto il traffico in entrata e in uscita per evitare virus, spam, spyware ed eventi dannosi, la possibilità di accesso sicuro con SSL e VPN, una grande attenzione alle possibili intrusioni e, spesso, anche un access point wireless sicuro con una verifica del traffico.

I firewall esistono, si è detto, anche in versione software (di solito sono denominati "personal firewall") e iniziano anche a essere integrati nei sistemi operativi più moderni.

Un firewall hardware, di piccole dimensioni (grande come un libro) e dal costo contenuto e da tenere sempre nella borsa di lavoro, può essere molto utile, ma non ha di certo i vantaggi immediati di un firewall software (ad esempio: l’hardware richiede, in più, un cavo di alimentazione e uno di rete, e può essere più facilmente individuato da un amministratore di sistema o di rete).

La configurazione e la scelta delle regole sono spesso semplici, e l’impostazione “di fabbrica” è sovente più che sufficiente per ottenere un buon risultato anche da parte dell’utente comune.