Stampa

Ci raccontano che l'INPS sia stata vittima di un “violento attacco hacker”, senza specificare provenienza, entità e soprattutto scopo dell'attacco. Quel che i cittadini italiani hanno osservato è stato molto più semplice e diretto: il sito dell'INPS, con una nuova applicazione web in grado di accogliere, almeno sulla carta, le domande di cassa integrazione, ha smesso di funzionare non appena messo in esercizio, dopo una serie di errori veniali (eccessivo tempo di caricamento delle pagine) e gravissimi (comparsa sullo schermo di dati particolari riferiti ad altre persone).

Quando è stata data la notizia nei telegiornali, chi si occupa di informatica per lavoro ha pensato al classico “pesce d'aprile”, ma magari qualche milione di italiani c'è cascato e ha pensato davvero a miriadi di “hacker cattivi” che, nell'immaginario collettivo, sono puntualmente russi, estoni o cinesi, che avrebbero preso d'assalto il sito dell'INPS.

Certo, che i dati in transito sulla web application per la cassa integrazione siano appetibili per bande, realmente esistenti, di cyber-criminali (hacker vuol dire un'altra cosa, e sarebbe ora di evitare confusioni lessicali) è indubbio. Ai primi posti delle attività criminali in rete c'è il furto di identità massiccio: si punta a rastrellare dati personali di migliaia di persone, da rivendere sul mercato nero ad altri malintenzionati. Mettere le mani sull'enorme quantità di dati degli utenti del sito INPS promette un bel bottino, ma è davvero questo, quel che è successo?

Sembrerebbe di no. Di sicuro il sito è stato sovraccaricato di richieste, di connessioni provenienti da migliaia e migliaia di utenti, non cyber-criminali. Non ha retto. Perché non ha retto? INPS è dotata di un buon datacenter, ma è evidente che non è bastato, a causa di due problemi: uno di tipo hardware, ed uno di tipo software.

Partiamo dall'hardware. Hanno usato la loro soluzione on premise, cioè gli apparati già disponibili nel datacenter, evidentemente insufficienti a reggere il carico improvviso ed enorme di connessioni per l'apertura del caricamento delle richieste di cassa integrazione. Tuttavia, le soluzioni tecnologiche esistono, e sono anche consolidate sul mercato e nella rete: bastava scalare i web server su cloud, con una struttura elastica che aumentasse dinamicamente le istanze dei web server al crescere delle richieste, con un opportuno load balancing delle stesse. I principali cloud mondiali offrono questo servizio al costo “esorbitante” di pochi dollari (numeri ad una cifra) all'ora. Viene il dubbio che ai piani alti di INPS potrebbero non essere a conoscenza di questa soluzione, che non richiede investimenti sotto forma di acquisto di nuovi server, ed è implementabile in tempi rapidissimi, solitamente alcune ore.

C'è poi l'aspetto del software. Scrivere una web application richiede uno sforzo in termini di organizzazione e di risorse umane che rende impossibile uno sviluppo in poche ore di un nuovo applicativo. Normalmente, una web application richiede, dalla macronalisi dei requisiti fino al suo “acceptance test” tempi non inferiori ad un anno. Di conseguenza INPS non può aver sviluppato in pochi giorni un nuovo applicativo, ma ha adottato un processo produttivo basato sul modificare un applicativo già esistente.

Spezzando una lancia a favore di INPS, va detto che i tempi di messa in produzione sono stati bassissimi (pochi giorni), tempi che qualsiasi IT manager rifiuterebbe a priori, tempi che non hanno consentito test approfonditi, e tutta la casistica di eventi che possono avvenire nel ciclo di vita di un applicativo esposto su internet. Dall'altra parte, se è vero che l'utente A ha visto visualizzati sul suo schermo i dati particolari di un utente B, allora l'applicativo è stato sviluppato seriamente male, o quanto meno con una pessima gestione delle sessioni utente, quelle sessioni implementate mediante i cookies tanto cari alla normativa europea, che impone ai siti di chiedere il consenso agli utenti circa il loro uso.

Sono i cookies, a separare le sessioni dei diversi utenti, mantenendoli isolati l'uno dall'altro. Sono i cookies che permettono la registrazione ed il login degli utenti con un protocollo, l'HTTPS, che è privo di memoria storica tra una richiesta ed un'altra. Sbagliare la gestione delle sessioni può significare diverse cose: modifiche al volo ad un sistema pre-esistente senza fare (o senza avere il tempo) tutti gli opportuni test, o qualche programmatore che nella fretta ha commesso un errore macroscopico in qualche linea di codice, lasciando un bug talmente vistoso che non serve alcun hacker per evidenziare un malfunzionamento; errore che non è stato scovato da nessuno perché nessuno ha revisionato e testato quel codice.

Oppure, peggio ancora, potrebbe essersi trattato di un errore di progettazione dell'applicazione, senza dimenticare che anche gli altri casi sottintendono uno o più clamorosi errori di progettazione.

Tirando le somme, si vede una situazione in cui non hanno scalato in cloud, reputando erroneamente di poter reggere il carico ed hanno usato solo soluzioni on premise, senza valutare l'importanza della scalabilità e mandando in esercizio un software scarsamente testato, se non addirittura non testato. Un'operazione che va contro ogni regola dell'ingegneria del software, una soluzione adottata senza progettualità, senza criterio. Probabilmente non avrebbe funzionato in condizioni normali, figuriamoci sotto stress.

Qualcuno ha dichiarato: “Non ha funzionato perché è stato sottoposto a 4 milioni di richieste”, un sito pornografico di un qualsiasi top player mondiale riceve oltre 100 milioni di richieste al giorno, con traffico video molto più pesante, e senza nessun malfunzionamento o rallentamento, anche in concomitanza con gli attacchi cyber-criminali, ma quelli veri. Evidentemente la stessa solidità infrastrutturale non riguarda l'INPS.

Nel caso in cui, poi, l'incidente dovesse mettere in pericolo qualche comoda poltrona ai piani alti, ecco servita su un piatto d'argento la soluzione che salva capre e cavoli: sono stati gli hacker cattivi, talmente presi dalla volontà di rubare dati, che hanno addirittura bloccato il funzionamento dell'applicativo da cui prendere quei dati. La migliore risposta è arrivata proprio dalla comunità hacker Anonymous, che in un comunicato apparso sul loro sito internet hanno scritto: “Ci sarebbe piaciuto prenderci il merito, ma la verità è che siete degli incapaci”.