sabato 29 giugno 2019

Guerre virtuali, attacchi reali

La notizia è passata sui giornali quasi come fosse solo una curiosità: Trump ferma i bombardieri  diretti in Iran e invece ordina l'attacco cybernetico. Pieno successo, dicono gli americani; nessun danno, dicono gli iraniani: certo, il campo di battaglia è virtuale, come possiamo noi sapere veramente cos'è successo? Oltretutto le infrastrutture attaccate erano militari, quindi il segreto è d'obbligo. Comunque nessuno si è fatto male e siamo tutti contenti.

Resta il fatto che la guerra digitale, forse per la prima volta, è stata preferita a quella tradizionale. Buona notizia, senz'altro: ma non così buona come potrebbe sembrare ai meno attenti. Bene ha fatto il Generale Rapetto a rimarcarlo immediatamente.

Analizziamo la situazione. La guerra totale (cioè quella che coinvolge la popolazione civile per fiaccare la volontà di resistenza di una nazione o popolo) ha raggiunto il suo massimo nella seconda guerra mondiale, ma non è certo una novità del secolo scorso. Strategicamente parlando, per costringere una nazione alla resa devi fiaccarla economicamente (distruggendo le industrie e la produzione alimentare) e socialmente (attraverso sofferenze così atroci da rendere preferibile qualsiasi altra cosa, incluse le condizioni imposte per la resa). Gli strumenti sono stati per secoli bombardamenti, violenze, fame,  distruzioni indiscriminate.

Il problema è che ora gli stessi scopi possono essere raggiunti attraverso strumenti virtuali che però hanno conseguenze estremamente reali: semplicemente perché ormai tutta l'economia e la società si è digitalizzata. Non ci credete? Qualche esempio, ispirato da episodi reali.

Industrie, ospedali, trasporti bloccati per giorni da un virus (informatico, s'intende).
Sistemi di controllo di impianti idraulici accessibili via internet (pensate a cosa succederebbe aprendo completamente, all'improvviso, le chiuse di una diga).
Conti correnti e risparmi spariti cancellando i database delle banche.
Grandi flussi di notizie fasulle e contraddittorie sui social ma anche sui giornali "ufficiali".
Blackout energetico indotto da attacchi "denial of service".
Esami diagnostici modificati o cancellati.

Finché tutto ciò è episodio singolo e sporadico causato da un gruppetto di hacker, poco male (si fa per dire); ma se invece una nazione attaccasse deliberatamente un'altra con azioni coordinate e simultanee effettuate da esperti? L'effetto potrebbe essere che una mattina ci troviamo senza luce, gas, telefonia, coi campi agricoli allagati, i trasporti bloccati, impossibilitati a pagare nei supermercati (ammesso che siano aperti), soccorsi impantanati nella mancanza di comunicazioni, tutti senza sapere cosa sta succedendo ed in balia delle voci che girano incontrollate. Una situazione in cui i morti non li troveresti tutti insieme sotto le macerie dei bombardamenti; li troveresti nelle strade, a poco a poco, mano mano che il caos ed il panico si espande.

Fantascienza? Trama di film catastrofici? Pensare che quello appena descritto sia uno scenario impossibile è semplicemente da criminali (o stupidi, se preferite), tanto è vero che l'Unione Europea ha varato una Direttiva (la 2016/1148, detta "NIS") che impone agli stati membri di individuare i gestori di infrastrutture critiche, che a loro volta, sulla base del loro livello di criticità, devono dotarsi di misure di sicurezza (sia tecniche che organizzative) contro gli attacchi informatici. Anche la vicenda Huawei può essere presa ad esempio (anche se in questo caso credo prevalgano gli aspetti economici): se gli USA basassero le loro infrastrutture critiche su dispositivi fabbricati in Cina, si esporrebbero all'enorme rischio di subire attacchi del genere appena descritto che vengono veicolati in modo nascosto proprio attraverso quei dispositivi.

L'era dei bunker antinucleari è finita da un pezzo: inizia ora quella della cybersecurity.

mercoledì 26 dicembre 2018

Breve storia di una foto farlocca

Il 24 dicembre 2018, ovviamente vigilia di Natale, l'Etna si fa notare per un'attività piuttosto intensa (prevista da mesi, pare): sciame sismico, eruzione, e spettacolare nube di fumo e cenere, le cui foto fioccano sui social. Per un mio personalissimo interesse di materie geologiche, seguo un po' su twitter l'evolversi della questione: tra tante foto prese da terra, ad un certo punto compare questa, presa senza ombra di dubbio dalla Stazione Spaziale Internazionale:


Si vede chiaramente la Sicilia con l'Etna in eruzione. Ma a me sta foto non torna: primo, mi sembra di averla già vista; secondo, la nube è verticale, mentre le foto da terra riprendono tutte una nube quasi orizzontale a causa del vento che spira da nord-ovest. Con una banalissima ricerca con Google, trovo questa segnalazione, da La Repubblica:


la cui data risale al 2013: bingo! Prendo una delle condivisioni e la retwitto facendo presente che è una foto vecchia; peccato che fino a sera continuano tranquillamente le ricondivisioni della foto farlocca, del mio avviso invece ricevo solo un paio di notifiche di "interazioni".
Per scrupolo, controllo poi che effettivamente sia stata scattata da Luca Parmitano (mai fidarsi, nemmeno dei giornali importanti), ed usando TynEye, tra i vari risultati, ecco qua:



Inoltre, la foto è anche presente nella gallery della missione Volare.

In conclusione: qualcuno ha preso una vecchia foto dell'Etna in eruzione dallo spazio e l'ha postata come fosse fresca fresca, e mi riesce difficile pensare che l'abbia fatto inconsapevolmente. Perché? Mania di protagonismo? Facile caccia dei like? Non lo so. Quello che so è che meriterebbe di essere portato in cima all'Etna a controllare mooooolto da vicino l'eruzione. E che, per noi, è assolutamente vietato fidarsi ciecamente di ciò che viene postato sui social, soprattutto in occasione di eventi più o meno gravi.

martedì 18 dicembre 2018

Tutti pazzi per la fibra (e il 5G)

A metà anni '90, forse nel 1997, all'incrocio davanti a casa dei miei genitori un giorno iniziò un cantiere, uno dei tanti: la particolarità di questo è che il "buco" rimase aperto 3 mesi in cui non si vide nessuno a lavorarci. Sapemmo poi che si trattava del Progetto Socrate, ossia il primo tentativo, dell'allora monopolista Telecom, di cablaggio in fibra ottica per la cosiddetta banda larga. Appena aperto il buco, il progetto fu sospeso (e poi annullato) perché era stata sviluppata la tecnologia ADSL, che sfruttava il doppino telefonico già presente in tutte le case. Oggi, sempre davanti a casa dei miei genitori, un cantiere (stranamente veloce) stende cavidotti per la fibra ottica, che peraltro arriva già a 200 metri in uno dei cabinet TIM.
Sempre in tema di banda larga, l'asta di assegnazione per le frequenze del 5G, ossia la prossima tecnologia di connettività dati per i dispositivi mobili, ha ottenuto un introito del 50% superiore rispetto al previsto. Insomma, banda larga per tutti.

Ma cos'è 'sta banda larga, e come la utilizziamo (e utilizzeremo)?

Il termine banda larga è usato come sinonimo di internet veloce, dove veloce significa che i dati fluiscono in quantità maggiore a parità di tempo. L'unità di misura è il bit per second (bit al secondo), indicato come bps. Le velocità attuali, come molte altre unità di misura, necessitano dei moltiplicatori standard:
  • k, ossia kilo, che corrisponde a mille
  • M, ossia Mega, che corrisponde ad 1 milione
  • G, ossia Giga, che corrisponde ad 1 miliardo
  • T, ossia Tera, che corrisponde a 1000 miliardi
Tanto per fissare le idee: i primi modem andavano a 56 kbps, utilizzando sostanzialmente la capacità normale dei doppini telefonici; l'ADSL arriva fino a 7 Mbps (oggi fino a 20) sfruttando capacità oltre quelle normali dei doppini; la fibra ottica va nell'ordine dei Gbps (nella pratica è molto variabile a seconda di come è fatto il cavo, il tipo di luce, etc.). Nel mobile, il 4G viaggia nell'ordine dei 50 Mbps col 5G che potrebbe arrivare a 400 e oltre (teorici). Il Tbps è attualmente appannaggio solo dei laboratori di ricerca.
Quello che occorre sapere è che la velocità effettiva che ognuno di noi sperimenta a casa sua (o sul suo smartphone) dipende anche dalla lunghezza dei cavi (o dalla distanza in linea d'aria) rispetto all'ultimo ripetitore di segnale: questo semplicemente perché i segnali che codificano i bit si attenuano all'aumentare della distanza, e ciò corrisponde ad una diminuzione della velocità (capire il perché richiede nozioni di elettromagnetismo e teoria dei segnali). La fibra ottica ha in proporzione un'attenuazione molto inferiore rispetto al doppino in rame, ed è il motivo per cui viene utilizzata per le grandi distanze; ovviamente ha un costo molto superiore (ed è delicatissima). Questo è il motivo per cui la fibra ottica non arriva quasi mai dentro casa, ma si ferma negli armadi (o centraline) stradali: stendere un cavo in fibra fin dentro ogni appartamento ha costi esorbitanti rispetto ad utilizzare il già presente doppino. D'altra parte, su distanze brevi (diciamo entro i 500 metri), con le tecniche attuali il doppino è in grado di supportare velocità di tutto rispetto, superiori ai 30 Mbps fino a circa 100 per distanze brevissime (qualche decina di metri). Ecco perché oggigiorno il metodo più comune di portare la banda larga a casa è il misto fibra-rame: i cavi in fibra ottica arrivano fino agli armadi stradali, dove i segnali delle varie utenze vengono ridistribuiti sui singoli doppini, ognuno dei quali avrà una lunghezza che determina le prestazioni effettive.


A proposito dei costi, bisogna evidenziare che pure gli apparati di rete che si trovano nelle centrali, centraline ed armadi hanno differenze significative a seconda delle tecnologie che possono supportare. Questo è principalmente il motivo per cui in Italia la banda larga stenta ad arrivare in alcune zone, che sono poi quelle a minore densità abitativa (tipicamente disagiate anche per altri servizi): i ritorni economici non giustificano gli investimenti. Questo problema non si è risolto nell'epoca dell'ADSL, mentre ora è lo Stato a finanziare i lavori di cablaggio in fibra ottica delle zone a minore ritorno economico per gli operatori, anche perché la banda larga è ritenuta indispensabile per lo sviluppo economico italiano al pari di altre infrastrutture più tradizionali. A vegliare su tutto c'è l'Agenzia Garante per le Comunicazioni, che tra le altre cose ha sul suo sito una mappa degli accesi internet disponibili e delle velocità teoriche raggiungibili (per verifiche più di dettaglio, a livello di singolo numero civico, ho trovato utile quest'altro sito).


D'altra parte, la velocità è davvero così importante? Risposta breve: dipende... ☺
La realtà è che per visualizzare un testo bastano pochi kbps; per una foto qualche centinaio di kbps; per video "normali" (tra questi includiamo anche la fastidiosissima pubblicità e quelli fatti dagli smartphone), 1 Mbps. I servizi realmente bisognosi di tanta banda (cioè velocità) in ambito casalingo sono:
  • Media streaming in alta definizione (la tv via web)
  • Videogiochi online
  • Videoconferenza in alta definizione (Skype ed affini)
Tanto per dare un'idea, nei giorni scorsi, e più di una volta, una ADSL da 10 Mbps ha sostenuto contemporaneamente due streaming in diretta (sport, ovviamente...) di cui uno in alta definizione. Inoltre, a differenza di ciò che qualche volta viene detto, la domotica, IoT, telemedicina, telelavoro, etc, per non parlare dei social, non hanno bisogno di alte velocità, quanto invece di affidabilità (e questo è più funzione dell'operatore, ossia dell'Internet Service Provider).
Ma allora perché la banda (ultra)larga è così importante oggi? In realtà, non lo è, ma lo sarà probabilmente a breve. Cisco stima, sulla base della tendenza attuale, che nei prossimi 5 anni transiterà su internet la stessa quantità di dati che è transitata dall'inizio fino a oggi. Una buona ADSL è ancora una soluzione più che accettabile (a meno di esigenze particolari), certo è "a scadenza", cioè non lo sarà più tra pochi anni, ma nel frattempo speriamo la fibra, o gli altri metodi alternativi, siano arrivati dappertutto.


Ancora niente banda larga via cavo? Esiste l'alternativa senza. A parte le già citate 4G e 5G per i dispositivi mobili (il cui problemi principali sono la copertura non completa, e la condivisione della banda), esistono tecnologie per collegamenti fissi che utilizzano collegamenti via radio. Necessitano di un'antenna che punti verso il ripetitore; a prezzi ragionevoli si hanno offerte con velocità intorno ai 30 Mbps (anche in questo caso, conta la distanza). Il problema di questa tecnologia è la necessità della vista libera tra antenna e ripetitore, il che rende il servizio non sempre disponibile (banalmente, se la casa è dietro un'altura o esposta dal lato sbagliato), e potrebbe non diventarlo a causa di eventi naturali, come la crescita degli alberi.



sabato 20 ottobre 2018

Tutta colpa dell'Algoritmo

"Facebook cambia algoritmo", "Algoritmo impazzito", "Twitter sconfessa l'algoritmo": sono solo alcuni (estratti di) titoli di notizie recenti che hanno a che fare il mostro dei nostri tempi: l'algoritmo. Pochi giorni fa, ad un convegno in tema di privacy, una stimatissima professoressa di Diritto ha confessato che deve farsi aiutare dai tecnici a capire cosa vuol dire che "si è perso il controllo dell'algoritmo". Ne ha ben ragione: non ne ho idea neanch'io, di cosa vuol dire. Ma alla fine, cos'è 'sto algoritmo?
Dal Dizionario della lingua Italiana di De Mauro:
matematica: insieme di regole per la risoluzione di un calcolo numerico; gener., procedimento matematico
informatica: insieme di regole che forniscono una sequenza di operazioni atte a risolvere un particolare problema
Le parole su cui bisogna soffermarsi sono: regole, procedimento, risoluzione. Lo scopo di un algoritmo è trovare la soluzione di un problema; è composto da un procedimento e delle regole. Tutto qui; ma per capire meglio, guardiamolo un algoritmo (ho scelto quello che era mitico all'università, il bubble sort, che è il più efficiente tra i procedimenti di ordinamento):



In pratica, presa una sequenza di elementi, si procede a scambiare ripetutamente quelli che non rispettano l'ordinamento, finché non si arriva alla sequenza ordinata. Facile no?
In realtà, quello che mi preme sottolineare è che un algoritmo non è altro che un procedimento logico per risolvere un problema. Niente di più. Un frutto dell'ingegno umano. Che poi deve diventare qualcosa di realmente utilizzabile, tipicamente un programma software: il che vuole dire che qualcuno, che non è quasi mai chi ha "inventato" l'algoritmo, lo traduce in un linguaggio di programmazione, diventando, appunto, il programma (o parte di esso). In realtà, vale anche il viceversa: ogni programma non è altro che l'implementazione di uno o più algoritmi, che magari esistono solo nella testa del programmatore.
Ovviamente niente vieta che un algoritmo possa essere sbagliato (cioè non risolve correttamente il problema), o che lo sia il corrispondente programma (cioè il software non fa quello che prevede l'algoritmo); ma se si effettuano i dovuti controlli, la questione è marginale.
Che c'azzecca tutto ciò con gli algoritmi che impazziscono? Niente, appunto. Un algoritmo (o il computer attraverso il programma) fa ciò che gli viene detto. Il risultato è sbagliato se l'algoritmo (o il corrispondente programma) è sbagliato. Punto. A parte questo, non esistono algoritmi buoni o cattivi: buono o cattivo è lo scopo, o il risultato, dell'algoritmo.

Fin qui la teoria; la pratica è un po' più complicata. Perché gli algoritmi che, secondo alcuni, impazziscono, sono enormemente più complessi dell'esempio che ho proposto; ed è piuttosto comune (mi rifiuto comunque di considerarlo normale) che i suoi errori siano evidenziati in situazioni estreme, tipicamente dati enormi o molto diversi da quelli attesi da chi ha sviluppato l'algoritmo.
Gli algoritmi sono diventati famosi, uscendo dalle buie stanze dei nerd, con l'informatizzazione di massa, e da quando hanno iniziato ad avere effetti sulla vita dell'uomo comune: oggi vanno per la maggiore quelli che, a seconda dello scopo (o meglio, della tipologia di scopo) prendono il nome di Big Data, Intelligenza Artificiale, Machine Learning, e compagnia bella. Tutta roba bellissima per chi la studia, un po' meno per chi la subisce. Intanto perché l'abuso di questi algoritmi ci limita la libertà di scelta (vedi i risultati dei motori di ricerca: quelli che dovrebbero essere i più pertinenti sono scelti in base a criteri che non possiamo controllare); e poi perché molte volte nemmeno è chiaro come e perché si usano queste tecniche avanzatissime.

Facciamo un altro esempio, e lo prendiamo dal mondo dello sport, in particolare dalla pallavolo (chi mi conosce non ne resterà stupito). Esiste da anni la "moviola" in campo, per diverse situazioni; per stabilire la palla dentro o fuori, esistono in realtà due tecniche, una "reale" (telecamere ad alta velocità e risoluzione poste in corrispondenza alle linee) ed una "virtuale" (ricostruzione tridimensionale della traiettoria del pallone, lo stesso metodo usato nel tennis, cosiddetto occhio di falco).

 

Nessun dubbio che l'algoritmo alla base di "occhio di falco" sia corretto; tuttavia, basandosi sulla ricostruzione della traiettoria nello spazio a partire dalle immagini riprese da apposite telecamere che coprono tutto il campo (una tecnica, chiamata motion tracking, usata da più di 20 anni nel cinema, per esempio così fu generato Gollum nella trilogia del Signore degli anelli), richiede un'attentissima calibrazione e posizionamento per garantire precisione. Ma se hai una tecnica più semplice, e che non ti lascia nessun tipo di dubbio, perché usare un artificio, per quanto bellissimo e precisissimo? Eppure la prima viene utilizzata nelle competizioni italiane, e la seconda in quelle internazionali, ormai da diversi anni!

In conclusione, fermo restando che non sono gli algoritmi ad impazzire (è sempre e solo l'intelligenza umana a venire meno), è la dipendenza da essi il vero male della nostra società iperconnessa. Dove non portino effettivo beneficio per la comunità, è nostro dovere difenderci rifiutandoli, invece di lamentarci o, peggio, adeguandoci passivamente.

N.B. Il post è nato da un'idea di qualche giorno fa, ma non è un caso che sia stato scritto il giorno della finale del campionato mondiale femminile di pallavolo... serviva anche a smaltire la delusione della sconfitta (che non ha avuto nulla a che fare con decisioni arbitrali).

martedì 18 settembre 2018

La maggiore età online è 14 anni (forse)

Forse non tutti sanno che 2 settimane fa è stato pubblicato in Gazzetta Ufficiale (e quindi sta entrando in vigore) un decreto legislativo che complementa la normativa Europea sulla privacy (il Regolamento UE 679/16, meglio noto come GDPR). Tra i tanti tecnicismi del decreto, c'è un elemento che interessa gli adolescenti ed i loro genitori: è stata fissata a 14 anni (invece dei 16 come da Regolamento) l'età dalla quale i minori possono esprimere autonomanente il consenso per il trattamento dei loro dati personali nei servizi online. Poiché mi è capitato di leggere interpretazioni fuorvianti in passato, cercherò di fare chiarezza sul significato e le conseguenze di questa norma.

Il consenso è uno dei 6 presupposti su cui è possibile basare un trattamento lecito di dati personali; gli altri 5, dal punto di vista dei comuni cittadini, rappresentano tutti quei casi in cui il trattamento è indispensabile o comunque non lesivo dei nostri diritti. Quindi il consenso è l'unico caso in cui, sostanzialmente, abbiamo la possibilità di scegliere se accettare il trattamento o no. Nel mondo online è il presupposto più utilizzato, perché i servizi online (sembra incredibile, vero???) non sono indispensabili alla nostra vita. Poiché il consenso ha ovviamente un valore anche legale, sarebbe indispensabile la maggiore età per poterlo esprimere, ma in questo caso il legislatore ha tenuto in debito conto la realtà, cioè il fatto che i minori sono tra i maggiori utilizzatori di questi servizi, e quindi ha abbassato l'età per poter esprimere il consenso, prevedendo contemporaneamente alcune tutele aggiuntive, tra cui che la relativa informativa sul trattamento dei dati sia particolarmente chiara e concisa.
Cosa succede prima dei 14 anni? Semplicemente che è necessario il consenso (o l'autorizzazione) anche di chi esercità la responsabilità genitoriale. La norma prevede anche che il gestore del servizio verifichi l'età del minore e l'identità del genitore (evidentemente anche a Bruxelles hanno capito che accà nisciun è fess!).

Su quest'ultimo argomento voglio spendere altre due parole. Google ha trovato un metodo ingegnoso per verificare che il consenso accessorio dei genitori sia effettivo: richiede di utilizzare una carta di credito a nome del genitore su cui viene effettuata una pre-autorizzazione di un centesimo, che poi, dopo l'autorizzazione, viene restituito. Bene benissimo, se non fosse che (hoplà) Google ha ottenuto i dati di una carta di credito valida (non che faccia addebiti fraudolenti, intendiamoci!).

Il problema è che molti gestori, soprattutto extraeuropei (leggi: USA), se ne fregano e utilizzano un metodo molto più semplice: fissano nelle proprie condizioni di utilizzo l'età minima per iscriversi a 16 anni per tutti, così nessuna verifica è necessaria (la norma, infatti, per i maggiori di 16 anni non prevede verifiche di età). Tagliando di fatto fuori i minori proprio da tutti quei servizi che invece vanno tanto di moda, ma dall'altra parte confidando sul fatto che tanto il modo di iscriversi lo trovano lo stesso, come peraltro avvenuto finora, potendo così trattare dati personali di minori come se fossero maggiorenni.

Cari genitori, come vedete la legge non intende impedire le pratiche diventate ormai di uso quotidiano anche tra i giovanissimi, però è necessario che partecipiate alla vita online dei vostri figli, e non solo al momento dell'iscrizione al social: controllando loro, ovviamente, ma controllando anche come i diversi gestori di servizi utilizzano i vostri dati, e facendo di conseguenza le opportune scelte consapevoli. Lo ribadisco ancora una volta: utilizzare quella particolare chat "perché ce l'hanno tutti" è stupido, le alternative esistono e potete imporle, vedrete che piano piano diventeranno di uso comune; altrimenti, non cambierà mai nulla.

giovedì 30 agosto 2018

Lasciami il tuo computer e diventerà mio

Nel lontanissimo (in termini tecnologici) anno 2000, un certo Scott Culp della Microsoft scrisse un articolo in cui definiva le 10 immutabili leggi della sicurezza; la numero 3 recita:
Se una persona disonesta ottiene accesso fisico illimitato al tuo computer, quello non è più il tuo computer.
Nel mio lavoro, ma anche nell'ambito privato, ho notato che questo tema sia particolarmente ostico agli utenti digitali "normali", probabilmente perché le pratiche basilari di sicurezza (tipicamente: la password, ed i permessi sui file) sono considerate sufficienti ed un fastidio già considerevole. In questo post cercherò di spiegare il senso pratico della legge sopra riportata e perché lasciare incustodito il proprio computer è sempre una pessima idea, al di là dei danni economici di un possibile furto.

Prima di tutto spieghiamo cosa intende dire la suddetta legge. Accesso fisico illimitato significa che la persona disonesta ha la possibilità di toccare "con mano" il computer e farci quello che vuole senza che nessuno lo ostacoli; non è più il tuo computer significa che, se riotterrai la disponibilità del computer, potresti trovarlo in qualsiasi condizione (vedremo dopo cosa significa) e soprattutto tutti i tuoi dati potrebbero essere stati violati e/o distrutti. Anche se le tecniche sono un po' diverse, quanto detto vale anche per smartphone e tablet, mentre nel seguito mi riferirò solo ai computer tradizionali (fissi, portatili, server), quelli con mouse e tastiera, per intenderci.

Veniamo a cosa posso fare se ho il "tuo" computer a mia completa disposizione.
Per prima cosa, posso spegnerlo: ho la possibilità di staccare l'alimentazione e, nel caso di portatili, di togliere la batteria (se è interna, è solo questione di un po' di tempo in più). Questo già significa che se il computer stava facendo qualcosa di importante, ti causo un disservizio.

Una volta spento, potrei staccare il disco fisso interno e quindi leggerlo o sovrascriverlo utilizzando un altro computer. Infatti, con un altro computer tutti i permessi eventualmente impostati sui file possono essere banalmente modificati dall'amministratore (che non sei più tu); e questo indipendentemente dal fatto che tu abbia utilizzato o no una buona password.

In realtà, non è nemmeno necessario staccare il disco, può tranquillamente rimanere dov'è: infatti io farò ripartire il "tuo" computer utilizzando però un mio drive USB con un sistema operativo alternativo di cui io sono l'amministratore. A quel punto ciò che posso fare è, semplicemente, tutto. Qualche esempio?
  • Posso cambiare le password (senza bisogno di conoscerle) del "tuo" sistema operativo, così posso poi riavviare il computer ed impersonare te o l'amministratore;
  • Posso leggere o modificare i file, indipendentemente dai permessi presenti sul "tuo" sistema operativo;
  • Posso clonare l'intero disco (ogni singolo bit), con una tecnica che praticamente è quella usata per le indagini giudiziarie, così potrò poi leggere i tuoi file con calma e senza che tu nemmeno lo sappia;
  • Posso collegarmi ad internet con il tuo provider e commettere atti illegali che risulteranno essere stati commessi da te;
  • Posso sostituire completamente il sistema operativo e tutti i dati, così che dopo non riuscirai più ad utilizzare il "tuo" (ex) computer;
  • Posso inserirti programmi (tipicamente, malevoli per te) a mio piacimento.

È bene precisare che quando dico "leggere i tuoi dati", mi riferisco, anche in questo caso, a tutto: password, numero della carta di credito, la cronologia della navigazione internet, i file che hai scaricato, le tue foto più intime... Evito di spiegare cosa succede se tra le password trovo quelle dei tuoi servizi internet (posta, social, disco remoto, etc): diciamo che anche quelli diventano non più tuoi.

Inoltre, il drive USB che citavo prima non è roba da hacker "cattivo": esso conterrebbe esattamente gli stessi strumenti che uso da anni per cercare di risolvere i malfunzionamenti dei computer. Non sono gli strumenti ad essere buoni o cattivi, ma l'uso che se ne fa.

Vuoi difenderti? Beh, intanto dovresti utilizzare una password anche nel BIOS (anche se ora si chiama UEFI) per avviare il computer, o anche solo per far avviare un sistema operativo diverso; ma comunque io sarò in grado di resettare il BIOS/UEFI e quindi cancellarti la password. Comunque non è banale e quindi è una misura semplice ed efficace per moltissimi casi.
Poi dovresti evitare di far ricordare le password dei vari servizi al browser e agli altri programmi... lo so, è tanto comodo, ma anche per i disonesti! E si, dovresti uscire tutte le volte e reinserire la password tutte le volte; oppure usare l'autenticazione a 2 fattori (il riconoscimento biometrico, invece, può non essere una buona soluzione).

Ma se vuoi davvero difenderti, ci sono solo 2 tecniche efficaci: la crittografia ed il backup. Con la prima ti proteggi dalla lettura dei dati che reputi "sensibili" (cioè, quelli che non vuoi far conoscere agli altri), con il secondo dalla distruzione dei dati. Ovviamente, per essere veramente efficaci queste 2 tecniche devono essere utilizzate con le giuste modalità. Per fare qualche esempio: la crittografia è inutile se la chiave si può trovare sullo stesso disco dove si trovano i dati protetti; la copia di backup (aggiornata!) deve trovarsi dove il malintenzionato non possa realmente accedere. Ma su questi argomenti ho già scritto (prova anche a vedere la sezione Suggerimenti) e continuerò a scrivere, vista la loro importanza.

Tutto chiaro, no? La sicurezza fisica dei computer non è secondaria a quella logica, su cui tanti spesso si soffermano, perché se è vero che è meno probabile (davvero?) venga violata per via della necessità dell'accesso, appunto, fisico, è anche vero che le conseguenze della violazione sono potenzialmente molto peggiori.

AGGIORNAMENTO: mi sono imbattuto in questo articolo che mina pure le certezze sulla crittografia come arma fondamentale contro i furti di dati; in realtà confermando anche il fatto che se la chiave è a disposizione "da qualche parte" che non sia la mia testa, un modo per recuperarla lo trovano sempre...

lunedì 30 luglio 2018

Aiuto, non ci sono più siti sicuri!

Pochi giorni fa è stata rilasciata la versione del browser Chrome che implementa la già annunciata funzionalità di segnalazione per i siti che non usano HTTPS.
Sul web molti siti specializzati (un esempio) ne hanno parlato, ma omettendo le informazioni basilari, per aiutare a capire l'importanza di questa scelta: ci provo io.

HTTP e HTTPS
HTTP (HyperText Transfer Protocol) è il protocollo di comunicazione su cui si basa il web, ossia internet come è conosciuta da tutti: i siti "parlano" con i browser utilizzando HTTP come linguaggio. HTTP è bidirezionale, nel senso che permette di inviare dati anche dal browser al server: funzionalità che viene usata per inviare i nostri parametri al server in modo da ottenere una risposta personalizzata.
HTTPS è la versione sicura, cioè crittografata, di HTTP. Il che vuol dire che HTTP invia i dati, in entrambe le direzioni, in chiaro, quindi facilmente leggibili (credetemi, l'intercettazione delle comunicazioni è banale).

La Crittografia di HTTPS
La crittografia trasforma un dato comprensibile in uno incomprensibile, tramite complesse funzioni matematiche. Mentre le funzioni sono sempre le stesse, ciò che rende unica ogni trasformazione è l'utilizzo di un altro dato, detto chiave, unico. Con la chiave si effettua sia la cifratura che la decifratura, il che vuol dire che la chiave deve essere conosciuta sia dal mittente che dal ricevente una comunicazione, e da nessun altro, altrimenti chiunque è in grado di decifrare la comunicazione. Questa modalità è scomoda perché mittente e destinatario devono scambiarsi la chiave in modo sicuro, e soprattutto ogni coppia mittente-destinatario deve avere chiavi diverse.
Per fortuna esistono metodi di cifratura con 2 chiavi diverse (ma correlate l'una all'altra): una deve essere tenuta segreta e l'altra può essere liberamente divulgata, semplicemente perché la cifratura avviene con una chiave e la decifratura con l'altra. Ebbene, HTTPS usa questa modalità: il server ha la chiave privata, ed il browser ha la chiave pubblica, che si scarica prima di iniziare a comunicare.


Riservatezza
Il difetto della chiave pubblica è che è, appunto, uguale per tutti, per cui chiunque sarebbe in grado di decifrare le comunicazioni provenienti dal servizio: per renderla univoca, si aggiunge un codice di sessione (creato alla prima comunicazione tra il server ed ogni singolo browser); in questa maniera, HTTPS è in grado di scambiare dati mantenendo la riservatezza degli stessi.

Autenticazione
Il fatto che il servizio possegga una chiave unica, creata appositamente e tenuta segreta comporta una seconda caratteristica: la corrispondente chiave pubblica funziona solo e esclusivamente con quel servizio, per cui il browser è sicuro di comunicare proprio con quel servizio e con nessun altro: potrei quindi autenticare il servizio.
Purtroppo, poiché la chiave pubblica è fornita dal servizio stesso, a meno di non fidarsi ciecamente, non possiamo essere sicuri che il servizio sia effettivamente quello che dichiara di essere. Per cui la vera autenticazione di un servizio ha bisogno di un ulteriore passaggio: la chiave pubblica, prima di essere utilizzata, viene a sua volta autenticata (e firmata digitalmente) da una entità terza, che effettua dei controlli per verificare che il servizio (in realtà, il proprietario, azienda o persona che sia) sia realmente chi dichiara di essere.

Siti sicuri e non sicuri
Il browser è in grado di riconoscere la firma digitale della chiave pubblica: quindi, se riconosce la firma come valida, e la chiave pubblica funziona rispetto al servizio (e quindi alla sua chiave privata), si è certi che stia parlando proprio col servizio (sito) giusto, quindi sicuro. In tutti gli altri casi, è considerato non sicuro.
Quindi i fornitori di siti hanno tutti gli interessi a farsi considerare sicuri, per le ragioni suddette: per un discorso di reputazione possono voler essere riconosciuti con certezza (es. un giornale online); per un discorso di segretezza delle informazioni (es. tutti i casi in cui si usano password); per entrambe (es. banca online).

Altre considerazioni
Tutto a posto? Ovviamente no. Ecco alcune questioni a cui fare attenzione.
  • Un sito non sicuro può non essere un problema: dipende dalla criticità delle informazioni che tratta.
  • Le chiavi possono avere una scadenza: se non vengono rinnovate in tempo, il sito può improvvisamente essere considerato non sicuro, pur essendolo fino a poco prima. La comunicazione rimane cifrata, ma non si può più fare completo affidamento sull'identità del servizio.
  • I criminali informatici cercano continuamente metodi per ingannarci e farci considerare come sicuro un sito che non lo è. Un metodo divertente ed esemplificativo è questo. Inoltre, l'iconcina del lucchetto non è sufficiente perché banalmente falsificabile.
  • La segnalazione di sito sicuro può essere assolutamente valida anche per siti con nomi simili a quelli più famosi: quindi, sempre occhio al nome del servizio nella barra degli indirizzi! Se notate qualcosa di strano, verificate che il proprietario del sito sia chi vi aspettate, e non qualcun altro.
  • Tutti i metodi crittografici sono comunque vulnerabili al cosiddetto attacco a forza bruta, ossia cercare di trovare le chiavi semplicemente provando tutte le combinazioni possibili; per questo motivo la lunghezza della chiave è un fattore determinante (all'aumentare della lunghezza, il numero di tentativi aumenta in maniera esponenziale).
  • Una pagina web può essere composta di parti diverse, che possono provenire da siti differenti (questo post ne è un esempio); ognuna di queste parti può utilizzare HTTPS oppure HTTP semplice, per cui la sicurezza complessiva potrebbe essere compromessa. In realtà i browser segnalano anche questa situazione (in particolare, pagine miste HTTP e HTTPS sono viste con sospetto).

Quindi: bisogna (tanto per cambiare) usare la testa. Mai e poi mai accedere al proprio conto corrente online (è solo un esempio) senza l'indicazione di sito sicuro; negli altri casi, cliccando sull'indicazione, è possibile avere i dettagli della segnalazione, e sulla base di quella decidere se andare avanti o no; e comunque si può considerare la reputazione di un sito anche sulla base dell'utilizzo e della relativa manutenzione dei certificati necessari all'HTTPS.
Anche gli altri browser permettono di fare le stesse verifiche, semplicemente (al momento) non danno l'indicazione nella stessa maniera come ora ha introdotto Chrome. Quest'ultimo ha "solo" fatto la scelta di spingere l'adozione di HTTPS anche nei casi in cui finora non se ne era sentita la necessità.