Kontakt aufnehmen

Schulungsübersicht

Einführung in die sichere Entwicklung mit C und C++

  • Grundprinzipien der sicheren Softwareentwicklung verstehen
  • Häufige Sicherheitsrisiken in C- und C++-Anwendungen
  • Der Zusammenhang zwischen Programmierfehlern und Sicherheitslücken
  • Sichere Programmierstandards und bewährte Verfahren

Häufige Schwachstellen in der C- und C++-Programmierung

  • Identifizierung typischer Programmierfehler, die Sicherheitsrisiken mit sich bringen
  • Sicherheitsprobleme im Umgang mit Speicher in C und C++
  • Schwachstellenmuster und deren Auswirkung
  • Analyse unsicherer Codebeispiele

Grundlagen des sicheren Programmierens

  • Anwendung von Defense-in-Depth-Techniken
  • Robusten und wartbaren Code schreiben
  • Schwachstellenflächen minimieren
  • Sichere Designprinzipien für C- und C++-Anwendungen

Eingabeprüfung und Datenverarbeitung

  • Die Bedeutung der Eingabeprüfung verstehen
  • Bösartige Ausnutzung von Eingaben verhindern
  • Techniken zur Datenbereinigung (Sanitization)
  • Sicherer Umgang mit Benutzerdaten und externen Daten

Fehlerbehandlung und Exception-Management

  • Risiken im Zusammenhang mit unsachgemäßer Fehlerbehandlung
  • Entwicklung sicherer Mechanismen zur Fehler- und Exception-Behandlung
  • Vermeidung von Informationsleckagen durch Fehlermeldungen
  • Erstellung robuster Anwendungen

Speichersicherheit und Schutz vor Pufferüberläufen

  • Verständnis von Speicher-Management-Schwachstellen
  • Stack-basierte Pufferüberläufe
  • Heap-basierte Pufferüberläufe
  • Erkennung und Prävention von Speicherbeschädigungen
  • Sichere Techniken zum Umgang mit Speicher

Stack-Schutz und Sicherheitstechnologien zur Laufzeit

  • Verständnis von Stack-Overflow-Schwachstellen
  • Kompilierbasierte Schutzmechanismen
  • Stack Canaries und weitere Schutzmechanismen
  • Address Space Layout Randomization (ASLR)
  • Sicherheitsmerkmale moderner Betriebssysteme

Fortgeschrittene Sicherheitsaspekte in C++

  • Sicheres Management des Objekt-Lebenszyklus
  • Vorbeugung gegen Use-after-Free-Schwachstellen
  • Sicherer Umgang mit Pointern und Referenzen
  • Vermeidung von Typanomalien (Type Confusion)
  • Sicherer Einsatz von C++-Sprachmerkmalen

Tools und Techniken für sicheres Programmieren

  • Einsatz statischer Analyse-Tools zur Identifizierung von Schwachstellen
  • Code-Review-Techniken zur Sicherheitsbewertung
  • Automatisierte Ansätze der Sicherheitstests
  • Integration von Sicherheitschecks in die Entwicklungsworkflows

Sichere Programmierstandards und bewährte Verfahren

  • Überprüfung industrieüblicher Richtlinien für sicheres Programmieren
  • Anwendung defensiver Programmierungstechniken
  • Einfügung von Sicherheit in den Software-Entwicklungslebenszyklus (SDLC)
  • Wartung sicherer und zuverlässiger C/C++-Anwendungen

Praktischer Workshop: Sicheres Programmieren

  • Analyse anfälliger C/C++-Codebeispiele
  • Anwendung von Sicherheitskorrekturen und Verbesserungen
  • Testen des Codes auf gängige Schwachstellen
  • Kurszusammenfassung und Empfehlungen für sichere Entwicklungsprozesse

Voraussetzungen

Grundlagen von C/C++

 21 Stunden

Teilnehmerzahl


Preis je Teilnehmer (exkl. USt)

Erfahrungsberichte (7)

Kommende Kurse

Verwandte Kategorien