Nascondere non è la stessa cosa che mettere in sicurezza

Un dirigente non ingegnere ha costruito recentemente un SaaS B2B in due giorni. Ha usato l'IA per scrivere tutto. Il prodotto funziona. I clienti lo usano. Le funzionalità vengono rilasciate rapidamente.

Poi ho ereditato l'infrastruttura. Il mio compito è trovare i rischi nel codice che è già in produzione.

Ho trovato un enorme difetto di sicurezza. La chiave API era scritta direttamente nel codice sorgente.

Ho detto al dirigente che era pericoloso. Lo hanno corretto immediatamente.

La chiave era sparita dal codice, ma ora si trovava nel file README come passaggio di configurazione. Il segreto si era spostato dal codice alla documentazione. Era ancora all'interno del repository. In realtà, ora era ancora più facile da trovare.

Ho spiegato di nuovo il problema. Questa volta, hanno spostato la chiave nel database.

Sembrava un progresso. La chiave era fuori dal repository. Ma quando ho controllato il database, la chiave era lì in chiaro. Non c'era alcuna crittografia. Chiunque avesse accesso al database poteva leggerla.

La chiave si è spostata tre volte:

La posizione è cambiata, ma la sicurezza non è migliorata. Stavano nascondendo il segreto, non lo stavano proteggendo.

Nascondere significa mettere qualcosa fuori dalla vista. Proteggere significa renderlo inutile per un attaccante.

Nel software, devi seguire queste regole:

Questo è accaduto nonostante il dirigente abbia utilizzato i modelli di IA più avanzati disponibili.

L'IA è progettata per fornirti codice che funzioni. Scriverà volentieri codice che contiene un segreto in chiaro se non le dici diversamente. L'IA fornisce capacità, ma non garantisce automaticamente la sicurezza.

L'intelligenza diventa sicurezza solo quando sai cosa proteggere.

Se pensi di aver risolto una falla di sicurezza solo perché l'hai spostata, fermati. Chiediti:

Un segreto deve stare nel posto giusto, non solo in un posto invisibile.

Source: https://dev.to/jun_uen0/playing-hide-and-seek-with-an-api-key-our-cfos-claude-code-kept-hiding-job

Optional learning community: https://t.me/GyaanSetuAi