Die 25 gefährlichsten Programmierfehler

Über die 25 schwerwiegendsten Programmierfehler im Security-Kontext hat sich eine Kommission aus über 30 Unternehmen und Organisationen verständigt.

In Pocket speichern vorlesen Druckansicht 363 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Alexander Neumann

Über 30 international auftretende Sicherheitsunternehmen und -organisationen haben sich auf eine Liste der 25 gefährlichsten Programmierfehler verständigt, die zu sehr groben Sicherheitsfehlern führen und Cyber-Spionage und -Verbrechen ermöglichen. Viele der 25 aufgezählten Fehler würden von Programmierern nicht richtig verstanden werden, ihre Vermeidung werde in der Ausbildung auch nicht gelehrt, heißt es dazu von den Organisatoren der Initiative. Zwei der Fehler hätten 2008 gar zu 1,5 Millionen Einbrüchen in Websites geführt. Zu den Spitzenreitern zählen etwa unzureichende Input-Validierung, Buffer Overflows sowie mangelhafte Zugriffskontrolle.

Unter denen, die bei der Top-25-Auswahl mitgearbeitet haben, finden sich beispielsweise Symantec, Microsoft, die National Cyber Security Division des Department of Homeland Security und die Information Assurance Division der NSA. Der Anstoß für die Initiative ist von der National Security Agency ausgegangen mit finanzieller Unterstützung durch das die National Cyber Security Division des DHS. Die Ausführung lag bei den Instituten MITRE und SANS (SysAdmin, Audit, Network, Security) .

Die beteiligten Parteien haben sich den Angaben zufolge ziemlich schnell auf die Top 25 einigen können. In einem zweiten Schritt müsse es nun darum gehen, Programmierern das Wissen zu vermitteln, wie man Code schreibt, der frei von den Programmierfehlern der Top 25 ist.

Langfristiges Ziel ist,

  • Softwarekäufern sicherere Software anzubieten. Hierfür seien Zertifizierungsmechsanismen gefragt.
  • Programmierern Tools an die Hand zu geben, die Sicherheitsaspekte der entwickelten Software überprüfen. Hierfür haben parallel zu der Meldung verschiedene Anbieter von Test-Software angekündigt, dass ihre Software Code hinsichtlich von Top-25-Programmierfehlern testet.
  • Schulungsanbietern und Entwicklern, die Programmierer anlernen, eine Grundlage für Schulungen zu bieten, die hilft, die Top-25-Programmierfehler zu vermeiden.
  • Arbeit- oder Auftraggebern die Top-25-Liste als zusätzlich Referenzmöglichkeit zu geben, mit der sie die Skills von Bewerbern überprüfen können.

Die Arbeitsgruppe zur Erstellung der Top 25 unterteilt die Programmierfehler in drei Kategorien, erstens in unsichere Interaktionen zwischen Komponenten wie SQL-Injection und Cross-Site-Scripting, zweitens in riskantes Ressourcen-Management und drittens in durchlässigen Schutz, wozu etwa fehlerhafte vergebene Rechte, schwache Kryptoalgorithmen und hard-codierte Passwörter gehören. Zu jedem der veröffentlichten Programmierfehler liefert die Initiative eine Beschreibung und Einschätzung beziehungsweise Szenarien, die Fehler zu umgehen. Eine übersichtliche Darstellung der Top 25 finden Interessierte auf den Seiten von MITRE.

Siehe dazu auch:

(ane)