Όλα τα λογισμικά έχουν ελαττώματα, ειδικά στον σημερινό πολύπλοκο κώδικα με χιλιάδες γραμμές που πρέπει να διατυπωθούν ακριβώς έτσι. Το Ινστιτούτο Ηλεκτρολόγων και Ηλεκτρονικών Μηχανικών (IEEE) γνωρίζει αυτό το δίλημμα. Αρχίζοντας το 2014, το IEEE ξεκίνησε μια νέα πρωτοβουλία: το Κέντρο Υπολογιστών για Ασφαλές Σχεδιασμό (CSD). Είναι αποστολή; Να παρέχει οδηγίες για την αναγνώριση συστημάτων λογισμικού που είναι ευάλωτα σε συμβιβασμούς και για το σχεδιασμό και την κατασκευή συστημάτων λογισμικού με ισχυρές και αναγνωρίσιμες ιδιότητες ασφαλείας
Κάποιος μπορεί να πει ότι έχει γίνει πριν. Αυτό είναι αλήθεια. Ωστόσο, το CSD σκοπεύει να υιοθετήσει μια διαφορετική προσέγγιση μεταθέτοντας μέρος της εστίασης στην ασφάλεια από την εύρεση σφαλμάτων έως τον εντοπισμό κοινών ελλείψεων σχεδιασμού με την ελπίδα ότι οι αρχιτέκτονες λογισμικού μπορούν να μάθουν ο ένας από τον άλλο.
Για να πάρει αυτού του είδους τις πληροφορίες, το CSD ζήτησε τη βοήθεια βετεράνων στον τομέα της ασφάλειας λογισμικού - περισσότερο ή λιγότερο εκείνοι που είτε έκαναν τα προαναφερθέντα λάθη είτε είχαν ένα χέρι για να τα καθορίσουν. Μετά από πολλή συζήτηση, η ομάδα συγκέντρωσε τις σκέψεις της σε ένα έγγραφο, "Αποφυγή των Top 10 Software Security Design Flaws." Ο IEEE ανέφερε ότι πολλά από τα ελαττώματα που έκαναν τη λίστα ήταν γνωστά εδώ και δεκαετίες, αλλά εξακολουθούν να αποτελούν πρόβλημα. Εδώ θα ρίξουμε μια ματιά σε αυτά τα ελαττώματα - και πώς να τα διορθώσετε.