Gesamt-Schlussbericht des Verbundprojektes Deutsch - CC Gmbh
Gesamt-Schlussbericht des Verbundprojektes Deutsch - CC Gmbh
Gesamt-Schlussbericht des Verbundprojektes Deutsch - CC Gmbh
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Analyse steigert. Es galt also eine vernünftige Abwägung zwischen Analysegenauigkeit und<br />
Analyseaufwand zu finden. Ohne vorherige Erprobung war der bestmögliche Kompromiss<br />
nicht absehbar. Daher bestand eine kritischen Anforderungen darin, eine flexible<br />
Implementierungsstrategie zu finden, die jederzeit ein Nachjustieren der Fluss- und Kontextsensitivität<br />
ermöglicht, ohne größere Änderungen am Framework vornehmen zu müssen.<br />
Parallel zu den vorrangig wissenschaftlichen Anforderungen wurden im Projekt praxisorientierte<br />
Anforderungen ermittelt. Diese spiegeln vor allem die Anwendersicht auf das<br />
entsprechende Softwareprodukt wider und beziehen sich insbesondere auf systemtechnische<br />
Anforderungen, die gewünschte Handhabung sowie die sinnvolle und verwertbare<br />
Ausgabe der Arbeitsergebnisse <strong>des</strong> geplanten Frameworks.<br />
Nicht nur, um den Prozess der Anforderungsabstimmung zu unterstützen, sondern auch um<br />
die Kommunikation und den Ergebnisaustausch unter den Projektpartnern zu erleichtern und<br />
zu fördern, wurde bereits zu Projektbeginn vom Konsortialführer <strong>CC</strong> ein projektinterner Wiki<br />
eingerichtet. Damit war die Arbeit der verschiedenen Verbundpartner für alle Projektmitglieder<br />
transparent und nachvollziehbar.<br />
Beschreibungssprache FLOW<br />
Das Vorhaben war von Beginn an darauf ausgerichtet, eine möglichst quellsprachenunabhängige<br />
Analyseunterstützung bereitzustellen. Für die ins Auge gefassten Programmiersprachen-Frameworks<br />
wurden dazu zunächst die sicherheitsrelevanten Datenquellen und<br />
Datensenken erhoben. Die Anforderung bestand darin, für alle ermittelten Codemuster eine<br />
einheitliche Darstellungsmöglichkeit zu schaffen, die den Besonderheiten der Quellsprachen<br />
Rechnung trägt. Unter Mitwirkung und Anleitung von IESE sammelten die Anwendungspartner<br />
ICT und SHE dazu typische Codebeispiele bzw. Validierungsmuster. Aus diesen<br />
Codemustern sollten im Projekt allgemeine Merkmale für sicherheitskritische Datenquellen<br />
und Datensenken abgeleitet werden. Zudem flossen Ergebnisse hieraus in die Konzeption<br />
der Datenflussbeschreibungssprache FLOW ein.<br />
Diese SecFlow-eigene Modellierungssprache FLOW dient dazu, die für eine Analyse<br />
notwendigen Informationen über Datenflüsse von externe Funktionen zu hinterlegen, die von<br />
SecFlow nicht analysiert werden können bzw. explizit von der Analyse ausgenommen<br />
werden sollen. Diese Informationen werden in der FLOW-Sprache über sogenannte Flow-<br />
Dateien (Summary Datei) an das SecFlow-Werkzeug weitergegeben.<br />
Das Konzept wurde von IESE entwickelt. Dabei wurde zunächst ein relationales, dann ein<br />
aspektorientiertes Beschreibungsformat für Datenfluss-Spezifikationen erprobt. Beide<br />
Spezifikationsformate setzten jedoch ein hohes Maß an Abstraktionsvermögen und viel<br />
Hintergrundwissen über Datenflussanalyse beim Anwender voraus und erwiesen sich daher<br />
als nicht geeignet. Aufbauend auf diesen Erfahrungen entwickelte Fraunhofer IESE in<br />
mehreren Iterationen schließlich die spezialisierte Datenfluss-Beschreibungssprache FLOW<br />
[Mandel&Jawurek 2008]. Neben der Sprachunabhängigkeit soll mit dem Einsatz von FLOW<br />
und mit der damit verbundenen intuitiven Ausdrucksweise und den minimalen, aber genau<br />
erzeugten Informationen die Spezifikation <strong>des</strong> Datenflusses erleichtert werden. Die abstrakte<br />
Darstellung erlaubt es, bekannte Datenflüsse, -quellen und -senken auf einfache Art<br />
abzubilden.<br />
Um zukünftigen Anwendern die Erstellung solcher Spezifikationen zu erleichtern, wurde von<br />
ICT und SHE auf Basis <strong>des</strong> Konzeptes von IESE eine Dokumentation mit Beispielen<br />
erarbeitet [Kalenborn et al. 2008].<br />
Entwicklung <strong>des</strong> Analysewerkzeuges<br />
Auf Grundlage der Ergebnisse aus der Anforderungsanalyse wurde durch IESE und <strong>CC</strong> die<br />
Softwarearchitektur <strong>des</strong> SecFlow-Werkzeugs entworfen und verschiedene Technologiealternativen<br />
recherchiert und hinsichtlich ihres Nutzens und der Einsatzfähigkeit für das<br />
Projekt bewertet.<br />
Der Architekturentwurf beinhaltete den modularen Aufbau <strong>des</strong> Frameworks mit<br />
Datei<br />
SecFlow_<strong>Gesamt</strong>schlussbericht_V10.odt<br />
Version<br />
1.0<br />
Datum<br />
2009-02-02<br />
Bearbeiter/in<br />
Dana Richter<br />
Seite<br />
10 von 27