sabato 25 agosto 2018

Tesla technical debt: ecosistema informatico troppo frammentato

Stando ad un lungo elenco di tweet con degli screenshot di un subforum di qualche subforum, un anonimo tizio che lavorava in Tesla Inc., scaduto il suo NDA (non-disclosure agreement: non parlare di ciò che sa per tot anni dopo la cessazione del rapporto di lavoro), ha rivelato il grande porcaio informatico delle vetture Tesla.

Dopo gli inizi promettenti e ben ordinati, si è infatti scatenata la sindrome del Presto, Presto! Bisogna Deliverare! tipica degli ambienti informatici, dovuta al fatto che X ha promesso a Y di accorciare le date di consegna perché altrimenti Z si offende e in cascata W la prende a male, perciò J si infuria, eccetera. La crisi di Tesla è cominciata lì, molto prima degli scandali dei tweet del famoso Musk.

Alcuni degli scenari informatici (che fanno sembrare anche il più dilettante degli informatici italiani un insuperabile professionista della sicurezza):
  • sistemi protettissimi nell'autovettura ma connessioni informatiche protette malissimo (diversi hacking, tra cui il ragazzino canadese che si appropria del dominio web di aggiornamento) e i cinesi che sniffano il traffico di rete per catturare i file di aggiornamento (non crittografati) e creare rapidamente cloni economici delle Tesla...
  • impianto informatico in macchina costruito accatastando SOM (system-on-module) di varia provenienza in fretta e furia (consegnare! consegnare! presto! bisogna deliverare!), col risultato di avere board vecchissime e insostituibili dotate di un vecchissimo Linux Yocto e funzionanti solo con incomprensibili script Perl, distribuzioni CentOS vecchie e senza hardening (cioè senza disattivare servizi informatici non utilizzati, ecc.)...
  • meccanismi di aggiornamento incollati con lo sputo (un update firmware durava tre giorni), OpenVPN senza password, un singolo datacenter senza ridondanza (per loro fortuna nessun terremoto o acquazzone), ecc. - si capisce come mai erano così ossessionati dal mantenere il segreto sulle loro infrastrutture - e una volta hanno dovuto fare un downgrade di emergenza del firmware a tutte le auto in circolazione perché quello recente conteneva riferimenti al nuovo modello P100 che non era stato ancora ufficialmente presentato alla stampa e agli investitori...
  • la parte più divertente è quando un ingegnere di SpaceX viene assunto lì e il primo giorno dice alla squadra di programmatori: oggi vi faccio un esame, chi non sa usare i puntatori del linguaggio C è licenziato... ci fu una mega-rivolta e una colossale falciata di teste: quasi nessuno sapeva maneggiare i puntatori...
La parte "legale" più allarmante è il fatto che ogni vettura informatizzata (dunque non solo Tesla) può spedire la propria telemetria al costruttore.

Questo "può" ovviamente diventa subito "deve", sapete, "per ragioni di sicurezza", "per migliorare il prodotto", bla, bla, bla... in pratica, per disabilitarti funzioni e servizi a discrezione del costruttore. Per esempio Tesla disabilitava il SuperCharger in base al modo in cui viene utilizzata la macchina perché a ricaricare spesso col SuperCharger si rovinano le batterie (trecento ampere di corrente di carica non sono esattamente una carezza).

Risultato: dato che la Tesla incamera continuamente la telemetria di tutti i clienti, allora la Cina ha stabilito per legge che tutte le vetture elettriche devono farlo e mandare la propria telemetria in tempo reale anche allo Stato. Dunque, se in Cina (e presto in altri paesi) compri una vettura elettrica vieni spiato, controllato e monitorato sia dal produttore che dallo Stato (sanno dove sei, sanno se stai parcheggiato fuori posto o se hai superato il limite di velocità, sanno quante persone sono con te, sanno quanta autonomia ti rimane, sanno tutto!). Miracoli dell'informatica!


Consiglio agli appassionati di informatica di leggere tutti gli screenshot dei tweet prima che qualche avvocato di Tesla li faccia cancellare...
"La prima volta che attivammo la telemetria in tempo reale notammo uno che stava correndo a 210 km orari sul ponte di San Mateo..."
Ovviamente in SpaceX le cose non vanno affatto meglio... Spettacolare il commento a proposito dei razzi SpaceX che hanno un kernel linux modificato anziché un qualsiasi RTOS (real-time operating system). Linux vince sempre!

Morale della favola: se devi accontentare gli azionisti sei fritto.

Nessun commento:

Posta un commento