Kasal, K. (2010). Evaluation of model-driven security approaches [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-45091
In unserer modernen, inzwischen von Softwaresystemen abhängig gewordenen Gesellschaft, gewinnt die Sicherheit und Korrektheit der eingesetzten Informationssysteme immer mehr an Bedeutung. Beispielsweise benötigen Unternehmen Applikationen um den Lagerbestand, Kundendaten sowie Zahlungsinformation zu verwalten. Der Erfolg oder Misserfolg eines ganzen Unternehmens kann vom adäquaten Schutz dieser Da...
In unserer modernen, inzwischen von Softwaresystemen abhängig gewordenen Gesellschaft, gewinnt die Sicherheit und Korrektheit der eingesetzten Informationssysteme immer mehr an Bedeutung. Beispielsweise benötigen Unternehmen Applikationen um den Lagerbestand, Kundendaten sowie Zahlungsinformation zu verwalten. Der Erfolg oder Misserfolg eines ganzen Unternehmens kann vom adäquaten Schutz dieser Daten abhängen.<br />Softwaredefekte, welche durch einen fehlerhaften Entwurf oder eine fehlerhafte Implementierung verursacht werden, sind der Hauptgrund für Sicherheitsvorfälle.<br />Entwurfsprinzipien wie Kapselung, Polymorphismus und Vererbung reduzieren die Systemkomplexität, und helfen dabei die Fehleranzahl zu minimieren, jedoch sind diese auf Grund des kontinuierlich wachsenden Funktionalitätsumfangs nicht mehr ausreichend. Aus diesem Grund wurde modellgetriebene Entwicklung als ein vielversprechender, komplexitätsreduzierender und für die Entwicklung sicherer Informationssysteme geeigneter Ansatz (Model-Driven Security) vorgeschlagen. Mittlerweile ist eine Vielzahl an Modellierungs- und Spezifikationsmethoden verfügbar, und es stellt sich die Frage welcher Ansatz bei welchem Problem anzuwenden ist. Um sicherheitsrelevante Informationssysteme mittels modellgetriebener Methoden zu entwickeln oder zu analysieren, ist es notwendig zu wissen welche Ansätze für die Beschreibung welcher Sicherheitsmechanismen und Sicherheitsanforderungen geeignet sind. In der Literatur wurde bisher keine Methode vorgestellt, welche zu einem solchen Vergleich hätte herangezogen werden können. Die vorliegende Arbeit trägt diesem Umstand Rechnung, und stellt eine Taxonomie für Model-Driven Security vor. Des weiteren werden elf dem gegenwärtigen Stand der Forschung entsprechende Methoden evaluiert, und damit die Frage beantwortet, welche der untersuchten Methoden zur Analyse welcher sicherheitsrelevanter Probleme herangezogen werden kann.<br />Das Resultat ist ein Rahmenwerk zur Klassifizierung von Ansätzen aus dem Bereich der Model-Driven Security. In weiterer Folge werden zwei am besten geeignete Methoden (der insgesamt elf evaluierten), auf die Fallstudie PIPE angewendet, um diese im Hinblick auf geforderte Sicherheitseigenschaften zu untersuchen. Wird eine Sicherheitslücke gefunden, so wird gezeigt wie diese behoben werden kann. Das Resultat ist eine Analyse des PIPE Systems und dessen Sicherheitseigenschaften
de
Since our modern society is critically dependent on software systems, software security is rapidly becoming an important issue. For example, companies depend on applications to administer customer data, payment information and inventory tracking. Threats from security breaches range from defeats of copy protection mechanisms to harassments like malicious intrusions into systems that control crucia...
Since our modern society is critically dependent on software systems, software security is rapidly becoming an important issue. For example, companies depend on applications to administer customer data, payment information and inventory tracking. Threats from security breaches range from defeats of copy protection mechanisms to harassments like malicious intrusions into systems that control crucial infrastructure. Software vulnerabilities, arising from deficiencies in the software design or its implementation due to increasing complexity, are one of the main reasons for security incidents. Although the object-oriented paradigm is mostly employed nowadays, principles like encapsulation, polymorphism and inheritance are insufficient and a paradigm change is necessary. Because of its good characteristics in tackling software complexity, model-driven engineering was utilized to develop secure information systems. Many proposals dealing with integrating security and modeling languages followed and were summarized under the term Model-Driven Security. Due to the large amount of available modeling and specification approaches for describing secure information systems, the question arises which method to use for which problem. When intending to apply model-driven security, or at least to analyze a model of a system, it is fundamental to know which security mechanisms and which security requirements can be modeled by a certain technique, and whether an appropriate tool-chain exists. Due to a multitude of available modeling approaches, it can become tedious to identify the most suitable method for solving the problem at hand. There is no common comparison framework to oppose the different methods to each other with regard to security and to indicate the promising approach. This thesis contributes to the research area of software engineering by defining a taxonomy for model-driven security.<br />It evaluates eleven state-of-the-art approaches and classifies them according to the provided taxonomy. Thereby it answers the question which approaches are applicable for solving which development problems, and what specific characteristics these techniques feature. Furthermore, two evaluated methods are applied and security properties which are required for our case study system PIPE are evaluated. In addition, after analysing and validating the system and its security requirements, a solution is provided in case a required security property has been violated. The benefit of the work is a framework for classifying model-driven security approaches and formal specification methods, and an analysis of the PIPE system and its security requirements, including a fix in case a security violation has been found.<br />