Software Sicherheit

Ziele

  • sind vertraut mit Vorgehensmodellen zur Entwicklung sicherer Software
  • können Methoden und Werkzeuge zur Bewertung von Software Sicherheit anwenden
  • können Softwareentwürfe bzgl. Sicherheit bewerten
  • sind mit best practices im Bereich der Software Sicherheit vertraut
  • können Sicherheitsanforderungen an Software ermitteln und bewerten

Inhalte

  • Vorgehensmodelle für die Entwicklung sicherer Software (SSDLC)
  • Sichtweisen von Kunden und Angreifern (use case, misuse case)
  • Software Sicherheit und Softwaredesign
  • Modellierung, Konstruktion und Analyse sicherer IT-Systeme (Security Engineering)
  • Sicheres Programmieren
  • Sicherheitszertifizierungen und deren Grenzen
  • Reifegradmodelle (OpenSAMM, BSI-MM) und Metriken
  • Methoden und Werkzeuge zur Bewertung von Software Sicherheit
  • Sicherheitstests
  • Sichere Auslieferung und Einrichtung von Software (secure deployment)
  • Fallstudien

Literatur:

  • Building Secure Software; Viega, McGraw, Addison Wesley; 2002
  • Applied Cryptography; Bruce Schneier; 1996
  • Security Engineering; Ross Anderson; 2008
  • Basiswissen Sichere Software; Sachar Paulus; dPunkt 2011
  • Secure Coding Principles and Practices: Graff, van Wyk; 2003

Ein HMI-System (Human Machine Interface, Mensch-Maschine-Schnittstelle) besteht aus Hardware (oft Embedded Hardware mit Display und Touch-Screen) und individueller Software zur Visualisierung, Bedienung und Steuerung einer Maschine. HMI-Systeme finden beispielsweise Anwendung in der Industrieautomation, in Infotainmentsystemen (Auto, Flugzeug, TV) oder in Bediengeräten für das Internet der Dinge.

Die Vorlesung behandelt die Softwareentwicklung für HMI-Systeme, Anforderungen, Werkzeuge und die Implementierung von UIs mit Qt/QML.