Il mito dell'autenticazione

Supponiamo che ci sia un politico di un nuovo partito dell’opposizione (opposizione di adesso o di prima, non importa) che vi sembra dica cose interessanti. Supponiamo che decidiate di andare a sentire un suo comizio per rendervi conto di persona, ma quando state per entrare nella piazza, vi accorgete che a tutti gli accessi ci sono delle persone in tuta arancione, con un buffo marchio sulla schiena, che chiedono la carta di identità a chi entra e si segnano il nome. Vi sentireste a vostro agio? Probabilmente no. Probabilmente vedreste molta gente che si allontana perché non vuole essere “schedata”, o perché non vuole essere associata a quel politico (era lì solo per curiosità). Vi fate coraggio e chiedete a una di queste persone in tuta arancione chi sono e perché sono lì. Loro vi rispondono: “Non si preoccupi, queste informazioni le raccogliamo solo nel caso qualcuno decidesse di creare disturbo o commettere reati. Vede le telecamere?” Non le avevate viste. Quando le indicano, altre persone se ne vanno. “Se c’è qualche problema, associamo le facce ai nomi e siamo in grado di riconoscere i delinquenti. Se non succede niente, distruggiamo i dati”. Decidete di fare una passeggiata, vi è passata la voglia di sentire il politico, ma vedete altre persone con le stesse tute arancioni e lo stesso marchio sulla schiena davanti al bar, al cinema, al municipio… tutte sorridenti a chiedere documenti e a segnare nomi. Decidete che è meglio tornare a casa, ma davanti al cancello del vostro condominio, vi aspetta sorridendo un omino in tuta arancione…

Uno scenario orwelliano? Naturalmente no. Gli omini in tuta arancione non sono emissari di un Grande Fratello che sorveglia tutti: effettivamente, il loro compito è distruggere i dati se non succede niente. Ciononostante, non credo che vi sentireste tranquilli (io, per lo meno, no). Non che io faccia qualcosa di illegale o di vergognoso (ho una vita sin troppo “regolare”), semplicemente so che:

  • ci sono cose legittime che ritengo comunque private, come la scelta se seguire o meno il discorso di un politico; i motivi penso che possano essere evidenti a chiunque;
  • so che prima o poi qualcuno troverà il modo di farsi dare gli elenchi da qualche omino arancione: dopotutto, sono tutti assunti a progetto e i soldi sono pochi 😉
  • anche senza “rubare gli elenchi”, non è assolutamente chiaro nè cosa voglia dire per la loro azienda “creare disturbo” o cosa venga fatto di conseguenza.

Bene, penso che la maggior parte di coloro che leggono questo post possa essere d’accordo con me per quanto riguarda il mondo reale. Quello che mi stupisce è quanti sono invece disponibili a prendere in considerazione un’autenticazione generalizzata per le attività su Internet. Probabilmente sfugge l’analogia sempre più stretta fra le attività su Internet e la vita reale. Tuttavia, vorrei affrontare il problema non dell’opportunità, ma dell’efficacia di una scelta di questo genere.

L’autenticazione generalizzata viene proposta con l’obiettivo di individuare chi compie azioni illecite. Per prima cosa, dato che Internet è una rete globale, si pone il problema di cosa sia illecito per chi, e se noi vogliamo realmente che tutto quello che viene ritenuto illecito da “qualcuno” in qualche parte del mondo venga autenticato. È chiaro che chi pensa a questi meccanismi ha in mente di impedire la pubblicazione su Internet di video di adolescenti in intimità, o la propagazione dei virus, o la diffusione dello spam. Il problema è che quando un meccanismo è attivo funziona per tutto, non solo per le due o tre cose che avevamo in mente.

Il problema principale è però che l’autenticazione generalizzata non funziona. Schneier ama dire: non riusciamo a tenere le armi fuori dai carceri, e vogliamo tenerle fuori dagli aereoporti. Bene, qui invece vogliamo tenere i file fuori da Internet… basta un sistema mal configurato, una vulnerabilità, un errore, e il buco nel sistema di autenticazione è servito. Di lì in poi è tutto facile, sia per i virus che per lo spam. Internet è semplicemente troppo complessa per pensare di riuscire ad autenticare tutto: quello che si riuscirebbe a fare sarebbe autenticare l’onesto, mentre il disonesto troverebbe il modo di mettere in carico ad altri quello che fa. Eppure, l’illusione dell’autenticazione come soluzione di tutti i mali sembra colpire un po’ dappertutto, anche fra i tecnologi più preparati.

E allora, ci si può chiedere, cosa facciamo? La prima risposta è che il fatto di riuscire a trovare meccanismo utile non è un buon motivo per accettarne uno pericoloso.
Consideriamo lo spam. I filtri del mio mailer funzionano benissimo, quindi in realtà per me lo spam è un problema marginale, anche se non ho attivato filtri presso il mio provider. Uno dei miei indirizzi è stato in un “campione” di indirizzi che una società cinese regalava come prova della qualità dei propri elenchi, che poi vende agli spammer, e quindi ricevo una discreta quantità di spam. Ciononostante vedo (e scarto subito) non più di quattro o cinque messaggi di spam al giorno, sui circa duecento che ricevo. In termini di banda e di carico per il mio provider, un problema marginale; per me, ancora meno. È chiaro che un sistema aziendale che filtra tutto centralmente prima di darlo agli utenti non può approfittare nei modi dovuti dei filtraggi locali. O forse potrebbe, se i pc degli utenti venissero visti come un grid al quale scaricare l’onere della verifica, salvo poi gestire comunque centralmente la distribuzione agli utenti dei messaggi sani…. Ma non divaghiamo e torniamo allo spam. Lo spam che viene dalla Cina non mi disturba minimamente, neanche lo vedo, finisce automaticamente nella cartella Junk. Quello che mi disturba è quello che viene dall’Italia, e per quello basterebbero le nostre norme, se venissero applicate, senza nessun bisogno di autenticazione: il mittente è perfettamente riconoscibile.

E nel caso del denial of service distribuiti, cosa permetterebbe l’autenticazione, se non riconoscere gli zombie? Ci permetterebbe di arrivare al malintenzionato, o semplicemente a qualche sistema compromesso che, in quanto tale, non ha autenticato o conservato proprio niente? Quanti server web con autenticazione si perdono ciononostante dati personali, numeri di carte di credito ed altro? E SSL/TLS, se correttamente utilizzato, non è nato proprio per risolvere, fra l’altro, i problemi di DNS spoofing? Come qualsiasi meccanismo di sicurezza, l’autenticazione va usata dove serve e quando è utile, e senza dimenticare le conseguenze negative.

Queste considerazioni sono nate dopo aver letto questo poco entusiasmante articolo di ACM Technews.

Posted in Sicurezza, Varie | Comments Off on Il mito dell'autenticazione

Carte e carte

L’uso delle smart card si diffonde. Mentre il Germania inizia la sperimentazione massiccia di una nuova tessera sanitaria elettronica, l’uso che mi ha colpito di più è quello che potrebbe essere proposto in UK secondo il Guardian, ovvero una “tessera annonaria” per il consumo di carbone, in previsione di un razionamento.

Posted in Varie | Comments Off on Carte e carte

Teredo, incapsulazione e sicurezza

Dopo tanti anni, c’è sempre più attività su IPv6. Ho l’impressione che presto sarà raggiunta la massa critica per un’effettiva transizione a IPv6. Transizione che dovrebbe avere almeno un grosso vantaggio: liberarci di quel terribile accrocchio che è il NAT. Devo dire che se l’unico motivo per passare a IPv6 fosse aumentare il numero di indirizzi disponibili, mi sembra che ci sarebbero state strade molto più semplici. Appena avrò tempo cercherò di rinfrescarmi le idee.

Comunque sia,  deve essere affrontata la fase di transizione, e in particolare di un gran numero di sistemi che sono dietro a un firewall/router IPv4 che fa NAT, cosa che blocca buona parte dei protocolli pensati per la convivenza (temporanea) fra IPv6 e IPv4. In particolare blocca quelli pensati per far parlare reti che supportano IPv6 attraverso un’infrastruttura che supporta solo IPv4. Ci ha pensato Microsoft, con un protocollo che si chiama Teredo, che ha seguito le vie corrette (una volta tanto), diventando “Standards Track”,  RFC 4380. Sostanzialmente Teredo prevede l’incapsulamento dei pacchetti IPv6 in paccetti UDP. L’utilizzo di UDP permette di sfruttare le funzionalità già presenti nei router/firewall con NAT stateful, che prevedono di mantenere, almeno per un certo tempo, le mappature del NAT per il protocollo UDP, permettendo quindi il traffico entrante. Il traffico IPv6 viene poi estratto da UDP sulla rete IPv6 da router che supportano entrambi gli stack (Teredo Relay), mentre le attività di contrattazione vengono gestite da altri sistemi specializzati (Teredo Server). Nel complesso il protocollo non sembra male. Tuttavia, incapsulare pacchetti IP generici in UDP per far attraversare, su UDP e su porte effimere, il router/firewall, ha buone probabilità di permettere di aggirare le politiche del firewall. Il tutto è discusso in un papero di James Hoagland, un ricercatore di Symantec, del quale sono venuto a conoscenza attraverso Heise., ma anche nelle Security Considerations dell’RFC 4380. Si tratta di un problema generale dei meccanismi di tunneling e incapsulamento: se un tunnel permette di superare un meccanismo di protezione, allora riuscire a infilare qualcosa nel tunnel garantisce di aggirare quelle protezioni. Infatti, alcuni problemi sono simili a quelli descritti nell’RFC 3489. Dato che Teredo non è pensato con per creare una VPN fra specifici sistemi autenticati, ma per interfacciare con l’intera Internet IPv6, i problemi possono essere parecchi. Inoltre, ci sono altri attacchi che si possono immaginare in situazioni simili: DoS, man-in-the-middle ecc. Non riesco a valutare quanto tutti gli attacchi descritti saranno praticabili nella realtà, ma alcuni, fra cui il superamento di firewall e il sovraccarico di alcuni nodi, mi sembrano molto realistici. Dato che Teredo è supportato da XP con SP2 e da Vista (su Vista è attivato di default) e quindi probabilmente avrà un peso notevole nella transizione a IPv6, è bene che i suoi problemi di sicurezza vengano analizzati con cura.

Posted in Sicurezza | Comments Off on Teredo, incapsulazione e sicurezza