Refine
Year of publication
Document Type
- Conference Proceeding (24)
- Workingpaper / Report (5)
- Master's Thesis (4)
- Article (3)
- Bachelor Thesis (2)
- Part of a Book (2)
- Book (1)
- Diploma Thesis (1)
- Researchdata (1)
- Study Thesis (1)
Keywords
- security (9)
- security requirement (6)
- problem frames (4)
- security engineering (4)
- requirements engineering (3)
- security requirement engineering (3)
- software engineering (3)
- Bachelor (2)
- IT Security (2)
- M (2)
Department/institution
- Digitale Vernetzung und Informationssicherheit (44) (remove)
Forums such as Stack Overflow are used by many software developers to find a solution for a given coding problem. Found solutions, i.e. forum posts containing relevant source code, are utilized in a copy and paste manner. This behavior carries the risk that vulnerabilities contained in the source code of the forum posts are spread. Software developers should be able to identify vulnerable source code at an early stage, thereby preventing copying the corresponding source code. In this paper, we introduce the tool CopypastaVulGuard that identifies vulnerable source code in forum posts and allows software developers to omit the source code by marking the forum posts as dangerous. Our tool consists of a browser extension and a management application capable to address as examples SQL injections, remote code executions and deprecated functions based on a dump of the archive.org Stack Overflow data set. We present an evaluation of our tool's possible impact and relevance considering pros/cons and selected research questions.
Die Sicherheit von Softwareprojekten ist ein zentraler Faktor für ihren Erfolg, der oft nicht ausreichend gewährleistet wird. Aus diesem Grund werden in der vorliegenden Arbeit neue Ansätze entwickelt, um dem Entwickler bei der Durchsetzung der Softwaresicherheit zu helfen. Dafür wird untersucht, welche neuen Ansätze für die Unterstützung bei der Vermeidung ausgewählter Fehler hilfreich sein können, sowie welche konzeptionellen Vor- und Nachteile sie aufweisen.
Zunächst wird ein Überblick über die nötigen Grundlagen für die Entwicklung der neuen Ansätze geschaffen. Elementar ist dabei das Secure Coding Prinzip, nach dem verschiedenste sicherheitsrelevante Implementierungsfehler bereits früh in dem Lebenszyklus eines Softwareprojekts, während seiner Implementierung zu vermeiden sind. Ein Mittel für diesen Zweck sind die sogenannten Secure Coding Richtlinien, die typische Fehler beschreiben und konkrete Vorgehensweisen für ihre Vermeidung und Behebung definieren, aber oft nicht eingehalten werden. Werkzeuge zur statischen Code-Analyse können hierbei Abhilfe schaffen, da sie verschiedenste Fehler automatisiert erkennen und den Entwickler über sie informieren.
Auf der Basis dieser Grundlagen werden Verbesserungsmöglichkeiten untersucht, um den Entwickler anhand von statischer Code-Analyse besser bei der Einhaltung relevanter Secure Coding Richtlinien zu unterstützen. Der Fokus dieser Arbeit liegt dabei auf der Vermeidung von Fehlern bei der Validierung von Eingaben, da diese Fehlerform besonders weit verbreitet und schwerwiegend ist.
Um eine entsprechende Hilfestellung gewährleisten zu können, werden drei Ansätze zur Unterstützung bei der Anwendung von Richtlinien für die Programmiersprache Java näher betrachtet. Diese Ansätze helfen dem Entwickler komplementär zu der Funktionalität herkömmliche Werkzeuge zur statischen Code-Analyse für das Auffinden von Fehlern auch bei der Vermeidung und Behebung dieser Fehler. Die neuen Ansätze basieren auf der Verwendung von textuellen Annotationen für die Umsetzung des Validierungsprozesses einer Eingabe, dem Einsatz einer API zur Validierung einer Eingabe und der Nutzung eines IDE-Plugins, um den nötigen Quellcode für den Validierungsprozess automatisiert zu generieren. Die nähere Betrachtung und Evaluierung dieser Ansätze zeigt, dass der annotationsbasierte Ansatz sich nicht für diesen Zweck eignet, während sowohl der API-basierte Ansatz, als auch der Ansatz für das Generieren des Quellcodes eine effektive und effiziente Ergänzung herkömmlicher Werkzeuge zur statischen Code-Analyse darstellen und dementsprechend in der weiteren Forschung aufgegriffen werden sollten.
Der dritte Teil der Schriftenreihe entwickelt die statistische Beschreibung für das Investieren in Wertpapiere weiter, welche in den ersten beiden Teilen begonnen wurde. Die dort eingeführten Statistikgrößen betreffen Gewinnfaktoren bzw. Renditen und den Investitionsgrad. Die neuen Statistikgrößen beinhalten ein Maß für Chance, Risiko, Volatilität sowie Handelskosten. Alle Statistikgrößen hängen von mehreren Investitionsparametern ab, u. a. der Haltefrist, die angibt, wie lange eine eingegangene Investition gehalten wird. Es wird wieder eine endliche Menge von Wertpapieren gehandelt und die Investition in ein Wertpapier setzt voraus, dass eine Kaufbedingung erfüllt ist. Experimentelle Ergebnisse für einen Markt mit historischen Kursdaten sowie für einen Markt mit Random Walks belegen die Stärke der erweiterten Statistik.
Diese Masterarbeit beschreibt den Entwurf und die Neuimplementierung von What the Hack, einem digitalen Serious Game zur Verbesserung von Information Security Awareness. What the Hack ist ursprünglich in einem Studentenprojekt entstanden und soll in der Unity Game Engine neu implementiert, erweitert und verbessert werden.
Nach einer Untersuchung gängiger Literatur auf Merkmale eines guten Serious Games wird der aktuelle Markt von Serious Games zum Thema Information Security Awareness untersucht. Es zeigt sich, dass es dem Markt an Spielen für eine fortgeschrittene, technische Zielgruppe mangelt. Ebenfalls ersichtlich wird, dass sich wenige Spiele spezialisieren oder anpassen lassen. Es folgt eine Bestandsaufnahme der originalen Implementierung. Mit den Ergebnissen der theoretischen Untersuchungen wird die originale Implementierung von What the Hack auf Kriterien eines guten Serious Games untersucht. Anschließend werden Anforderungen für die Neuimplementierung von What the Hack gestellt. Es folgt eine Beschreibung des Game Designs und der Implementierung wichtiger Eigenschaften des Spiels, wie die Unterstützung von Schwierigkeitsgraden und der Erweiterbarkeit.
Abschließend folgt eine Analyse der Neuimplementierung. Es zeigt sich, dass das Spiel die gestellten Anforderungen erfüllt und What the Hack sich zu einer, auf eine technische Zielgruppe fokussierte, Serious Game Plattform entwickelt hat.
Die vorliegende Bachelorarbeit befasst sich mit der Fragestellung, inwiefern Progressive Web Apps zum jetzigen Zeitpunkt in der Lage sind, native Apps zu ersetzen. Dazu wurde ein Vergleich auf Basis ausgewählter Vergleichskategorien durchgeführt. Zur Eingrenzung des Umfangs beschränkte sich der Vergleich auf native Android Apps. Die beiden App-Typen wurden im Rahmen einer Literaturrecherche und auf Basis ausgewählter Vergleichskategorien untersucht und verglichen. Zudem wurde ein Prototyp einer Progressive Web App implementiert, um die Plattformunterstützung und Funktionalität zu überprüfen. Außerdem wurde auch ein Prototyp einer nativen Android App implementiert. Dabei wurde nur die Benutzeroberfläche umgesetzt, um das Look and Feel vergleichbar zu machen. Die Untersuchung und der Vergleich haben gezeigt, dass Progressive Web Apps, anders als native Apps, mit Webtechnologien entwickelt und keine plattformspezifischen Programmiersprachen benötigt werden. Sie werden im Browser ausgeführt und sind dadurch Plattformunabhängig. Zudem wurde gezeigt, dass Progressive Web Apps über Funktionen und Eigenschaften verfügen, die bisher nur nativen Apps vorbehalten waren. Dennoch können sie noch nicht auf alle Funktionen und Komponenten eines mobilen Gerätes zugreifen. Darüber hinaus verfügen sie aber auch über Funktionen und Eigenschaften, die native Apps nicht bieten. Des Weiteren wurde mithilfe eines Prototyps die Plattformunterstützung von Progressive Web Apps überprüft. Die Überprüfung zeigte, dass die Unterstützung durch das Betriebssystem Android weit fortgeschritten und bei iOS hingegen nur sehr eingeschränkt ist. Dadurch variiert der Funktionsumfang je nach Browser und Betriebssystem. Die Untersuchung und der Vergleich der Prototypen zeigten, dass Progressive Web Apps aufgrund ihrer Eigenschaften, Funktionen und die app-ähnliche Benutzeroberfläche, ein ähnliches Look and Feel bieten können, wie native Apps. Außerdem wurde gezeigt, dass Progressive Web Apps, anders als native Apps, i. d. R. nicht über App Stores angeboten werden. Sie durchlaufen dadurch keinen Überprüfungs- und Freigabeprozess und sind nicht an die Richtlinien der App Stores gebunden. Stattdessen können sie über eine URL und über Suchmaschinen aufgerufen und aufgefunden werden. Die durchgeführte Untersuchung und der Vergleich haben gezeigt, dass Progressive Web Apps aufgrund des eingeschränkten Zugriffs auf Geräte- und Software-Funktionen sowie fehlender Browser- und Betriebssystemunterstützung, zum jetzigen Zeitpunkt native Apps noch nicht vollumfänglich ersetzen können.
Untersuchungen haben ergeben, dass bis zu 95% aller verfügbaren Android Apps mindestens einen Programmierfehler bei der Verwendung von sogenannten Krypto-APIs besitzen. Bei korrekter Anwendung dieser APIs können mit ihnen sensible System- und Benutzerdaten vor Angriffen geschützt werden. Bisher gibt es nur wenige verfügbare Tool-basierte Hilfsmittel für Programmierer, welche die Verwendungsfehler identifzieren können. Für die Programmiersprache Java konnten bislang nur sehr wenige dieser spezialisierten Hilfsmittel gefunden werden, darunter das statische Codeanalysetool CogniCrypt. Ein derartiges Werkzeug für C# konnte nicht gefunden werden.
Diese Arbeit befasst sich mit der Entwicklung eines Plugins für die IDE Visual Studio zur statischen Codeanalyse namens Sharper Crypto-API Analysis. Sein Hauptziel ist, Programmierern beim Verwenden der .NET Krypto-API mit der Programmiersprache C# zu unterstützen. Durch Beobachtungen im Entwicklungsprozess sollen einerseits die Parallelen und Unterschiede zwischen der Java- und der C#-Welt im Umgang mit Krypto-APIs erkennbar werden. Andererseits beschreibt diese Arbeit den erforderlichen Aufwand, um ein hoch spezialisiertes, statisches Codeanalysetool zu entwickeln. Die Beobachtungen zeigen, dass die Unterschiede der Java- und C#-Technologien nicht oberflächlich, sondern hauptsächlich im Detail liegen und daher
während der Implementierung des Tools besondere Aufmerksamkeit erfordern. Die Entwicklungsphase selbst zeigt sich als besonders anspruchsvoll, da mit Unsicherheitsfaktoren
bezüglich der Funktions- und Verhaltensweisen von Visual Studio umgegangen werden müssen.
Das Hauptziel von Sharper Crypto-API Analysis konnte durch die Implementation von vier Hauptfunktionsgruppen umgesetzt werden. Die wichtigste von ihnen ist das Bereitstellen von Codeanalysen, welche ausschließlich auf die Verwendung der .NET Krypto-API spezialisiert sind. Die hier entwickelten Codeanalysen betrachten besonders Fehlerquellen, die Programmierer am häufigsten begehen. Um den Programmierern nachhaltig Wissen bezüglich der Krypto-API zu vermitteln, führt diese Arbeit erweiterte Analyseberichte ein, die zusätzlich über Schwachstellen oder Angriffsszenarien informieren. Besonderheiten und Alleinstellungsmerkmale der anderen Funktionsgruppen werden in dieser Arbeit unter besonderer Berücksichtigung von Implementationshinweisen dokumentiert.
Mixed reality telepresence is becoming an increasingly popular form of interaction in social and collaborative applications. We are interested in how created virtual spaces can be archived, mapped, shared, and reused among different applications. Therefore, we propose a decentralized blockchain-based peer-to-peer model of distribution, with virtual spaces represented as blocks. We demonstrate the integration of our system in a collaborative mixed reality application and discuss the benefits and limitations of our approach.
Die im Laufe des Jahres veröffentlichten Passwörter auf der Plattform "Have I been pwnd" zeigen deutlich, dass Nutzer aufgrund von besserer Merkbarkeit schwache Passwörter wählen. Dies hat zur Folge, dass die sensiblen Daten der Nutzer nur unzureichend geschützt sind. Aus diesem Grund gewinnt das Themengebiet der IT-Sicherheit zunehmend an Bedeutung. Passwortmanager stellen für dieses Szenario eine mögliche Lösung dar.
Der im Rahmen dieser Masterthesis entwickelte Passwortmanager "Safeword" ermöglicht, sensitive Daten, die mittels adäquaten kryptografischen Verfahren geschützt werden, zentral an einer Stelle abzulegen und sukzessive unsichere Passwörter durch starke zufällige Passwörter zu ersetzen. Der Nutzer muss sich nur ein starkes Hauptkennwort merken, mit dem er sich bei dem Passwortmanager authentisiert und anschließend die gespeicherten Passwörter abrufen kann. Der Passwortmanager bietet zahlreiche Funktionen, die die Nutzung der Anwendung erleichtern, wie die simple und moderne Oberfläche, einen Passwort-Generator, der kryptografisch sichere Zufallspasswörter erstellt, oder Funktionen zur besseren Handhabung von Passwörtern, beispielsweise Label oder Notizen.
Safeword basiert auf einer modularen und erweiterbaren Architektur, die auf Code-Sharing setzt. Das Code-Sharing vereinfacht die Wartung der Anwendung und ermöglicht bei Schwachstellen eine schnellere Behebung. Die Ergebnisse aus dem Vergleich existierender Passwortmanager flossen direkt in die Entwicklung von Safeword ein, sodass aus Fehlern anderer Mitbewerber gelernt werden konnte. Um den Beitrag zur Open-Source-Welt sicherzustellen, wird Safeword unter der GPLv3-Lizenz bereitgestellt, sodass auch in Zukunft viele Nutzer von dem Passwortmanager profitieren können.
Voraussetzung für den Produktiveinsatz von Safeword ist die Entwicklung noch fehlender Funktionen und die Prüfung des Quelltexts nach aktuellen Standards der IT-Sicherheit.
Es scheint so zu sein, dass sich die beiden Ziele Gebrauchstauglichkeit und Sicherheit sehr häufig in der Umsetzung gegenseitig ausschließen: Eine sehr sichere Anwendung ist meistens eher aufwändiger zu benutzen und zu warten, eine einfach zu benutzende Anwendung vernachlässigt häufig die Sicherheit.
Als Lösung kann (wieder einmal) darauf hingewiesen werden, dass "gute" Software mehr ist als lediglich funktionierende Software. Im gesamten Entwicklungsprozess müssen vielfältige funktionale und nicht-funktionale Anforderungen, wie die der Sicherheit und Gebrauchstauglichkeit, berücksichtigt werden, um allen, auch sich zunächst widersprechenden, Anforderungen gerecht zu werden.
Die Interaktion zwischen Mensch und Computer ist ein sehr interessanter und immer wichtiger werdender Aspekt bei der Entwicklung von Software.
In diesem Buch erfahren Sie daher
- Wie Menschen und Computer kommunizieren, handeln und reagieren
- Welche Interaktionsformen es für die Kommunikation mit dem Computer gibt
- Wie Sie diese Kenntnisse nutzen können, um Programme zu entwickeln, die der Anwender erfolgreich nutzen kann
We present a security engineering process based on security problem frames and concretized security problem frames. Both kinds of frames constitute patterns for analyzing security problems and associated solution approaches. They are arranged in a pattern system that makes dependencies between them explicit. We describe step-by-step how the pattern system can be used to analyze a given security problem and how solution approaches can be found. Further, we introduce a new frame that focuses on the privacy requirement anonymity.
We give an enumeration of possible problem frames, based on domain characteristics, and comment on the usefulness of the obtained frames. In particular, we investigate problem domains and their characteristics in detail. This leads to fine-grained criteria for describing problem domains. As a result, we identify a new type of problem domain and come up with integrity conditions for developing useful problem frames. Taking a complete enumeration of possible problem frames (with at most three problem domains, of which only one is constrained) as a basis, we find 8 new problem frames, 7 of which we consider as useful in practical software development.
Preserving Software Quality Characteristics from Requirements Analysis to Architectural Design
(2006)
We present a pattern system/or security requirements engineering, consisting of security problem frames and concretized security problem frames. These are special kinds of problem frames that serve to structure, characterize, analyze, and finally solve software development problems in the area of software and system security. We equip each frame with formal preconditions and postconditions. The analysis of these conditions results in a pattern system that explicitly shows the dependencies between the different frames. Moreover, we indicate related frames, which are commonly used together with the considered frame. Hence, our approach helps security engineers to avoid omissions and to cover all security requirements that are relevant for a given problem.
Problem frames are patterns for analyzing, structuring, and characterizing software development problems. This paper presents a formal metamodel for problem frames expressed in UML class diagrams and using the formal specification notation OCL. That metamodel clarifies the nature of the different syntactical elements of problem frames, as well as the relations between them. It provides a framework for syntactical analysis and semantic validation of newly defined problem frames, and it prepares the ground for tool support for the problem frame approach.
We present a process to develop secure software with an extensive pattern-based security requirements engineering phase. It supports identifying and analyzing conflicts between different security requirements. In the design phase, we proceed by selecting security software components that achieve security requirements. The process enables software developers to systematically identify, analyze, and finally realize security requirements using security software components. We illustrate our approach by a lawyer agency software example.
We present a threat and risk-driven methodology to security requirements engineering. Our approach has a strong focus on gathering, modeling, and analyzing the environment in which a secure ICT-system to be built is located. The knowledge about the environment comprises threat and risk models. This security-relevant knowledge is used to assess the adequacy of security mechanisms, which are selected to establish security requirements.
This paper presents a conceptual framework for security engineering, with a strong focus on security requirements elicitation and analysis. This conceptual framework establishes a clear-cut vocabulary and makes explicit the interrelations between the different concepts and notions used in security engineering. Further, we apply our conceptual framework to compare and evaluate current security requirements engineering approaches, such as the Common Criteria, Secure Tropos, SREP, MSRA, as well as methods based on UML and problem frames. We review these methods and assess them according to different criteria, such as the general approach and scope of the method, its validation, and quality assurance capabilities. Finally, we discuss how these methods are related to the conceptual framework and to one another.
Interdisciplinary communities involve people and knowledge from different disciplines in addressing a common challenge. Differing perspectives, processes, methods, tools, vocabularies, and standards are problems that arise in this context. We present an approach to support bringing together disciplines based on a common body of knowledge (CBK), in which knowledge from different disciplines is collected, integrated, and structured. The novelty of our approach is twofold: first, it introduces a CBK ontology, which allows one to semantically enrich contents in order to be able to query the CBK in a more elaborate way afterwards. Second, it heavily relies on user participation in building up a CBK, making use of the Semantic MediaWiki as a platform to support collaborative writing. The CBK ontology is backed by a conceptual framework, consisting of concepts to structure the knowledge, to provide access options to it, and to build up a common terminology. To ensure a high quality of the provided contents and to sustain the community’s commitment, we further present organizational means as part of our approach. We demonstrate our work using the example of a Network of Excellence EU project, which aims at bringing together researchers and practitioners from services computing, security and software engineering.
The ISO 27000 is a well-established series of information security standards. The scope for applying these standards can be an organisation as a whole, single business processes or even an IT application or IT infrastructure. The context establishment and the asset identification are among the first steps to be performed. The quality of the results produced when performing these steps has a crucial influence on the subsequent steps such as identifying loss, vulnerabilities, possible attacks and defining countermeasures. Thus, a context analysis to gather all necessary information in the initial steps is important, but is not offered in the standard. In this paper, we focus on the scope of cloud computing systems and present a way to support the context establishment and the asset identification described in ISO 27005. A cloud system analysis pattern and different kinds of stakeholder templates serve to understand and describe a given cloud development problem, i.e. the envisaged IT systems and the relevant parts of the operational environment. We illustrate our support using an online banking cloud scenario.
The Security Twin Peaks
(2011)
In this paper, we present an approach to adopt UMLsec, which is defined for UML 1.5, to support the current UML version 2.3. The new profile UMLsec4UML2 is technically constructed as a UML profile diagram, which is equipped with a number of integrity conditions expressed using OCL. Consequently, the UMLsec4UML2-profile can be loaded in any Eclipse-based EMF- and MDT-compatible UML editing tool to develop and analyze different kinds of security models. The OCL constraints replace the static checks of the tool support for the old UMLsec defined for UML 1.5. Thus, the UMLsec4UML2-profile not only provides the whole expresiveness of UML2.3 for security modeling, it also brings considerably more freedom in selecting a basic UML editing tool, and it integrates modeling and analyzing security models. Since UML2.3 comprises new diagram types, as well as new model elements and new semantics of diagram types already contained in UML1.5, we consider a number of these changes in detail. More specifically, we consider composite structure and sequence diagrams with respect to modeling security properties according to the original version of UMLsec. The goal is to use UMLsec4UML2 to specify architectural security patterns.
In this paper, the author aim to present a threat and risk-driven methodology to security requirements engineering. The chosen approach has a strong focus on gathering, modeling, and analyzing the environment in which a secure ICT-system to be built is located. The knowledge about the environment comprises threat and risk models. As presented in the paper, this security-relevant knowledge is used to assess the adequacy of security mechanisms, which are then selected to establish security requirements.
Developing security-critical systems is difficult, and there are many well-known examples of vulnerabilities exploited in practice. In fact, there has recently been a lot of work on methods, techniques, and tools to improve this situation already at the system specification and design. However, security-critical systems are increasingly long-living and undergo evolution throughout their lifetime. Therefore, a secure software development approach that supports maintaining the needed levels of security even through later software evolution is highly desirable. In this chapter, we recall the UMLsec approach to model-based security and discuss on tools and techniques to model and verify evolution of UMLsec models.
The authors present a security engineering process based on security problem frames and concretized security problem frames. Both kinds of frames constitute patterns for analyzing security problems and associated solution approaches. They are arranged in a pattern system that makes dependencies between them explicit. The authors describe step-by-step how the pattern system can be used to analyze a given security problem and how solution approaches can be found. Afterwards, the security problems and the solution approaches are formally modeled in detail. The formal models serve to prove that the solution approaches are correct solutions to the security problems. Furthermore, the formal models of the solution approaches constitute a formal specification of the software to be developed. Then, the specification is implemented by generic security components and generic security architectures, which constitute architectural patterns. Finally, the generic security components and the generic security architecture that composes them are refined and the result is a secure software product built from existing and/or tailor-made security components.
Considering legal aspects during software development is a challenging problem, due to the cross-disciplinary expertise required. The problem is even more complex for cloud computing systems, because of the international distribution, huge amounts of processed data, and a large number of stakeholders that own or process the data. Approaches exist to deal with parts of the problem, but they are isolated from each other. We present an integrated method for elicitation of legal requirements. A cloud computing online banking scenario illustrates the application of our methods. The running example deals with the problem of storing personal information in the cloud and based upon the BDSG (German Federal Data Protection Act). We describe the structure of the online banking cloud system using an existing pattern-based approach. The elicited information is further refined and processed into functional requirements for software development. Moreover, our method covers the analysis of security-relevant concepts such as assets and attackers particularly with regard to laws. The requirements artifacts then serve as inputs for existing patterns for the identification of laws relevant for the online banking cloud system. Finally, our method helps to systematically derive functional as well as security requirements that realize the previously identified laws.
The discipline of engineering secure software and services brings together researchers and practitioners from software, services, and security engineering. This interdisciplinary community is fairly new, it is still not well integrated and is therefore confronted with differing perspectives, processes, methods, tools, vocabularies, and standards. We present a Common Body of Knowledge (CBK) to overcome the aforementioned problems. We capture use cases from research and practice to derive requirements for the CBK. Our CBK collects, integrates, and structures knowledge from the different disciplines based on an ontology that allows one to semantically enrich content to be able to query the CBK. The CBK heavily relies on user participation, making use of the Semantic MediaWiki as a platform to support collaborative writing. The ontology is complemented by a conceptual framework, consisting of concepts to structure the knowledge and to provide access to it, and a means to build a common terminology. We also present organizational factors covering dissemination and quality assurance.
An ISO 27001 compliant information security management system is difficult to create, due to the the limited support for system development and documentation provided in the standard. We present a structured analysis of the documentation and development requirements in the ISO 27001 standard. Moreover, we investigate to what extent existing security requirements engineering approaches fulfill these requirements. We developed relations between these approaches and the ISO 27001 standard using a conceptual framework originally developed for comparing security requirements engineering methods. The relations include comparisons of important terms, techniques, and documentation artifacts. In addition, we show practical applications of our results.
Marktdaten
(2018)
Die in der Schriftenreihe Trading verwendeten Forschungsdaten beinhalten historische Kursdaten, geliefert von Lenz+Partner AG (Deutschland), für eine Auswahl an Aktien. Die Datei „FEBRDUSA_1“ zeigt diese Auswahl in Form der deutschen Wertpapierkennnummer (Spalte „Titel“), des Handelszeitraums (Spalten „Beginn“ und „Ende“) und des Aktiennamens. Kursdaten sind in dieser Datei nicht enthalten, sondern liegen in einer umfangreichen Datenbank vor.
Die Marktdaten umfassen 867 Aktien und sind das Ergebnis eines im Jahr 2015 durchgeführten Auswahlprozesses mit dem Ziel, Datenqualität und Handelbarkeit der Aktien zu verbessern. Es wurden folgende Bedingungen gefordert:
- Die Aktien werden an der Frankfurter Börse gehandelt.
- Sie sind in einem der deutschen Aktienindizes DAX, MDAX, TECDAX, SDAX, HDAX, CDAX, Technology All Share, Prime All Share und GEX oder in den amerikanischen Aktienindizes S&P 500 oder Nasdaq 100 gelistet.
- Die Kursdaten der in Frankfurt gehandelten Aktien enden nicht vor dem Jahr 2014.
- Der (unbereinigte) Eröffnungskurs Ende 2013 beträgt mindestens 1 EUR. Diese Bedingung soll dazu beitragen, das Handeln von „penny stocks“ zu verhindern.
Die vorliegende Marktdefinition resultierte in 867 Aktien, die frühestens am 11. Dezember 2014 enden, sodass eine Auswertung der Marktdaten mit vollständigen Kurswerten bis zu diesem Zeitpunkt möglich ist. Der Markt ist groß genug, um interessante Kaufbedingungen mit einer ausreichend großen Anzahl an Kaufkandidaten zu untersuchen.
In der vorliegenden Bachelorarbeit geht es um das menschliche Verhalten bei der Passworterstellung. Hierbei wird die Möglichkeit untersucht dieses menschliche Verhalten über die Software hashcat nachzubilden, um so Passwörter effzienter anzugreifen. Durch die Konzeption und den Test von Passwortangriffsszenarien, deren Fokus auf dem Faktor Mensch liegt, wird versucht aufzuzeigen, dass selbst sichere Passwortverfahren, durch das individuelle Verhalten von Menschen an Sicherheit verlieren können. Zudem werden die Tests der Szenarien Schwächen der Software hashcat aufzeigen, die im späteren Verlauf der Arbeit als Grundlage für die Entwicklung einer selbstprogrammierten Erweiterung von hashcat dienen.
Der Bereich der Informationssicherheit stellt große und insbesondere kleine und mittlere Unternehmen (KMU) vor erhebliche Herausforderungen. Zunehmende Angriffe auf IT-Systeme und Infrastrukturen haben die Informationssicherheit zum kritischen Erfolgsfaktor gemacht. Neben klassischen Zielen und Bereichen der Informationssicherheit hat vor allem die Security Awareness - das Sicherheitsbewusstsein aller Mitarbeiter eines Unternehmens - an Bedeutung gewonnen. Security Awareness bezieht sich auf jegliches Wissen und Handeln der Mitarbeiter eines Unternehmens und ist daher ein bedeutsamer Baustein zur ganzheitlichen Gewährleistung von Informationssicherheit. Die Motivation zur Entwicklung und Einführung von Informationssicherheit und insbesondere Security Awareness geht in großen Unternehmen vor allem von externen Faktoren, so z. B. der Regulierung von Branchen, aus und ist mittels globaler Standards, Normen und Frameworks implementiert. KMU sind grundsätzlich keinen geringeren Risiken als große Unternehmen ausgesetzt, verfügen jedoch nur selten über vergleichbare Schutzmaßnahmen hinsichtlich Informationssicherheit. Im Rahmen des Projekts wurden externe Anforderungen für große Unternehmen analysiert und hinsichtlich der Eignung als Grundlage für KMU bewertet. Das Projekt thematisiert weiterhin die Messbarkeit von Security Awareness sowie die in großen Unternehmen eingesetzten Maßnahmen zur Gewährleistung von Security Awareness besonders hinsichtlich ihrer Eignung für KMU.
Der zweite Teil der Schriftenreihe entwickelt die in Teil 1 begonnenen Überlegungen über das Investieren in Wertpapiere eines Marktes weiter. Es wendet sich an Fachleute der Finanzmathematik und besitzt Relevanz für Fondsmanager und Privatanleger. Alle Überlegungen basieren auf Nebenbedingungen zur Festlegung des Umfangs an Neuinvestitionen, welche von Investitionsparametern abhängen. Ein weiterer Investitionsparameter ist die Haltefrist, die angibt, wie lange eine eingegangene Investition "gehalten wird", bevor sie beendet wird. Die im zweiten Teil weiter entwickelte Theorie lässt sich wie folgt kennzeichnen: - Sie ist frei von Annahmen über den Kursverlauf der Wertpapiere. Es wird daher nicht versucht, ein realistisches Modell für Kursbewegungen aufzustellen. - Es wird eine endliche Menge von Wertpapieren gehandelt. - Die Investition in ein Wertpapier setzt voraus, dass eine Kaufbedingung erfüllt ist. Nach Ablauf der Haltefrist wird die Investition beendet. - Der Handelsverlauf wird durch elementare rekursive Gleichungen beschrieben, welche durch zwei exogene Größen "angeregt" werden: Die Anzahl der Wertpapiere an jedem Handelstag, für die die Kaufbedingung erfüllt ist und der Gewinn, der sich aus dem Verkauf der Wertpapiere nach Ablauf der Haltefrist ergibt. Die Auswertung dieser Gleichungen für den gesamten Handelszeitraum liefert den Handelserfolg am Ende des Handelns. - Das Investieren in Wertpapiere wird idealisiert, um den Handelserfolg in Abhängigkeit von den exogenen Größen und Investitionsparametern darstellen zu können, ohne die rekursiven Gleichungen auswerten zu müssen. Dies erfolgt durch das sogenannte ideale Handelssystem. Der Handelserfolg des idealen Handelssystems erweitert die statistische Beschreibung aus Teil 1 auf Haltefristen größer als ein Tag. Da durch die Idealisierung die Kausalität verletzt wird, kann das ideale Handelssystem für den Wertpapierhandel nicht implementiert werden. Es ist jedoch simulierbar und quantitativ leichter zugänglich. Die Auswirkung der Verletzung der Kausalität auf den Handelsverlauf und den Handelserfolg wird experimentell und theoretisch in Abhängigkeit von Investitionsparametern detailliert untersucht.
While developing for multiple platforms at once seems like a convenient solution, there are several challenges arising when trying to abstract the entire mobile development. This paper is meant to evaluate current cross-platform development for mobile applications. The background for its necessity, its conceptual approach and the problems to face when developing cross-platform were determined and explained in detail. Afterwards, certain solutions were evaluated against the former insights. Based on the results, an informed discussion and conclusion was performed. The mobile environment consist of only two big players by now, Android and iOS. These operating systems differ in architecture, design and consequently in the way applications are developed for each of them. Therefore, high demands are made towards cross-platform solutions. Tools which allow for the creation of applications for multiple platforms at once have to match native applications in regard to user experience and performance. At the same time they need to be able to optimize developments with the goal of being cost efficient. Apache Cordova, Xamarin and NativeScript were selected for evaluation in regard to their ability to meet these requirements. Cordova acts as the comparison group of cross-platform tools. It is the big player in the field and there are reasons for this. However, aspiring solutions with higher nativity and ambitious approaches are emerging. Xamarin and NativeScript deliver top quality results while offering loosely coupled developments. Therefore it is possible to develop high quality applications and still benefit from the advantages of platform-independent solutions. As a consequence mobile development is about to change in the foreseeable future. More sophisticated approaches may lead to a higher number of developments done cross-platform, and rightfully so.
Investing as Random Trial
(2017)
We introduce an investment algorithm for a market of individual securities. The investment algorithm is derived from constraints depending on investment parameters in order to limit the risk and to take into account an individual investor. One constraint is devoted to trading costs. Purchased securities are selected randomly among securities that meet the buy condition, making trading a random trial. Simulations with historical price data are demonstrated for a simple example: The buy condition is evaluated on the basis of the price relationship for two subsequent trading days and the sales condition is defined by holding securities only for one day. A trading expert evaluates the expected return for the investment algorithm with respect to the random selection. Thus, the expert informs precisely on how many market players perform using the same investment algorithm. Its findings are for a parametrized set of buy conditions simultaneously, which makes a trading expert a valuable tool for theorists as well as for practitioners. In our example, the trading expert demonstrated clearly a significant mean reversion effect for a horizon of one day.
Der Autor untersucht im Rahmen dieser Diplomarbeit die Sicherheit des Zugangs zu Netzwerkdiensten in der Fachhochschule Düsseldorf. Dabei werden sicherheitsrelevante Fragen wie Klartext Kommunikation bei der Authentifizierung und beim Transport der Daten über Netzwerkdienste beschrieben und Alternativen hierzu aufgezeigt. Im Rahmen der Diplomarbeit wurde die Teilnahme der Fachhochschule Düsseldorf am Pilotprojekt DFN-PKI-2 für Public Key Infrastrukturen des Deutschen Forschungsnetzes initiiert und organisiert. Weiterhin stellt der Autor die PKI-Technologie und deren praktische Einsatz anhand eines VPN Dienstes zur Sicherung der bestehenden Netzwerkdienste vor.