Hinweis: Die aktuelle OOP-Konferenz finden Sie hier!
SIGS DATACOM Fachinformationen für IT-Professionals

SOFTWARE MEETS BUSINESS:
Die Konferenz für Software-Architektur
21. - 25. Januar 2019, München

Sessionsdetails

Vortrag: Mi 9.1
Datum: Mi, 23.01.2019
Uhrzeit: 09:00 - 10:30
cart

Zukunftssichere Software: Evolutionsbasiertes Sicherheitstesten für Datenanalyse-Software

Uhrzeit: 09:00 - 09:45
Vortrag: Mi 9.1 1)

 

Thema ist ein Ansatz für Sicherheitstesten für Softwareanwendungen mittels der werkzeuggestützten Sicherheitsanalyse von Dokumenten und Artefakten, die in der Entwicklung der Software erstellt werden (wie z.B. UML-Modelle, Programmquellcode und Konfigurationsdaten). Schwerpunkt des Vortrags ist dabei ein Ansatz, mit dem nach Änderung der Software effizient überprüft werden kann, ob die Änderungen die Sicherheitsanforderungen verletzen. Der Ansatz wird anhand der Anwendung auf den Industrial Data Space demonstriert.

Zielpublikum: QS-Beauftragte, Projektleiter, Architekten, Entwickler, Manager, Entscheider
Voraussetzungen: Grundkonzepte zu QS-Ansätzen
Schwierigkeitsgrad: Anfänger

Extended Abstract
Der Vortrag präsentiert die Herausforderungen und zugehörige Lösungsansätze für die Qualitätssicherung und Sicherheitszertifizierung von sicherheitskritischer Software im Kontext des "Industrial Data Space", einer unternehmensübergreifende Initiative unter Beteiligung der Fraunhofer-Gesellschaft mit dem Ziel der Entwicklung einer Plattform als Enabler für Datenorientierte Geschäftsmodelle und Big Data as a Service, um die digitale Souveränität über Daten und Dienste für Wirtschaft und Gesellschaft zu ermöglichen. Die Initiative wird getragen von der Anwendervereinigung IDS e.V. Als beispielhafte Use-Case-Szenarien werden Erfahrungen von Anwendungen der Sicherheitszertifizierung in Bereichen wie Logistik & Industrie 4.0 präsentiert.
Kontext und Hintergrund:
Die Digitalisierung ist die zentrale gesellschaftliche, betriebswirtschaftliche und technologische Entwicklung. Vor dem Hintergrund der Herausforderungen der Digitalen Transformation hat sich Ende 2014 die Initiative „Industrial Data Space“ zusammengefunden, um die digitale Souveränität über Daten und Dienste für Wirtschaft und Gesellschaft zu erhalten. Die Initiative wird getragen von Unternehmen in Partnerschaft sowie den zuständigen Bundesministerien, namentlich dem Bundesministerium für Bildung und Forschung (BMBF), dem Bundesministerium für Wirtschaft und Energie (BMWi), dem Bundesministerium des Innern (BMI) und dem Bundesministerium für Verkehr und digitale Infrastruktur (BMVI).
Eine Softwarekomponente, welche in der Cloud oder dem Industrial Data Space eingesetzt wird, muss entsprechend der Richtlinien der jeweiligen Verbände sowie nach gesetzlich festgelegten Standards zertifiziert werden. Dies ist ein aufwendiger und fehleranfälliger Prozess, der für jede Änderung an der Softwarekomponente erneut durchgeführt werden muss.
Unser Sicherheitsmodellierungs- und Analysewerkzeug CARiSMA bietet Ansätze, die in einer teilautomatisierten und effizienten Erstzertifizierung angewendet werden können und auch bereits exemplarisch im Rahmen des Cloud-Computings angewendet wurden. Basierend auf diesen Ansätzen werden in dieser Arbeit die Anforderungen und Abläufe einer automatisierten Zertifizierung und Rezertifizierung von Software anhand des Beispiels des Industrial Data Space erörtert.
Zunächst wird in diesem Vortrag der Industrial Data Space vorgestellt und dessen Eigenschaften werden charakterisiert. Anschließend werden die Anforderungen an eine Zertifizierung erörtert. Auf diese Erörterung folgend wird gezeigt, welche dieser Anforderungen bereits von bestehenden Technologien von CARiSMA abgedeckt werden, und nachfolgend werden ein Konzept für eine Erstzertifizierung sowie später eine Erweiterung um eine Rezertifizierung vorgestellt. Im letzten Abschnitt werden die Vorteile, Herausforderungen sowie unser Ansatz für eine automatisierte (Re-)Zertifizierung zusammengefasst.
Bei unternehmensübergreifenden Geschäftsprozessen im Industrial Data Space und dem damit verbundenen Austausch von Daten sind verschiedene Compliance-Auflagen zu berücksichtigen. Es muss geprüft werden, welche Daten und in welcher Form das Unternehmen verlassen dürfen sowie zu welchen Zwecken diese Daten verwendet werden dürfen. Dürfen die jeweiligen Daten das Unternehmen verlassen, so kann z.B. abhängig vom Verwendungszweck eine Anonymisierung notwendig sein. Sämtliche in diesem Prozess beteiligten Komponenten von der Entscheidungsfindung, über die Anonymisierung und Übertragung bis zur Datenverarbeitung müssen per Zertifikat belegen, dass diese die jeweils gültigen Richtlinien und Normen einhalten.
Allgemein werden solche Zertifizierungen in der Industrie nach manueller Analyse unter Zuhilfenahme von normalsprachlichen Leitfäden oder Prüfkatalogen erstellt. Speziell zur Zertifizierung von Software-as-a-Service-Lösungen entwickelt der Verband der Cloud-Services-Industrie in Deutschland (EuroCloud Deutschland eco) ein Gütesiegel und einen zugehörigen Prüfkatalog. Vergleichbare Zertifizierungen werden vom Industrial Data Space e.V. für einen Datenaustausch zwischen Unternehmen angestrebt und zurzeit entwickelt.
Relevante allgemeinere Sicherheitsstandards für Cloud-Computing, den Industrial Data Space und andere IT-Anwendungen sind das „Statement on Auditing Standards (SAS) Nummer 70 Typ II“ und das ISO-Zertifikat 27001. Medizinische Produkte müssen z.B. neben diesen Standards auch nach der EU-Richtlinie 93/42/EWG bzw. deren nationalen Umsetzungen zertifiziert werden.
Aus diesen Vorbildern und gesetzlichen Standards ergibt sich die Notwendigkeit einer Sicherheitszertifizierung der verwendeten Komponenten als wichtiger Bestandteil des Industrial Data Space, um eine sichere Kommunikation sowie Datenaustausch zu ermöglichen.
Für solch eine Sicherheitszertifizierung im Industrial Data Space wurden von der Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. sechs Hauptaspekte identifiziert:
- Verbindungssicherheit gegen Manipulation und Abhören der übertragenen Daten.
- Identitätsnachweis zwischen den jeweiligen Kommunikationspartnern.
- Datennutzungskontrolle zur Einhaltung von Standards zur sicheren Speicherung und Verarbeitung sowie Richtlinien zur Nutzungsdauer und Weitergabe von bereitgestellten Daten.
- Sichere Ausführungsumgebung zur Einhaltung von Sicherheitslevels auf unterschiedlichen Plattformen.
- Remote Attestation der Einhaltung von Löschungsfristen und der Feststellung eines vertrauenswürdigen Zustandes des Gegenübers.
- Applikationsschicht-Virtualisierung für die Auslagerung von Teilsystemen in die Cloud.
Zur Zertifizierung einer Komponente unter Berücksichtigung dieser Aspekte müssen vielfältige Eigenschaften berücksichtigt werden. Wird solch eine Zertifizierung ohne eine Werkzeugunterstützung durchgeführt, ergibt sich daraus ein langwieriger und fehleranfälliger Prozess. Der Vortrag stellt daher einen werkzeuggestützten Ansatz vor, der hier unterstützt.

 

Injection-Angriffe: Szenarien, Analyseansätze, Gegenmaßnahmen und Erfahrungen aus der Praxis

Uhrzeit: 09:45 - 10:30
Vortrag: Mi 9.1 2)

 

Bei Injection-Angriffen kann ein Angreifer beeinflussen, welche Funktionen auf dem angegriffenen System ausgeführt werden. Dadurch können potenziell Daten verändert, gelöscht oder geheime Informationen auslesen werden. Injection-Angriffe werden durch unzureichende Überprüfung von Nutzereingaben ermöglicht. Es gibt unterschiedliche Analyseansätze, um sie aufzudecken.
Im Vortrag stelle ich verschiedene Analyseansätze vor. Um ihre Vor- und Nachteile zu beleuchten, gehe ich sowohl auf die Grundlagen als auch auf Erfahrungen aus der Praxis ein.

Zielpublikum: Architekten, Entwickler, Projektleiter, Manager, Entscheider
Voraussetzungen: Fortgeschrittene Kenntnisse in einer Programmiersprache, Erfahrung in Software-Entwicklung
Schwierigkeitsgrad: Fortgeschritten

Extended Abstract
Verschiedene Sicherheitsprobleme wie SQL injection, Malicious Code Execution, Database modification und Directory traversal lassen sich als „Injection-Angriffe" zusammenfassen. Es werden jeweils Informationen vom Angreifer von unsicheren Systemfunktionen bearbeitet. Eine unvalidierte Nutzereingabe trifft z.B. auf einen Datenbank- oder Systemaufruf.
Existierende Analysen, die diese Sicherheitslücken aufdecken, sind oft sehr langsam, auf lokalen Kontext beschränkt oder verwirren mit vielen False-Positives.
Wir adressieren diese Probleme mit einer inkrementellen und inter-prozeduralen (auch Datei-übergreifenden) Datenflussanalyse.
Zuhörer des Vortrags lernen Möglichkeiten und Grenzen dieser Analysen. Außerdem lernen sie, was sie tun können, um Code, der durch Injection-Attacken angreifbar ist, konstruktiv zu vermeiden.
Dr. Alexander von Rhein hat die Datenflussanalysen implementiert, bei Kunden auf großen Systemen getestet und Feedback eingearbeitet.
Er hat einen ähnlichen Vortrag bereits im Rahmen des CAST Workshops (siehe Link) gehalten.
Außerdem hat er einen Blog Post über dieses Thema und einige Papers im Bereich statische Analysen veröffentlicht.
Links:
Cast Workshop: www.cast-forum.de/workshops/infos/244
Blog Post: www.cqse.eu/en/blog/incremental-global-security-analysis/
Paper:
Florian Sattler, Alexander von Rhein, Thorsten Berger, Niklas Schalck Johansson, Mikael Mark Hardø, and Sven Apel. Lifting Inter-App Data-Flow Analysis to Large App Sets. Automated Software Engineering, 25(2):315–346, May 2018.
Alexander von Rhein. Analysis Strategies for Configurable Systems. PhD thesis, Universität Passau, 2016.
Jörg Liebig, Alexander von Rhein, Christian Kästner, Sven Apel, Jens Dörre, and Christian Lengauer. Scalable Analysis of Variable Software. In Proceedings of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on the Foundations of Software Engineering (ESEC/FSE), pages 81–91. ACM Press, August 2013. Acceptance rate: 20% (51 / 251).
Sven Apel, Alexander von Rhein, Philipp Wendler, Armin Größlinger, and Dirk Beyer. Strategies for Product-Line Verification: Case Studies and Experiments. In Proceedings of the IEEE/ACM International Conference on Software Engineering (ICSE), pages 482–491. IEEE Computer Society, May 2013. Acceptance rate: 19% (85 / 461).