Top 25 Most Dangerous Programming Errors and Why the List Doesn’t Work

CWE/SANS have released a list of what they are calling the 25 most dangerous programming errors and Jeff Atwood of Coding Horror gives a great overview of each error.

However security consultant and author Gary McGraw gives a number of reasons why such lists don’t work (via Schneier), and I must admit that a lot of his concerns are quite valid.

As McGraw states, lists of programming errors do have their merits but are almost always based on subjective experience, meaning they can be quiet irrelevant for many software developers.  Of more use may be taxonomies of coding errors, specifically the Seven Pernicious Kingdoms:

  1. Input Validation and Representation
  2. API Abuse
  3. Security Features
  4. Time and State
  5. Error Handling
  6. Code Quality
  7. Encapsulation
  8. Environment