Secure Development Training für Entwickler

Online-Training mit eigener LAB-Umgebung für praktische Übungen.

Dieses Video wird beim Abspielen von YouTube geladen. Mit dem Abspielen akzeptieren Sie die Datenschutzerklärungen von HVS Consulting / IS-FOX und YouTube.

Kundenfeedback

Grafische Darstellung einer Bewertung
Dieses Video wird beim Abspielen von YouTube geladen. Mit dem Abspielen akzeptieren Sie die Datenschutzerklärungen von HVS Consulting / IS-FOX und YouTube.

Screenshot aus dem LAB zum Thema Threat Modelling
Screenshot einer Übung
Screenshot aus dem LAB zum Thema SQL
Auszug aus dem LAB
Screenshot aus dem LAB zum Thema XSS
Screenshot einer Testfrage aus dem LAB

Kapitelübersicht: Secure Development Training für Entwickler

Die Inhalte sind von Secure-Development-Experten erstellt und in Präsenzschulungen jahrelang erfolgreich umgesetzt und optimiert worden. Alle Szenarien basieren auf typischen OWASP-Top10-Schwachstellen in Applikationen und haben somit höchste Relevanz.

Intro & Let’s hack

Einführung & Grundlagen: Wie läuft das Secure Development Training ab. Warum ist Sicherheit im gesamten Software-Development-Lifecycle so wichtig.

Dazu gleich etwas Hacking zum warm werden:
LAB-Übung: zu schlechtem Exception-Handling und Password-Cracking
Die Übung zeigt, welche Auswirkungen selbst unscheinbare Sicherheitslücken haben können.

Intro & Let’s hack


< >

Grundlagen

Klärung der wichtigsten Secure Development Grundbegriffe:

  • Die Schutzziele in der CIA-Triade: Confidentiality (Vertraulichkeit), Integrity (Integrität) und Availability (Verfügbarkeit)
  • Die Security-Prinzipien im Secure Development, um diese CIA-Schutzziele zu erreichen: Traue keinem Input, halte Security einfach, minimiere die Angriffsfläche, setze „Defense in Depth“ um, benutze minimale Rechte, sei „Secure by Default“ und löse Security-Probleme immer gründlich

Grundlagen


< >

Implementierungsphase

  • Authentication: Welche Fehler werden bei der Authentifizierung oft gemacht und mit welchen einfachen Secure Development Mitteln können Entwickler hier die Sicherheit deutlich erhöhen
  • Authorization (Zugriffskontrolle): Was ist der Unterschied zu Authentifizierung
    LAB-Übung: Zugriff auf Daten über Direct-Object-Reference. Wie können Entwickler solche Schwachstellen verhindern und wie sieht eine angemessene Zugriffskontrolle aus
  • Session-Management: Welche Bedrohungen existieren rund um das Session-Management
    LAB-Übung: Übernahme einer Session durch Session-Fixation. Wie kann das Session-Management sicher gestaltet werden
  • Input-Validation, Output-Sanitization und Injection: Was ist eine Injection und welche Formen gibt es
    LAB-Übung: Datenmanipulation und Löschung mittels SQL-Injection. Mit welchen Secure Development Mitteln lassen sich Injections verhindern
  • Cross-Site-Scripting: Welche Arten von Cross-Site-Scripting gibt es
    LAB-Übung: zu persistentem Cross-Site-Scripting. Welche Abwehrmaßnahmen sind wirksam.
  • Kryptographie & Secrets-Management: Welche Arten von Secrets gibt es und welche Formen nehmen sie an (“at rest”, „in transit“ und „in memory“) 
    LAB-Übung: Systemzugriff über File-Inclusion. Was ist der Unterschied zwischen Verschlüsselung und Enkodierung
    LAB-Übung: Dekodierung eines Passwortes in einer Config-Datei. Tipps zum Umgang mit Secrets.
  • Remote-Code-Execution:
    LAB-Übung: Webshell upload. Warum haben RCE-Schwachstellen derart katastrophale Auswirkungen. Wie kann der “Defence in Depth“-Ansatz im Secure Development Lifecycle solche Auswirkungen verringern
  • Exceptions & Error-Handling: Wie nutzen Hacker Fehlermeldungen und Fehlerroutinen aus. Wie sollte sichere Fehlerbehandlung aussehen
  • Application-Logging: Warum ist eine gute Logging-Strategie elementar und was sollten Entwickler besser nicht loggen
    LAB-Übung: Vertrauliche Daten in Logdateien. Tipps, wie man zu gutem Logging kommt
  • Secure-Networking und Infrastruktur: Hacker greifen Systeme an, nicht Software. Welche Schwachstellen gibt es in Übertragungsprotokollen und warum sind Hardening und Patching nicht nur die Aufgabe von Administratoren, sondern auch von Entwicklern.

Implementierungsphase


< >

Validierungsphase

  • Code-Reviews: Welche Security-Best-Practices gibt es und wann sollte ein Source-Code-Review durchgeführt werden
  • Automatisierte Codeanalysen: Welchen Nutzen haben automatisierte Codeanalysen und welche Module können analysiert werden
  • Schwachstellen-Scans: Was bringen automatisierte Schwachstellen-Scans und wo sind deren Grenzen
  • Penetrationstests: Warum sind Penetrationstests manchmal unerlässlich

Validierungsphase


< >

Betriebsphase

  • Code-Changes: Welche Auswirkungen haben Code-Change auf die Security. Welche Maßnahmen sollten ergriffen werden
  • Konfiguration: Wie beeinflusst die Konfiguration die Security
  • Patch-Management: Wer ist für das Patching von Systemen verantwortlich und bis wohin LAB-Übung: Ausnutzung einer weiteren RCE Schwachstelle durch eine veraltete Bibliothek
  • Decommissioning: Welche Schritte sind zu tun, wenn ein System „End of Life“ ist

Betriebsphase


< >

Test

Secure Development Abschlusstest mit Multiple-Choice-Fragen:

Bei Bestehen gibt es ein Zertifikat zum Download.

Test


< >

Wollen Sie das Secure Development Training selbst ausprobieren? Oder weitere Informationen?

Nehmen Sie mit uns Kontakt auf!
Kontakt

Viele gute Gründe

Visualisierung einer effizienten Schulung
Hocheffizientes Training
Mit der Kombination aus E-Learning und LAB können Sie Entwickler auf der ganzen Welt erreichen, gerade auch in Near-Shoring- oder Off-Shoring-Zentren. Das ist für die Risikoreduktion elementar, denn viele Entwicklungsteams waren bisher für Trainings in dieser Qualitätsstufe kaum erreichbar.
Visualisierung von Lernerfolg
Lernerfolg garantiert
Das Hauptproblem in der Security-Awareness von Entwicklern liegt in der fehlenden Einsicht und Betroffenheit. Im Cyber Security LAB-E-Learning nehmen Ihre Entwickler die Sicht eines Angreifers ein und hacken sich auf verschiedenste Arten durch eine Applikation. Dadurch entsteht eine sehr hohe persönliche Betroffenheit und Verständnis für die Einhaltung der Secure Development Prinzipien. Das ist die Basis für Verhaltensänderung.
Visualisierung von Internationalität
International einsetzbar
Das Secure Development Training für Entwickler ist in Deutsch und Englisch verfügbar. Er ist scorm-kompatibel und kann als Cloud-Service oder in Ihrem eigenen LMS bereitgestellt werden. Das englischsprachige Security-LAB für Entwickler enthält eine Webapplikation mit zahlreichen Schwachstellen. Jeder Entwickler erhält sein individuelles LAB und ein Zeitkontingent von 15 Stunden für die Nutzung.
Visualisierung von integrierten Richtlinien
Richtlinien integrierbar
Grundsätzlich benötigt das Secure Development Training keine individuellen Anpassungen. Sie können aber auf Wunsch an bestimmten Stellen Ihre relevanten Dokumente und Richtlinien (Secure-Coding-Checklisten, eingesetzte Kryptosysteme, Code-Analysen, etc.) integrieren. Nebenbei integrieren wir dann natürlich auch Ihr Firmenlogo und benennen Ihre Security-Ansprechpartner.
Visualisierung eines fairen Preismodells
Faires Preismodell
Das Cyber Security LAB-E-Learning für Entwickler wird nach Schulungsteilnehmer lizenziert. Der Preis für einen Schulungsteilnehmer (inklusive E-Learning-Kurs, LAB-Infrastruktur, Betrieb, Lizenzen, etc.) liegt je nach Teilnehmeranzahl zwischen 80,- und 250,- EUR netto zzgl. MwSt. und kostet somit einen Bruchteil eines vergleichbaren Präsenztrainings, liefert aber quasi denselben Lernerfolg.