SNAP per Ubuntu: maggior sicurezza, ma non con X

snappyIl 22 aprile è stato rilasciato Ubuntu 16.04, la nuova -e attesa- versione LTS della popolare distribuzione. E il 22 aprile Matthew Garrett ha reso pubblico una pecca. Ma andiamo con ordine.

Una delle grandi novità annunciate di Ubuntu 16.04 è il supporto per l’installazione del software dei pacchetti SNAP, che per ora affiancheranno il buon vecchio sistema di Debian (i pacchetti .deb) con la prospettiva di sostituirlo. La differenza sostanziale tra i due sistemi è che Debian usa una gerarchia di dipendenze (un pacchetto può dichiarare di aver bisogno di un altro pacchetto, che a sua volta potrebbe aver bisogno di altri pacchetti, finché tutte le richieste non sono soddisfatte), mentre un pacchetto SNAP include in sé tutti file necessari per far funzionare un programma. Oltre alla evidente comodità (scaricare un solo pacchetto invece di decine, e senza dover risolvere le dipendenze), si pubblicizza una maggiore sicurezza: essendo tutto pacchettizzato, il manutentore del pacchetto si deve preoccupare solo delle librerie incluse nel pacchetto e non affidarsi a qualcun altro; un’ipotesi peggiore è la possibilità che qualcuno possa infiltrarsi nei repository dei pacchetti manomettendo una dipendenza.

Il sistema quindi è più sicuro by design, ma Matthew Garrett ha puntualizzato che la maggior sicurezza viene completamente saltata in caso di uso del server X (ovvero praticamente sempre: il server X è lo strumento con cui si ha una interfaccia grafica in linux). Questo perché X è un programma vecchio, concepito più di 30 anni fa e che by design permette a qualsiasi applicazione grafica di intercettare qualsiasi input. Non c’è quindi fix del server X che permetta di evitare questo comportamento: per funzionare è semplicemente fatto così.

La soluzione? Non usare il server X. Da anni si propongono alternative, ma finora la tecnologia ben conosciuta del server ha sempre avuto la meglio, rendendo la sostituzione non ancora fattibile (soprattutto per l’uso di tutti i giorni). Ma un’alternativa è già prevista in Ubuntu (progetto MIR, già usato in Ubuntu Touch) e il progetto Wayland continua a fare progressi: entrambi prevedono che ogni finestra sia “sigillata”, e quindi che i flussi di input e output non siano intercettabili. Permettendo la maggior sicurezza pubblicizzata.

Aspettando i nuovi server grafici, chi usa Ubuntu potrebbe familiarizzare con il nuovo sistema: sembra che Firefox sia già pronto per essere distribuito così!

Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

2 risposte a “SNAP per Ubuntu: maggior sicurezza, ma non con X”

  1. Avatar zidagar
    zidagar

    Ci sono un sacco di svantaggi a portarsi dietro un pacchettone con tutto dentro e soprattutto non vedo la cosa sicura by design. Perché? Perché chi si occupa di tale software non ha di certo le competenze/tempo di gestire e mettere in sicurezza tutte le librerie entro contenute. In un sistema a dipendenze, proprio perché c’è qualcun altro che segue le librerie, diventa molto più snello pacchettizzare un sofware e il lavoro fatto su tali librerie diventa intrinsecamente disponibile per tutti i pacchetti che ne dipendono.
    Lo “svantaggio” del sistema a dipendenze è il dover adattare (a volte) il software da pacchettizzare al sistema perché magari le librerie disponibili nel sistema non sono esattamente quelle che si aspetta tale sw.

    C’è da dire che scaricarsi più volte librerie simili nel sistema porta a consumare più banda internet e più spazio nel PC e avere cose doppie nel sistema mi fa un po’ girare le scatole.

    Mah, vedremo… la cosa è interessante ma non mi piace molto.
    Il concetto però è chiaro; nel mondo dei container, dei servizi separati ecc, diventa necessario fare una cosa del genere per snellire il lavoro di divisione delle varie parti del sistema. Mah…

  2. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Più che di “frammentazione” parlerei di “compartimentazione”, e in alcuni casi può essere utile anche agli utenti.
    Può capitare (e non di rado) che software diversi richiedano versioni diverse della stessa libreria: in una visione di librerie condivise (apt) bisogna che *tutti* i programmi siano compatibili con la stessa versione della libreria, e all’update della libreria non c’è garanzia che qualcuno diventi incompatibile; nella versione “compartimentata” (SNAP) ogni programma ha la propria libreria ed è quindi autonomo; non esiste il problema dell’upgrade della libreria, in quanto “la libreria” non esiste come componente separato.
    Il vantaggio per Canonical è proprio nello slegare i pacchetti condivisi (le librerie) dal pacchetto del programma. Per esempio, ha appena fatto uscire la versione 16.04, che porta con sé un insieme di librerie che per 5 anni (LTS) verranno aggiornate solo per la sicurezza, e non come versione; i programmi quindi dovranno usare quella versione, e se dovessero richiederne una successiva semplicemente non sarebbero più compatibili; con SNAP, invece, potranno portarsi dietro la libreria e funzionare. Non è per nulla una piccola cosa.
    P.S. Con SNAP c’è anche un altro svantaggio: l’occupazione dello spazio disco. Se due pacchetti hanno le stesse dipendenze, ed ogni pacchetto installa separatamente le sue, installo due volte gli stessi file.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *