Nuovo sito web Clap Flatpak è un “incubo della sicurezza”

La pagina web “Flatkills.org” prende di mira una serie di richieste di sicurezza associate di routine al packaging e al formato di distribuzione per app Flatpak nascenti. Tre aree chiave sono contrassegnate sul sito (che sta attualmente facendo il giro sui social media), che non sono prontamente evidenti agli utenti:

  • Molte app di Flatpak hanno il permesso di scrittura del filesystem
  • La maggior parte delle app di Flatpak non viene eseguita in una sandbox
  • Aggiornamenti di sicurezza lenti / non critici per app e runtime

Esempi di presunte carenze sono fornite dall’autore del sito, che prosegue concludendo che: “Il modo in cui confezioniamo e distribuiamo le applicazioni desktop su Linux ha sicuramente bisogno di essere ripensato, purtroppo flatpak sta introducendo più problemi di quanti ne risolva”. Flatkills.org sta chiedendo agli utenti che pensano che Flatpak sia un modo sicuro per far sì che le app su Linux possano ripensarci. Ma dovrebbero?

Flatpak Security: dovresti essere preoccupato?

Blunt nonostante il sito web virale, è chiaro che l’autore dietro di esso si preoccupa del desktop Linux, delle aspettative degli utenti e della sicurezza delle applicazioni. Dopo tutto: nessuno va allo sforzo di lanciare un intero sito web esclusivamente per un sibilo. Detto questo, le preoccupazioni elencate su Flatkills.org non sono, a mio avviso, problemi con Flatpak stesso ma con la distribuzione di app Linux in generale. Per prima cosa, tutte le funzionalità di sicurezza che Flatpak apprezza nella sua documentazione e che si occupano del materiale di marketing sono disponibili. Il “problema” non è che questi controlli non esistono (lo fanno) ma che la maggior parte degli sviluppatori di app che distribuiscono le app di Flatpak scelgono di non farne uso. Il problema non è che il sandboxing non esiste (lo fa), ma gli sviluppatori di app scelgono di non usarlo App come GIMP, Vscode e Lollypop vengono fornite con set di autorizzazioni generali (di cui gli utenti sono a conoscenza durante l’installazione utilizzando la CLI di Flatpak ma non in un’installazione GUI) per impostazione predefinita. Questo non è un difetto in qualcosa di diverso dalla motivazione; affinché queste app possano “fare ciò che fanno”, molti packager richiedono idoneamente l’accesso in lettura / scrittura alla cartella home invece di utilizzare altri meccanismi disponibili. Di nuovo, questa situazione non è unica per Flatpak o per l’app store Flathub. Anche molte popolari app Snap non fanno uso di “strict restrizione”. Ma le impostazioni relative al sandboxing e ai permessi (o alla loro mancanza) sono decise dal packager dell’applicazione, non dal creatore del formato. Forse Flatpak potrebbe lanciare una finestra di dialogo di autorizzazione della GUI per chiedere il permesso di scrittura del file system al primo avvio? Oppure elenca (sempre tramite una GUI) quali autorizzazioni richiede un’app prima che gli utenti la installino (come ad esempio Android)? Ma stiamo parlando di una tecnologia che ha colpito solo di recente la versione 1.0 – non raggiungerà la perfezione da un giorno all’altro. Per quello che vale gli sviluppatori di Flatpak stanno lavorando su un modello di permessi delle app migliorato con “Portali”. Questi consentono il controllo granulare delle autorizzazioni: “I portali sono API di bus di sessione di alto livello che forniscono accesso selettivo alle risorse per le applicazioni in modalità sandbox. L’attesa implicita dei portali è che l’utente sarà sempre coinvolto nella concessione o nel rifiuto di una richiesta del portale, quindi la maggior parte delle API del portale porteranno all’interazione dell’utente sotto forma di finestre di dialogo. ” Tra i portali pianificati c’è un “file chooser”. Ciò consentirà alle applicazioni in modalità sandbox l’accesso indiretto ai file, ma con l’utente il controllo dei file che possono o non possono essere aperti. Le app ottengono le autorizzazioni di cui hanno bisogno per funzionare in modo efficiente, ma senza lo svantaggio di avere il permesso per tutto. Sono un grande fan del modello di autorizzazione delle app Snap, che ti consente di eseguire il check-in e revocare i permessi delle app in qualsiasi momento, sia per gli snap “strict” (che non possono scrivere su ./*) sia per gli snap “classici” (che può), dal software Ubuntu. Flatpak ha controlli simili, anche se dalla CLI. Detto questo, e ancora come le app Snap in esecuzione in modalità classica, la nozione di “sandboxing” non è così rigorosa come i vantaggi del marketing. Ma se l’idea di Flatpaks che godono dell’accesso sfrenato alla tua cartella home potrebbe sembrare spaventosa, ma se installi app da PPA, un repository OBS o altri repository di terze parti sei esposto agli stessi identici rischi solo peggio – quelle app avranno root! Le soluzioni arriveranno Flatpak è ancora una (relativamente) nuova tecnologia. Forse è un po ‘ingiusto aspettarsi che abbia risolto tutti i casi d’uso, scenari e problemi. Come ogni buona tecnologia open source, Flatpak si sta evolvendo, così come l’ecosistema e quelli all’interno di esso. Inoltre: Flatpak ≠ Flathub; le distro potrebbero (in teoria) ospitare il proprio negozio Flatpak con aggiornamenti più severi o requisiti del modello di autorizzazione. Tra l’altro, le soluzioni emergeranno come e quando i problemi vengono segnalati. E come Flatpak diventa più popolare, le persone avranno più opinioni su di esso, non tutte incoraggianti. Ma il discorso aperto è una parte valida del processo open source. Il sito web di Flatkills è brusco (e forse un po ‘drammatico) ma tocca punti di contesa che sono, nel loro cuore, validi e, in vari modi, hanno bisogno di lavoro o di ulteriore raffinamento. Ma a differenza del sito web, non credo che ci debba essere un “ripensamento” di Flatpak, solo una migliore comprensione delle funzionalità e delle funzionalità che gestisce, e talvolta non lo supporta, il supporto.

Calogero Scarnà
Calogero Scarnà
Articoli: 299

Newsletter

Inserisci il tuo nome e il tuo indirizzo email qui sotto e iscriviti alla nostra newsletter