Sichere Programmierung

Modulnummer
II2011
Modulverantwortlicher
Klaus Wüst
Dozent
Christian Wenzel-Benner
Kurzbeschreibung

Dieser Kurs führt in die Fallstricke der Programmierung ein und zeigt Wege auf, robusten und sicheren Code zu schreiben

Qualifikations- und Lernziele

Die Studierenden kennen typische Fehlerursachen und Sicherheitsprobleme von Programmen und wissen, wie diese vermieden werden können. Die Bedeutung der ISO Standards wurde am Beispiel einer wichtigen Programmiersprache verstanden, ebenso die subtilen und drastischen Probleme in die Software laufen kann, welche den Definitionsbereich der Standards verlässt.

Die Absolventen arbeiten im Rahmen des seminaristischen Unterrichts im Team und erarbeiten gemeinsam eine Fragestellung, deren Ergebnis vor der Seminaröffentlichkeit vorgestellt und verteidigt wird.

Lerninhalte
  • Einführung: Schäden durch Softwarefehler, gehackte Computer, Fahrzeuge, Industrieanlagen und der Unterschied zwischen Fehlern und bösartiger Manipulation
  • Philosophie effizienter Compilersprachen
  • Typische Probleme in Compilersprachen
  • Erfolgreiche Angriffe der Vergangenheit
  • Vermeidung typischer Probleme mit Hilfe von Coding Standards
  • Werkzeugunterstüzung
Moduldauer (Semester)
1
Unterrichtssprache
Deutsch
Gesamtaufwand
3 CrP; 180 Stunden, davon etwa 60 Stunden Präsenzzeit.
Semesterwochenstunden
2
Lernformen

Seminaristischer Unterricht 2 SWS

Geprüfte Leistung

Prüfungsvorleistung: keine

Prüfungsleistung: Klausur

Bewertungsstandard

Bewertung der Prüfungsleistung nach § 9 der Prüfungsordnung (Teil I)

Häufigkeit des Angebots
Einmal im Jahr
Literatur
  • Steve Maguire: Writing Solid Code
  • Robert C. Seacord: Secure Coding in C and C++
  • ISO/IEC 9899:1999: Programming languages – C
  • Robert C. Seacord: The CERT C Coding Standard
  • Fred Long, Dhruv Mohindra, Robert C. Seacord, Dean F. Sutherland,
  • David Svoboda: The CERT Oracle Secure Coding Standard for Java
Vorausgesetzte Module