Chi non lavora con me non lo sa. Ma c'e' una cosa che non sopporto. Non sopporto quello che cerca di supercazzolarmi allo scopo di nascondere una verita' che io, come tecnico , so intuire ancora prima che lui apra bocca. Non li reggo. Quelli che entrano nel MIO campo specifico di competenza cercando di fare blablabla non li reggo. Divento una belva. Nella migliore delle ipotesi vi insulto. Nella peggiore inizio a prendervi per il CULO. Mi rifeferisco al comunicato di DNV che Grillo definisce "attacco hacker".
Allora, innanzitutto nel documento DNV publicato dalla repubblica( http://www.repubblica.it/tecnologia/2013/04/12/foto/m5s_la_certificazione_per_le_quirinarie-56481383/1/ ) su carta intestata NON firmata, l'azienda non parla di danni causati da terzi, ne' di violazioni del sistema, ne' di hacker. Sta dicendo di aver rilevato una inconsistenza nel sistema. Il che significa un poco tutto o niente, ma sta dicendo che il sistema funziona male.
Questo significa una semplice cosa: NON C'E' STATO NESSUN CAZZO DI ATTACCO DI HACKER. Il sistema funzionava male, che e' una cosa molto diversa.
Una cosa e' dire che hai una gomma a terra. Un conto e' dire che qualcuno ti ha tagliato le gomme. Quindi, adesso sappiamo che la piattaforma scelta per eleggere il presidente della repubblica FUNZIONAVA MALE.
A questo punto bisognerebbe leggere tra le righe DA QUANDO funzionava male.
Allora, a quanto pare questi signori hanno iniziato nel 25 marzo 2013 a fare dei controlli, e l'11 aprile hanno scoperto che c'era inconsistenza. Ovvero , hanno scoperto l'inconsistenza durante le operazioni di voto.
Interessante. Quindi, abbiamo a che fare con una "inconsistenza" che si verifica SOLO quando il sistema funziona. Aha. A casa mia una inconsistenza che si verifica solo quando il sistema viene messo in produzione viene chiamata malfunzionamento, di difetto, di baco. Ma se c'è solo quando il sistema lavora, tant'è.
Ovviamente nessun sistema e' perfetto, ma dal momento che NON si parla di terzi nel comunicato, ne' di hacker, occorre concludere che l'utilizzo della piattaforma da parte di qualche centinaio di migliaia di utilizzatori , quindi uno stress test mediocre, abbia evidenziato il problema.
Per evitare queste cose ci sono diverse strategie. Io per esempio uso spesso metodi di test automation e di stress test: mi limito a compilare una lista di use case (nel caso di Grillo molto facile: il cliente si autentica, vota e si logga fuori , oppure fa scadere la sessione ), che poi testo in quantita' massicce.
Potreste anche fare un pilota in un ambiente di collaudo, invitare gli utenti a fare i beta tester, e quando si chiude la fase di collaudo andrete in produzione.
Faccio notare che con uno stupido grinder riuscite tranquillamente a simulare le chiamate POST in questione, e se portate l'I/O attorno ai 1000 TPS , riuscite a far "votare" quasi un milione di persone in meno di un'ora.
Il che, essenzialmente, significa che non e' terribilmente sofisticato condurre una simulazione del genere. Se anche parlassimo di roba implementata con un REST, la simulazione e' ancora piu' semplice. Stiamo parlando di http, cazzo, non di missilistica.
Ma andiamo avanti, perche' ci sono delle cose poco chiare. Si tratta, dicono, di una serie di controlli periodici. E va bene. Ma se sono controlli periodici di routine, qual'era il risk assessment di una "elezione del presidente online?". Cioe', non state votando miss tette sode. State votando per il presidente della repubblica. Risk assessment, anyone?
Pero' poi ci ripensano, o si contraddicono, o restano ambigui, e dicono che "trattandosi di un controllo periodico non e' stato possibile stabilire con certezza il momento iniziale della compromissione".
Interessante. Quindi si fanno controlli periodici senza tenere abbastanza log da coprire l'intervallo tra i controlli periodici. Interessante. Lo faccio io, e perdo il lavoro.
Comunque, siccome loro hanno iniziato i controlli il 25 marzo, e non hanno visto quando sono iniziati i problemi, devo pensare che il problema sia avvenuto PRIMA del 25 marzo, oppure sotto il naso dei controllori.
Ammettiamo pure che NON sia avvenuto sotto il naso dei controllori, allora l'anomalia e' iniziata PRIMA del 25 marzo.
Affidabilino, questo sistema: hai un problema SERIO da prima del 25 Marzo, e te ne accorgi l'11 di Aprile. E meno male che segui le migliori pratiche.
Se le cose non stanno cosi', allora l'inconsistenza e' iniziata da dopo il 25 Marzo, e allora e' iniziata sotto gli occhi dei certificatori. Che pero' non hanno ancora capito quando sia iniziata di preciso.
Delle due, non saprei quale scegliere.
E' stata predisposta una registrazione degli eventi, e' gia' ambiguo. Sarebbe carino, quando si scrive una relazione, usare le terminologie adeguate. Cha si parli di 6sigma, MOF, ITIL, PMP, Prince2, Agile , Scrum, ISO, tutto si basa su terminologie chiare. "registrazione degli eventi" suppongo sia "auditing".
Ok, ma da quando iniziate l'auditing? Se entrate oggi in auditing del sistema , state chiudendo la stalla dopo che i buoi sono scappati. Se eravate configurati in auditing mentre succedeva l'anomalia -e le sue conseguenze - allora sapete benissimo quando esattamente sia iniziata l'inconsistenza.
Ovviamente si guardano bene dal parlare un linguaggio tecnico , cosa di per se' sospetta , e quindi possiamo solo andare per deduzione.
Parlano di una inconsistenza "tra i voti registrati e l'espressione di voto dei votanti". Aha. Quindi, abbiamo a che fare con:
- Un problema di data integrity. I dati registrati non sono stati conservati correttamente. Problemi di consistenza di un database, di uno storage, di una infrastruttura qualsiasi addetta a conservare i dati.
- Un baco nel software , o un generico malfunzionamento del software, o un difetto nel frontend , che trasforma l'evento del voto in un dato salvato da qualche parte, tale per cui il dato viene ricevuto o manipolato nella maniera sbagliata.
- Una degradazione dell'infrastruttura di rete che non permette di trasportare i dati dal luogo ove vengono originati al luogo ove vengono registrati i voti.
Non ci vuole molto: o hai dei problemi nel backend, o nel frontend, o tra i due. E' una banalita', ma in tutti i casi il punto e' che parliamo di una infrastruttura che deve raccogliere qualche centinaio di migliaia di voti. Ne esistono di opensource, ne esistono di gratuite, come google forms, e nel 2013 un cavolo di data input DEVE fottutamente funzionare.
In nessuno dei tre casi ci avviciniamo anche lontanamente agli standard di sicurezza e affidabilita' che mi aspetto per qualcosa come "eleggi il presidente della Repubblica".
C'e' soltanto un piccolo problema: che all'inizio la DNV dice di essere stata incaricata di fare la verifica delle procedure di votazione da parte di Casaleggio. Il guaio e' che dopo dicono che si trattava di un controllo periodico, per cui non possono capire quando sia iniziata l'anomalia.
Cosi', o Grillo elegge spesso il suo candidato alla presidenza, oppure non si capisce cosa intenda DNV per "periodica". Non era sicuramente un controllo di routine, dal momento che viene fatto per UN singolo evento che e' l'elezione del Presidente.
Poi dicono che si trattava di un controllo periodico, per cui non hanno capito quando sia iniziata l'anomalia.
Saro' molto sincero: puzza molto di quella bella italianita' , puzza di "problema tennico", puzza molto di quelle situazioni per le quali bisogna inventare un comunicato stampa.
Ma saro' altrettanto sincero: chiunque si occupi di infrastrutture, a leggere quel comunicato, si sente preso in giro.
Oh, ho avuto tanti PM che si sono presentati alla mia scrivania tendando di supercazzolarmi dopo aver combinato un casino. Ho avuto fornitori che hanno cercato di supercazzolarmi dopo aver raso al suolo un sistema.
Ho conosciuto DBA che mi hanno dato 16 ore di database offline per un "problema di storage" e mi hanno detto che "l'installazione dell'agente di backup era schedulata per la settimana prossima". Si chiama "indorned", ed e' figlia di un certo "outsourcing". Per fortuna, e' gente che oggi non lavora piu' con la mia azienda.
Ho conosciuto gente che mi ha detto "ma ho fatto un test e sul mio laptop non ci sono problemi con la rete". Ho conosciuto gente che mi ha detto che , dopo 15 giorni di ricerca su un HLR a capire perche' ci tornava una deliverry report negativa , ha scoperto che il cellulare di test era spento e che meraviglia, "quando l'ho acceso gli SMS hanno iniziato ad arrivare". Questi erano negroidi francesi, quelli che sono "usciti dalla banlieue studiando duro".
Di gente che ha cercato di supercazzolarmi, in giacca e cravatta o meno, ne ho conosciuta di ogni sorta. Di gente che vive sbarcando il lunario nell' IT facendo blablabla e ancora blablabla per nascondere il fatto che "e' successo un casino, abbiamo avuto un sacco di danni e non abbiamo nemmeno capito che cazzo sia successo" ne ho vista a frotte.
E OGNI FOTTUTA VOLTA MI SONO
INCAZZATO COME UNA BESTIA!
Beh, volete sapere come la penso? Innanzitutto non si parla di "attacco hacker" quando la stessa societa' di consulenza NON ne parla. Se DNV non parla di attacchi compiuti da terzi, ma di una generica inconsistenza, perche' cazzo parli di "hacker", Grillo?
GRILLO, SEI COMICO.
Credi davvero di poter supercazzolare la gente in carta intestata? Pensi davvero che DNV sia la prima azienda che scrive qualcosa per non far fare una figura di merda al cliente, magari per far bella figura loro (sic!) , per non dire niente in modo da non contraddire il cliente, e per non dire niente in modo da nascondere qualcosa di imbarazzante?
Nella mia esperienza, roba del genere l'ho vista solo quando qualcuno tentava di nascondere qualcosa di imbarazzante. Ho visto fare relazioni del genere quando qualcuno mi voleva far credere che "sai come sono i cluster, sono delicatissimi, va giu' un nodo e lo seguono tutti", e parlava di un RAC Oracle. Ho visto fare relazioni del genere in situazioni per le quali "ma il mio SMSC sta girando il traffico verso di voi! Verso quale Large Account? Non so, non teniamo traccia degli endpoint".
Ho visto fare stronzate in ogni lingua, e anche in milaninglese, tipo "ma la patch fissa la regression".
Onestamente, cari ragazzi, potete dichiarare quel che volete: in carta bollata, in carta stagnola, in carta intestata, e potete inserirci termini pseudotecnici (perche' i termini tecnici sono SOLO quelli esatti e non ambigui, tutto il resto e' supercazzola) , ma dovete sempre capire una cosa.
Se internet funziona in Italia, se vi arrivano i bit, se il vostro data center ha la corrente, se il vostro telefono funziona ogni giorno, se vi arrivano puntuali gli sms e la posta elettronica, se potete leggere questo blog,
E' PERCHE' IN ITALIA, ANCHE IN ITALIA,
C'E' GENTE CHE SA FARE IL PROPRIO LAVORO BENE.
E queste persone , leggendo prima il comunicato di Grillo e poi il papocchio di DNV,
SI STANNO FACENDO GRASSE RISATE.
Nascondetevi, che e' meglio.
Uriel