Tutti i software presentano difetti, specialmente nel codice complesso di oggi con migliaia di righe che devono essere formulate proprio così. L'Institute of Electrical and Electronics Engineers (IEEE) è a conoscenza di questo dilemma. A partire dal 2014, l'IEEE ha lanciato una nuova iniziativa: il Computer Society Center for Secure Design (CSD). È missione? Fornire indicazioni sul riconoscimento dei sistemi software vulnerabili a compromessi e sulla progettazione e costruzione di sistemi software con proprietà di sicurezza efficaci e identificabili
Si potrebbe dire che è stato fatto prima. Questo è vero. Tuttavia, CSD intende adottare un approccio diverso spostando parte dell'attenzione nella sicurezza dalla ricerca di bug all'identificazione di difetti di progettazione comuni nella speranza che gli architetti del software possano imparare gli uni dagli altri.
Per ottenere quel tipo di informazioni, il CSD ha cercato l'aiuto dei veterani nel campo della sicurezza del software, più o meno quelli che hanno commesso gli errori sopra menzionati o hanno contribuito a risolverli. Dopo molte discussioni, il gruppo ha raccolto i suoi pensieri in un documento, "Evitare i 10 principali difetti di progettazione della sicurezza del software". IEEE ha affermato che molti dei difetti che hanno reso l'elenco sono noti da decenni, ma continuano a essere un problema. Qui daremo uno sguardo a quei difetti e a come risolverli.