Bruce Schneier: Come rimanere sicuri contro la sorveglianza della NSA

Traduco dall’originale. Bruce Schneier (l’autore di Crypto-Gram) sta collaborando con il Guardian sull’analisi dei documenti di Snowden. In questo articolo ci sono le sue primissime conclusioni.

La NSA ha abilità smisurate, e se vuole entrare nel tuo computer ci entrerà. Tenendo questo fatto a mente, ecco cinque modi per stare al sicuro da essa.

Ora che abbiamo abbastanza dettagli su come la NSA intercetta il traffico di Internet, incluse le rivelazioni odierne sul suo impegno ad indebolire i sistemi crittografici, possiamo finalmente cominciare a capire come proteggerci.

Le due settimane scorse ho lavorato con il Guardian su storie riguardanti la NSA ed ho letto centinaia di documenti top-secret forniti dal whistleblower Edward Snowden. Non ero coinvolto della storia di oggi (il pezzo era in lavorazione da ben prima che io mi facessi vivo), però ogni cosa che leggo conferma quello che il Guardian sta riferendo.

A questo punto credo di poter fornire alcuni consigli su come rimanere al sicuro da un avversario della portata della NSA.

Il mezzo primario con cui la NSA intercetta le comunicazioni Internet è all’interno della rete. È qui che hanno le capacità per intercettazioni su larga scala. Hanno investito in enormi programmi per raccogliere ed analizzare automaticamente il traffico di rete. Qualunque cosa che richieda loro di attaccare i computer terminali della comunicazione, invece, è significativamente più costosa e rischiosa: devono farlo con cautela e non troppo spesso.

Grazie ai suoi accordi segreti con le aziende di telecomunicazioni (tutte quelle di Stati Uniti e UK e molti altri “partner” nel resto del mondo), la NSA ha accesso ai principali canali di comunicazione attraverso cui passa il traffico di Internet. Nei casi in cui non ha questo tipo di accesso “amichevole”, fa del suo meglio per ottenere di nascosto quel che passa in questi canali di comunicazione: intercetta cavi sottomarini, comunicazioni satellitari ecc…

È una mole di dati enorme, e la NSA ha capacità altrettanto grandi di analizzarli tutti alla ricerca di traffico interessante. “Interessante” può essere definito in molti modi, a seconda dell’origine o del destinatario della comunicazione, del contenuto, degli individui coinvolti ecc… Questi dati sono poi inseriti nel vasto sistema NSA per analisi future.

La NSA raccoglie molti metadati riguardanti il traffico Internet: chi parla a chi, quando, per quanto tempo e con quale mezzo di comunicazione. I metadati sono molto più semplici da raccogliere ed analizzare rispetto al contenuto delle comunicazioni. Possono essere estremamente personali e sono informazioni di enorme valore per le attività di spionaggio.

Il Systems Intelligence Directorate (Direzione dei Sistemi di Intelligence) comanda la raccolta dei dati: le risorse che dedica a questo compito sono sbalorditive. Leggo rapporti su rapporti riguardanti questi programmi in cui sono discusse le capacità, i dettagli operativi, gli aggiornamenti pianificati ecc… Ogni singolo problema (recuperare il segnale elettronico dalla fibra ottica, essere in grado di gestire flussi dati di svariati terabyte, filtrare le informazioni interessanti) ha un gruppo dedicato a risolverlo.

La NSA inoltre attacca direttamente anche i dispositivi di rete: router, switch, firewall ecc… La maggior parte di questi dispositivi ha già dei sistemi di sorveglianza al loro interno; il trucco è attivarli senza farsi scoprire. Questa modalità di attacco è particolarmente proficua: i router sono aggiornati raramente, tendono a non essere corredati di software aggiuntivi per la sicurezza e sono generalmente ignorati come punto di vulnerabilità di un sistema.

Inoltre, la NSA dedica risorse considerevoli all’attacco dei computer terminali delle comunicazioni (gli “endpoint”). Questa tematica è gestita dal suo TAO (Tailored Access Operations, ovvero Operazioni di Accesso Su Misura). Il TAO ha un menu di exploit che possono essere usati contro il tuo computer (sia che tu stia usando Windows, Mac OS, Linux, iOS o qualcos’altro) e una varietà di trucchi per entrarvi. Il tuo antivirus non li rileverà ed avrai problemi ad individuare la loro presenza anche se sapessi dove guardare. Si tratta di strumenti di hacking progettati da hacker con un budget pressoché illimitato. Ciò che ho capito leggendo i documenti di Snowden è che se la NSA vuole entrare nel tuo computer, lo farà. Punto.

La NSA per lo più affronta i dati cifrati che trova sulla sua strada sabotando i sistemi che li gestiscono, piuttosto che sfruttando scoperte matematiche segrete. Ci sono molte pessime implementazioni della crittografia in giro. Se la NSA trova una connessione protetta da MS-CHAP, ad esempio, le risulterà estremamente semplice penetrarla e recuperare la chiave di cifratura. Inoltre, sfrutta le password deboli scelte dagli utenti, usando gli stessi attacchi basati su dizionari che gli hacker usano nel mondo “non classificato”.

Come è stato rivelato oggi, la NSA lavora anche con le aziende che vendono prodotti di sicurezza per assicurarsi che i prodotti commerciali per la crittografia siano segretamente sabotati in modi che conoscono soltanto loro. Sappiamo che ciò è accaduto in passato: CryptoAG e Lotus Notes sono gli esempi più noti al pubblico, e ci sono anche evidenze di una backdoor in Windows. Qualche persona mi ha raccontato alcune storie recenti basate sulle proprie esperienze ed ho intenzione di scrivere presto qualcosa al riguardo. Fondamentalmente la NSA chiede alle aziende di modificare subdolamente i loro prodotti, in modo che le modifiche non siano rilevabili: rendere il generatore di numeri casuali meno casuale, esporre la chiave di crittografia in qualche modo, aggiungere un esponente comune ad un protocollo di scambio a chiave pubblica, ecc… Se la back door è scoperta, viene presentata al pubblico come un errore di implementazione. Per quanto ne sappiamo ora, la NSA ha avuto un grande successo grazie a questi programmi.

Il TAO inoltre entra nei computer altrui per recuperare chiavi crittografiche che hanno un lungo periodo di validità. Perciò se hai una VPN che usa un complesso protocollo basato su un segreto condiviso per proteggere i tuoi dati e la NSA decide che questi gli interessano, potrà a provare a rubare tale segreto. Questo tipo di cose è fatto solamente contro obbiettivi ritenuti di grande valore.

Come si può comunicare in modo sicuro, contro un simile avversario? Snowden l’ha detto in una sessione di Domande/Risposte su Internet, subito dopo aver rilasciato il suo primo documento: “La crittografia funziona. Sistemi di crittografia forte, implementati in modo appropriato, sono una delle poche cose su cui potete fare affidamento.”

Credo che sia vero, nonostante le rivelazioni odierne e gli stuzzicanti suggerimenti di “capacità crittanalitiche rivoluzionarie” fatti da James Clapper, il direttore dei servizi segreti nazionali in un altro documento top-secret. Queste capacità riguardano l’indebolimento deliberato dei sistemi crittografici.

La frase successiva di Snowden è altrettanto importante: “Sfortunatamente, la sicurezza dei sistemi terminali delle comunicazioni è così spaventosamente debole che la NSA può frequentemente aggirarla.”

“Terminale” significa il software che stai usando, il computer su cui lo stai usando e la rete locale in cui lo stai usando. Se la NSA può modificare l’algoritmo di cifratura per inserire un Cavallo di Troia nel tuo computer, tutta la crittografia del mondo non potrà aiutarti. Se vuoi rimanere sicuro contro la NSA hai bisogno di fare del tuo meglio per assicurarti che la crittografia possa funzionare senza ostacoli.

Tenendo tutto ciò a mente, ho cinque consigli:

  1. Nasconditi nella rete. Implementa servizi nascosti (Tor hidden services). Usa Tor per renderti anonimo. È vero che gli utenti Tor sono un obbiettivo della NSA, tuttavia richiedono del lavoro supplementare. Meno sei evidente, più sei sicuro.
  2. Cifra le tue comunicazioni. Usa TLS. Usa IPsec. Di nuovo, sebbene le connessioni cifrate siano un obbiettivo della NSA (e potrebbe avere degli exploit specifici contro questi protocolli) sei molto più protetto in questo modo che comunicando in chiaro.
  3. Assumi che, sebbene il tuo computer possa essere compromesso, richiederebbe da parte della NSA lavoro e rischio, perciò probabilmente non lo sarà. Se hai qualcosa di veramente importante, usa un computer disconnesso. Da quando ho iniziato a lavorare con i documenti di Snowden, ho comprato un nuovo computer che non è mai stato connesso ad internet. Se vuoi trasferire un file, cifra il file sul computer sicuro e portalo a mano su un altro computer connesso ad internet, usando una chiave USB. Per decifrare qualcosa, fai l’inverso. Questo modo di procedere potrebbe non essere a prova di proiettile ma è sicuramente buono.
  4. Guarda con sospetto al software commerciale di crittografia, specialmente se prodotto da grandi aziende. Secondo me la maggior parte dei prodotti di crittografia delle grandi aziendi statunitensi e molti prodotti simili di aziende straniere hanno delle back door per la NSA. È prudente assumere anche che i prodotti stranieri abbiano delle back door dei rispettivi governi. Per la NSA è più semplice inserire back door nel software a sorgente chiuso rispetto al software a sorgente aperto. I sistemi che fanno affidamento su un segreto principale (es. una password per decifrare tutti i dati) sono vulnerabili alla NSA, sia tramite azioni legali, sia tramite mezzi più clandestini.
  5. Prova ad usare implementazioni basate su crittografia di dominio pubblico che devono forzatamente essere compatibili con le altre implementazioni. Ad esempio, per la NSA è più dura inserire una back door in TLS che in BitLocker, poiché ogni sistema basato su TLS deve essere compatibile con i prodotti altrui basati sul medesimo standard, mentre BitLocker deve essere compatibile solo con sè stesso, lasciando alla NSA una libertà molto maggiore di inserirvi delle modifiche. Inoltre, poiché BitLocker è proprietario, è molto meno probabile che quelle modifiche saranno scoperte. Preferisci sistemi basati su crittografia simmetrica rispetto a quelli basati su crittografia a chiave pubblica. Preferisci sistemi a chiave pubblica che fanno uso dei logaritmi discreti rispetto a quelli che fanno uso delle curve ellittiche; questi ultimi hanno delle costanti il cui valore viene influenzato dalla NSA ogni volta che può farlo.

Da quando ho cominciato a lavorare sui documenti di Snowden ho fatto uso di GPG, Silent Circle, Tails, OTR, TrueCrypt, BleachBit ed un po’ di altre cose che non riporto. C’è una caratteristica di cifratura non documentata nel mio programma Password Safe, utilizzabile dalla riga di comando; ho usato anche quella.

Capisco che la maggior parte di tutto questo è impossibile da seguire, per il tipico utente Internet. Perfino io non uso tutti questi strumenti per la maggior parte delle cose su cui lavoro. E sono ancora principalmente su Windows, purtroppo. Linux sarebbe molto più sicuro.

La NSA ha trasformato il tessuto di Internet in una vasta piattaforma di sorveglianza, ma non ha poteri magici. È limitata dalle medesime realtà economiche che ci troviamo ad affrontare anche noi, e la miglior difesa è rendere la nostra sorveglianza il più costosa possibile.

Fidati della matematica. La crittografia è tua amica. Usala bene e fai del tuo meglio per assicurarti che nulla possa comprometterla. È così che potrai rimanere sicuro, anche di fronte alla NSA.

Bruce Schneier (tradotto da Paolo Bernardi)

3 thoughts on “Bruce Schneier: Come rimanere sicuri contro la sorveglianza della NSA

  1. al Reply

    ” Preferisci sistemi basati su crittografia simmetrica rispetto a quelli basati su crittografia a chiave pubblica. “…. SCHERZI??

    • Paolo Bernardi Reply

      Ciao al.

      Come biasimarti? Anch’io ho avuto la stessa reazione leggendo quella frase sull’articolo originale. Ovviamente questa è una mera traduzione, la frase originale è: “Prefer symmetric cryptography over public-key cryptography. Prefer conventional discrete-log-based systems over elliptic-curve systems; the latter have constants that the NSA influences when they can.” Credo che la mia traduzione sia corretta.

      Passiamo al concetto: Schneier è sia un bravo crittografo, sia un bravo divulgatore. Leggo quel che scrive da parecchi anni e posso assicurarti che finora non ha mai parlato a vanvera. In questo caso specifico, Schneier ha accesso a della documentazione segreta passata da Snowden al Guardian, non ancora divulgata al pubblico: le sue opinioni in merito non sono ancora verificabili, né è possibile discernere quali siano i fatti riportati letteralmente da quella documentazione e quali siano le sue speculazioni.

      A questo punto, speculo anch’io, basandomi su quanto letto finora. Nell’articolo, Schneier fa capire molto bene che l’azione della NSA è rivolta contro le implementazioni crittografiche, piuttosto che al cracking della crittografia mediante scoperte matematiche. I principali algoritmi a chiave pubblica sono degli “oggetti matematici” che hanno dei parametri, ovvero dei valori che vanno specificati al momento del loro uso. La loro sicurezza dipende in modo critico da questi parametri. In alcuni algoritmi, ad esempio, è necessario scegliere un “numero primo grande”: è un parametro. Anche nel caso degli algoritmi basati sulle curve ellittiche bisogna scegliere dei parametri. Quando i crittografi concepiscono questi algoritmi, lasciano questi parametri come… parametri. Quando gli algoritmi vengono recepiti e standardizzati per l’uso reale, però, è necessario fornire indicazioni su quali valori concreti assegnare a questi parametri. Probabilmente (ripeto, sto SPECULANDO), la NSA è stata in grado di influenzare i criteri di scelta di questi parametri in alcuni standard di uso comune, in modo da rendere più semplice decifrare le informazioni. Non è quindi la crittografia a chiave pubblica ad essere debole, ma alcune particolari implementazioni che fanno uso di parametri influenzati ad arte dalla NSA. Ovviamente non ho idea di quali standard stiamo parlando.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.