Alfabeto Open: S come Security


“Il segreto per la sicurezza forte: 
meno dipendenza da segreti.” (Whitfield Diffie)

Francamente, non ritengo molto utile continuare a dibattere se il codice aperto oppure chiuso aumenti o diminuisca le caratteristiche di sicurezza di un software. E’ ormai una vecchia storia… Ci sono da sempre considerazioni sensate che sostengono un’opinione ed altre che sostengono l’esatto opposto.

CC-BY Adam Rifkin

Riassumendo così, c’è chi vede il bicchiere mezzo vuoto:

Tutte le persone hanno accesso al codice sorgente dell’open-source, compresi i potenziali aggressori. Ogni vulnerabilità senza patch può essere utilizzato da malintenzionati, quindi il software è intrinsecamente meno sicuro.

 …e chi lo vede mezzo pieno:

E’ risaputo che la sicurezza tramite segretezza non è una pratica sicura a lungo termine. Anzi… Addirittura si rendono pubblici gli algoritmi di crittografia e questo li rende ancora più sicuri (serve solo di tenere segreta la chiave).

La verità è che in entrambi i casi, aperto oppure chiuso, il software può contenere falle di sicurezza. Punto. Ma c’è un però: il software libero ha tutto il potenziale per essere più sicuro rispetto al suo omologo a sorgente chiuso. Sapete perché?

Grazie alla collaborazione della community, un numero elevato di persone può ispezionare il codice sorgente per trovare e correggere ogni possibile falla. Questo può portare più velocemente alla scoperta sia di vulnerabilità non intenzionali (difetti), sia di vulnerabilità intenzionali (backdoor, scritte appositamente dagli sviluppatori stessi).

Per sua natura, infatti, il software libero permette la valutazione sia della qualità che della sicurezza del codice ed incoraggia gli sforzi di collaborazione verso il suo miglioramento. Ciò è reso possibile grazie alla disponibilità del sorgente ed in virtù della licenza copyleft con cui è stato rilasciato (4 libertà garantite: 0 usa, 1 analizza, 2 modifica, 3 condividi).

Al contrario, il software proprietario costringe l’utente ad accettare il livello di sicurezza che gli offre il fornitore del software e di accettare anche, di conseguenza, la sua politica di rilascio di patch e aggiornamenti.

Ma non bisogna nemmeno commettere l’errore opposto: essere semplicemente a sorgente aperto non è garanzia assoluta di sicurezza. La disponibilità del codice sorgente, infatti, non garantisce da sola che la revisione e correzione delle falle di sicurezza sia svolta efficacemente!

Quindi, oltre a valutare i requisiti specifici della soluzione libera che ci interessa di adottare, nella scelta rivestono un ruolo importante anche altri fattori come la qualità/maturità complessiva del progetto e del suo codice sorgente e il livello di partecipazione della community (…più occhi ci sono e meglio è).

Rimane però oggettivo che solo il software libero possa essere liberamente controllato da tutti: in questo senso il software proprietario dovrebbe essere considerato intrinsecamente meno sicuro.

E’ un dato di fatto, comunque, che il software libero primeggi indiscutibilmente nella lista delle soluzioni adottate proprio laddove il “ferro” sia esposto al mondo ed agli attacchi esterni, come ad esempio i web server, mail server, DNS server, firewall, router/access-point, etc. Ci sarà un perché, no?

Condividiamo, in conclusione, anche una considerazione più generica ma comunque molto utile: la sicurezza in senso assoluto non esiste, in particolar modo quando parliamo di sicurezza informatica. Troppo spesso sono i nostri stessi comportamenti ad influenzare fortemente la nostra esposizione ai rischi ed alle minacce. Non è solo colpa del software!

La nostra vita è piena di app, di acquisti online, di profili, di accessi alla rete attraverso computer, tablet, smartphone

Credetemi, è terribilmente inutile appassionarsi a simili disquisizioni e poi non tenere quotidianamente un adeguato comportamento

Non è per caso che scrivete la chiave di accesso sul post-it sotto la tastiera?

IMGMercoledìCastellaniTechEconomy_S

Facebook Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here