Jährlich untersucht eine Gruppe von 30 international auftretenden Sicherheitsunternehmen und -organisationen welche Arten von Programmierfehlern in Softwareprodukten vorkommen. So entstand eine jährlich aktualisierte Liste der 25 gefährlichsten Programmierfehler, durch die es zu groben Sicherheitslücken in Softwareprodukten kommt und die spektakuläre Exploits erst möglich machen.
Damit wird seitens der Organisationen das Ziel verfolgt, Programmierern das Wissen zu vermitteln, wie man Code schreibt, der frei von diesen Top-25-Programmierfehlern ist.
Die Ursachen für gefährliche Software-Schwachstellen sind unter Sicherheitsexperten hinreichend bekannt. Vielen Softwareentwicklern ist jedoch bis heute nicht bewusst, welche Gefahren durch unsichere Programmierung drohen. Hauptziel der Veröffentlichung der Sammlung ist es daher, Softwareentwickler auf häufig gemachte Programmierfehler hinzuweisen und somit durch sichere Programmierung Schwachstellen gar nicht erst aufkommen zu lassen – so Alexander Neumann auf Heise Developer.
Die gefundenen Schwachstellen wurden grob in drei Kategorien gegliedert:
- Angriffspunkte beim Datenaustausch zwischen Systemen.
- Schwachstellen beim Umgang mit wichtigen Ressourcen.
- Fehlerhaft implementierte Sicherheitsmaßnahmen.
Angriffe wie Cross-Site-Scripting und Code-Injection zielen i.d.R. auf Schwachstellen der ersten Kategorie, Buffer-Overflow-Attacken oder DoS-Angriffe auf solche der zweiten. Und in jedem geknackten Kopierschutz, jedem umgangenen Passwort und jeder gebrochenen Kryptomethode wurden Fehler der dritten Art gefunden und ausgenutzt.
Auf Common Weakness Enumeration – Community-Developed Dictionary of Software Weakness Types wird die aktuelle Liste sowie weiterführende Informationen für Entwickler und Security-Experten bereitgestellt. Dazu zählen auch generische Empfehlungen zur Qualitätssicherung und Risikobegrenzung im Entwicklungsprozess.
Gegen ein Sicherheitsproblem der speziellen Art sind jedoch auch solche Listen machtlos: Den Versuch von Entscheidern, Software-Entwicklungsprojekte durch unrealistisch gesetzte Termine und schlampig berechnete Budgets zunächst unter Druck zu setzen und dies später durch Einsparungen bei der Qualitätssicherung korrigieren zu wollen.
Hier wird es wohl noch den ein oder anderen großen Datenskandal sowie die schonungslose Aufklärung und Aufdeckung seines Zustandekommens einschließlich Nennung aller Namen von verantwortlichen Entscheidern brauchen.
[...] im Auftrag mehrerer Unternehmen und Organisationen, darunter auch OWASP, die zweite Auflage ihrer 25 gefährlichsten Programmierfehler erst kürzlich [...]