Stagione 52: Sicurezza delle API
Ritorno alla macchina dopo le due stagioni sulle persone: la sicurezza degli accordi con cui i programmi si parlano, le interfacce, quelle che chiamiamo comunemente le API. È lo sviluppo di due fili già aperti: la storia della sicurezza del Web e l'arco su come parlano i programmi (le interfacce come contratti tra software). Un'interfaccia è una porta che apri di proposito nel muro del tuo sistema, e ogni porta per le persone giuste è anche una porta per quelle sbagliate; fuori da quella porta non controlli niente e non conosci nessuno. La tesi che tiene insieme dieci puntate è una sola: il server non deve mai fidarsi del client. Tutto ciò che arriva da fuori (la richiesta, i dati, l'identità dichiarata) è un'affermazione, non un fatto, e va verificato a ogni passaggio; quasi ogni falla, quando la smonti, è un momento in cui il server si è fidato di qualcosa di cui non doveva. Dieci difese, che sono la stessa idea applicata in posti diversi: il confine di fiducia; l'autenticazione (chi sei) e l'autorizzazione (cosa puoi fare, col buco più comune di tutti, quello per cui basta cambiare un numero nella richiesta per vedere i dati altrui); le iniezioni, dove i dati si travestono da comandi; la cifratura del canale, contro chi ascolta la conversazione allo scoperto; il limitare le richieste, perché anche il solo volume è un attacco e l'accesso illimitato è di per sé una vulnerabilità; il non dire troppo, contro i dati che trapelano; la custodia dei segreti, le chiavi del regno; e la difesa a strati, che dà per scontato di essere violati e punta a contenere il danno. Il filo che le unisce: verificare, invece di presumere. Perché la sicurezza non è un prodotto che compri o una funzione che aggiungi alla fine: è una postura, un modo di stare mantenuto in ogni richiesta e in ogni decisione, come l'igiene. E, come le stagioni precedenti insegnano, fallisce quasi sempre per ragioni umane, la fretta e l'eccesso di fiducia, il che la rende anche una disciplina di squadra e di carriera; non puoi mettere in sicurezza ciò che non capisci.
Episodi
10 episodi
La sicurezza è una postura, non un prodotto
Le somme della stagione...
Dai per scontato di essere violato: difesa a strati
Difesa a strati, con onestà...
Le chiavi del regno: i segreti
I segreti, le chiavi del regno: chiavi, parole d'ordine, gettoni, certificati; chi le ha entra senza forzare niente...
Non dire troppo: i dati che trapelano
I dati che trapelano: cosa esce dalla porta...
Troppo di una cosa buona: limitare le richieste
Limitare le richieste...
La conversazione allo scoperto: cifrare il canale
Cifrare il canale...
Il client mente sempre: dati e iniezioni
Dati e iniezioni...
Cosa puoi fare? L'autorizzazione (e il buco più comune)
L'autorizzazione, e la distinzione che confonde tutti: l'autenticazione è chi sei, l'autorizzazione è cosa ti è permesso fare...
Chi sei? L'autenticazione
L'autenticazione: la domanda chi sei davvero...
Le porte nel muro: il confine di fiducia
Ritorno alla macchina dopo le due stagioni umane: la sicurezza degli accordi con cui i programmi si parlano, le interfacce...