Beschreibung sicherheitsrelevanten Verhaltens in der Open Source Softwareentwicklung

Im Gegensatz zur Beurteilung der Sicherheit (security) von Open Source Software auf Produktebene (z. B. Firefox vs. Internet Explorer) befasst sich die Arbeitsgruppe Software Engineering überwiegend mit Entwicklungsprozessen.

Zu einzelnen Aspekten des Entwicklungsprozesses bei Open Source Projekten existieren bereits Arbeiten. Zum Beispiel stellen Rigby und German eine Studie über den Code Review Prozess in Open Source Projekten vor [1]. In einer weiteren Studie im Rahmen einer Projektarbeit an dieser Arbeitsgruppe [2] wurden Defektdatenbanken bezüglich der Akzeptanz und Ablehnung von allgemeinen Patches untersucht.

Der Fokus unseres Interesses liegt nun auf Verhaltensweisen, die bei der Behebung und Vermeidung sicherheitsrelevanter Schwachstellen auftreten und auf Rollen, die von den beteiligten Personen eingenommen werden.

  1. Rigby, P. C., German, D. M.: A preliminary examination of code review processes in open source projects (2006). Internet: http://opensource.mit.edu/papers/Rigby2006TR.pdf
  2. Schmitt, T.: Eine Untersuchung zur Nutzung von Patch-Trackern in der Open-Source-Welt (2007). Projektarbeit.
  3. Strauss, A., Corbin, J.: Grounded Theory: Grundlagen Qualitativer Sozialforschung. Beltz, Psychologie Verlags Union. (1996)

Ziele

Das Ziel meiner Arbeit ist mit Hilfe der Grounded Theory eine qualitative Datenanalyse auf existierenden Datenbeständen (z.B. in Patch Trackern, Advisory Boards und Mailinglisten) durchzuführen, um dabei Verhaltensweisen und Rollen, welche bei der Behebung von sicherheitsrelevanten Schwachstellen in der Open Source Softwareentwicklung involviert sind, zu identifizieren und zu beschreiben. Dabei erstelle ich zuerst eine Klassifikation für Verhaltensweisen und eine für Rollen. Die bei der Erstellung der Verhaltensklassifikation entdeckten Phänomene untersuche ich im Anschluss, mit dem Ziel, Bedingungen, Beziehungen und weitere Einflussfaktoren zu erkennen und deren Wechselwirkung mit den untersuchten Phänomenen zu verstehen und zu beschreiben.

Die Analyse beschränke ich dabei auf Open Source Webanwendungen. Außerdem beschreibe ich leicht erkennbare Verhaltensweisen und Praktiken zur Vermeidung von sicherheitsrelevanter Schwachstellen , die ich bei der Analyse der Schwachstellenbehebung in den ausgewählten Projekten beobachte.

Kernaufgaben

  1. Datenauswahl - Auswahl existierender Datenbestände und Auffinden geeigneter Beschreibungen von Verhalten und Rollen, welche bei der Behebung sicherheitsrelevanter Schwachstellen auftreten.
  2. Datenanalyse - Ableitung von Verhaltens- und Rollenkategorien und Untersuchung der Beziehungen zwischen den Kategorien, welche beim Phänomen "Umgang mit Schwachstellenveröffentlichung" auftreten, um Aussagen zu erhalten, welche das sicherheitsrelevante Verhalten in der Open Source Softwareentwicklung, beschreiben. Diese Aufgabe stellt den Schwerpunkt der Arbeit dar.
  3. Literaturarbeit - Darstellung und Vergleich von Literatur zu Qualitätssicherung, Sicherheit, Behebung und Vermeidung von sicherheitsrelevanten Schwachstellen, sowie zur Schwachstellenveröffentlichung mit den eigenen Erkenntnissen.
  4. Behebungsdauer und Erkenntniszusammenfassung - Untersuchung der Einflüsse auf die Behebungsdauer durch die Betrachtung der Beziehungen zwischen den Kategorien, welche beim Phänomen "Umgang mit Schwachstellenveröffentlichung" auftreten. Sowie die Zusammenfassung der Erkenntnisse aus dieser Untersuchung.
  5. Schwachstellenvermeidung - Diese Aufgabe liegt nicht im Fokus meiner Arbeit. Bei dieser Aufgaben beschreibe ich lediglich leicht erkennbare Verhaltensweisen und Praktiken zur Vermeidung sicherheitsrelevanter Schwachstellen in ausgewählten Projekten.

Organisatorisches

  • Bearbeiter: Tobias Opel
  • Betreuer: Martin Gruhn
  • Abgabe: August 2008

Fortschritt

Von Bis Tätigkeiten
18.02.2008 Anmeldung
28.02.2008 Konzeptvorstellung Masterarbeit im BSE
28.02.2008 04.03.2008 Wahl der Methodik Grounded Theory, Beschaffung von [3] und Einarbeitung in GT
04.03.2008 18.03.2008 Erste Open Coding Sitzungen anhand von Daten aus dem Projekt Wordpress
18.03.2008 01.04.2008 GT-Software Evaluierung, Wahl von Atlas.ti als Software zur Unterstützung der Methode, Einarbeitung in Atlas.ti, weitere Wordpress Episoden kodiert, Systematik der Datenerhebung festgehalten
01.04.2008 08.05.2008 weitere Einarbeitung in Atlas.ti, weitere Kodierarbeit auf Daten des Wordpress Projektes, Literaturrecherche, Begriffsdefinitionen, Auswahl weiterer Projekte, weiteres Schreiben an der Arbeit
08.05.2008 Erste Zwischenpräsentation Masterarbeit im BSE
08.05.2008 19.06.2008 Konzeptarbeit (Aggregation, Aufbrechung), Kodierarbeit auf Daten des Projekts Joomla, Kategoriebildung, Entwicklung der Verhaltens- und Rollenklassifikation, erste Entdeckung interessanter Phänomene
19.06.2008 Zweite Zwischenpräsentation Masterarbeit im BSE
19.06.2008 15.08.2008 Phänomenuntersuchung zu "Umgang mit Schwachstellenveröffentlichung", Anpassung der Verhaltens- und Rollenklassifikation, neues Projekt TWiki, Fertigstellung der Arbeit
16.08.2008 Druck + Bindung
18.08.2008 Abgabe
02.10.2008 Abschlusspräsentation Masterarbeit im BSE

Ergebnisse

Comments