Pochi giorni fa, un utente Reddit menzionava di aver subito niente meno che un rm -rf dopo aver installato un tema globale in ambiente KDE su Linux. Come si nota dallo screenshot del thread, tale estensione/tema è stato scaricato ben 3806 volte:
Sebbene ciò possa essere un buon reminder per ricordarvi di tenere dei backup aggiornatissimi dei vostri dati (e non avete scuse), tutto ciò è inaccettabile, anche se non possiamo ritenerci gran ché sorpresi: conosciamo, ormai, le peculiarità (belle e brutte) della specie umana e, mai come oggi, il motto è: fidarsi, ma non troppo.
Ebbene sì, nonostante siamo pronti a scommettere che, chi frequenta questo blog, avrà già sviluppato nel tempo una sana e giustificata paranoia su tutto ciò che concerne la sicurezza personale digitale, ci ritroviamo ancora una volta a doverne parlare perché è molto facile, anche per i più virtuosi, ritrovarsi ad abbassare la guardia, specie quando si sta usando un ecosistema open-source.
In un’epoca in cui tutto è digitale e tutto ciò che ci identifica, anche a livello finanziario e legale (pensiamo a credenziali di banca, SPID e foto di documenti) è spesso bellamente salvato sul nostro storage, non possiamo concederci il lusso di eseguire codice arbitrario scritto da terzi che non goda, in modo diretto o indiretto, di una qualche forma di fiducia.
A rendere complicate le cose e pericoloso questo vettore di attacco è il fatto che l’ecosistema di temi, add-on, widget e similari è presente in svariati prodotti e ci accompagna ormai in browser, IDE, desktop manager e chi più ne ha più ne metta.
Con la pretesa di sviluppare software minimale e estensibile, stiamo forse usando questa cosa come scusa, demandando alle estensioni feature che in realtà dovrebbero essere già parte del software principale?
Se anche voi state pensando a Gnome, sappiate che è successo anche lì, e quella era una backdoor, anche se pare non fosse stata distribuita dai canali ufficiali.
Spesso, questi pezzi di codice di dubbia provenienza vengono installati a cuor leggero, dando a volte per scontato che vi sia stato un processo di audit del codice anche quando ciò non è stato esplicitato da nessuna parte, in parte anche forti del senso di community di cui il mondo open-source ci fa sentire parte.
A seguito dell’esperienza negativa di cui sopra, ripresa anche da altre testate, il team KDE correva ai ripari, ma se la fix sarà semplicemente informare l’utente con un popup di avviso, dubitiamo fortemente che ciò cambierà le cose, essendo l’utente medio già bombardato di notifiche di ogni tipo, che vengono spesso skippate senza lettura o pietà.
Per di più, se l’alert sarà presente su ogni estensione e tema che si scarica, farà davvero una qualche differenza o si finirà per ignorarlo, come già facciamo per gli “Unsafe downloads” marchiati da Edge su gran parte degli installer anche legittimi?
Ci vorrebbe un’audit del codice, penserete, ma, anche ammesso che si abbiano le risorse per farlo (e ce ne vogliono tante), basterebbe davvero?
Non possiamo non ricordare come vi siano state e vi sono tutt’ora evenienze di malware anche su app store proprietari e monitorati, come Google Play e Apple Store e sarebbe, quindi, irragionevole aspettarsi risultati migliori da progetti e ambienti open-source che, senza eccezione, godono di meno budget e risorse dei giganti appena menzionati.
Rimarrebbe la vigilanza della community ma tale vigilanza è, verosimilmente, concentrata su ciò che è di largo e comunissimo uso e non certo su qualsiasi software o estensione di esso che esista sotto il sole. Vogliamo parlare, poi, del delay tra il push del codice e il momento in cui, nel migliore dei casi, si viene a sapere del misfatto?
Tutto sommato, ai 3800 o giù di lì utenti che si sono ritrovati i propri dati cancellati a sorpresa, magari a pochi giorni o il giorno prima di un’importante scadenza o durante un periodo in cui si ha ben altro a cui pensare, è andata anche bene: se si fosse trattato, invece, di una backdoor silente mirata soltanto a carpire dati ma non a cancellarli, il danno sarebbe stato molto probabilmente più esteso.
Realisticamente, mentre i dati di migliaia di persone sarebbero finiti nel dark web, esponendoli a furti di identità mica da ridere, la community avrebbe impiegato molto tempo a scovare una situazione del genere e questo perché, come abbiamo già sottolineato altre volte, il fatto che il codice sia aperto e, quindi, leggibile da chiunque, non è automaticamente garanzia che tale codice sia effettivamente stato letto da qualcuno.
Specie se si parla di programmi/feature/add-on di nicchia, è facile che vi siano interi pezzi di codice che non sono mai stati letti da nessuno e quando saltano fuori temi/estensioni/software open source malevolo in generale, è spesso una fortunata combinazione del fatto che tale software finisca tra le mani della “persona giusta”, con gli strumenti e la pazienza per trovare il problema, e con l’etica necessaria per riportarla poi al mondo.
ll problema dell’insicurezza del codice scritto da umani (e non) che si esegue è, quindi, qui per restare.
Fatichiamo, infatti, a vedere una soluzione all’orizzonte, perché il controllo automatico del codice richiede pesanti risorse e qualcosa può sempre sfuggire nei meandri delle articolate logiche e interazioni, specie se si tiene a mente il fatto che tutti questi add-on/temi (che, reiteriamo, sono, di fatto, dei pezzi di codice scritto non sapete realmente da chi, che decidete di eseguire sulla vostra macchina) tendono ad auto aggiornarsi, spesso con una certa frequenza, rendendo ancora più difficile star dietro a ciò che, alla fine, è un bersaglio in continuo movimento.
Purtroppo, non resta che rimanere paranoici e, possibilmente, evitare di cadere nella sindrome da “shopping compulsivo” in merito a ciò che scarichiamo sui nostri PC che, mai come oggi, sono di fatto un’estensione della nostra mente e vanno protetti come tale.
Appassionato di Linux e della cultura open-source da vent’anni, continuo a fare del mio meglio per diffondere tale filosofia e soprattutto condividere la conoscenza.
C’è sempre qualcuno da qualche parte nel mondo che sta avendo un problema che tu hai già risolto e, condividendo la soluzione, puoi fare la differenza.
Se quel qualcuno sei tu, chiedi pure alla community. La trovi ovunque, ad esempio su reddit.com/r/italyinformatica, reddit.com/r/fedora, reddit.com/r/debian, reddit.com/r/ubuntu, reddit.com/r/archlinux, reddit.com/r/linux, sui forum specifici delle distro oppure sulle loro wiki.
Perchè nessun problema andrebbe risolto più di una volta.
[https://it.linkedin.com/in/john-toscano]