Schulungen

Secure Coding – Java

Die Arbeit mit realistischen Code-Beispielen und zahlreichen eingeflochtenen Übungen stellen den zentralen Gedanken dieses stark technisch ausgerichteten Seminars dar. Durch die Vermittlung verbreiteter Angriffsvektoren und Schwachstellen sowie entsprechender Gegenmaßnahmen werden die Teilnehmer befähigt, in Zukunft sicher(er)en Programmcode zu produzieren und potentielle neuralgische Stellen einer Anwendung angemessen zu reflektieren. Einzeln oder in kleinen Gruppen werden in unserer modernen Schulungsumgebung realistische Schwachstellen identifiziert, korrigiert, Lösungen verifiziert und diskutiert. Folgende Fragestellungen werden dabei spezifische zum behandelten Szenario immer wieder adressiert:

  • Wie sehen realistische Angriffe aus und was sind die Konsequenzen?
  • Wie lassen sich hier Fehler bereits „theoretisch“ (z.B. in der Design-/Entwurfsphase) vermeiden bzw. einschränken?
  • Wie vermeide ich gängige Umsetzungsfehler?
  • Wie identifiziere ich Schwachstellen im bestehenden Code?

Im Lauf des Seminars werden dedizierte, exemplarische Codebeispiele mit eingebauten Schwachstellen, primär aus der „OWASP Top 10“, analysiert und anschließend selbstständig korrigiert, diskutiert sowie gegebenenfalls statisch oder zur Laufzeit verifiziert. Unsere moderne Schulungsumgebung gewährleistet dabei einen effizienten Zugriff auf das Übungsmaterial. Die Lösungen der Teilnehmer werden teilweise automatisch überprüft, wordurch jeder Teilnehmer unabhängiges und der jeweiligen Geschwindigkeit angepasstes Feedback über seinen eigenen Lernerfolg erhält.

Sämtliche Inhalte können in Absprache mit Ihnen spezifisch für Sie angepasst werden!

Kursinhalt

  • Übergreifende Strukturierung
    • Eingabe- und Ausgabebehandlung
    • Authentifizierung und Passwort Management
    • Session Management
    • Zugriffskontrolle
    • Kryptographie
    • Fehlerbehandlung und Logging
    • Datenschutz
    • Kommunikationssicherheit
    • Systemkonfiguration
    • Datenbank Sicherheit
    • Dateimanagement
    • Speicherverwaltung
  • Auswahl betrachteter Technologien (anpassbar):
    • Bean-Validation
    • Bcrypt/Scrypt
    • JCE, JCA, JSSE
    • JPA / Prepared Statements
    • Servlet, JSP, JSTL, JSF, Facelets
    • JSoup
    • Coverity
    • JSON Web Token (JWT)
    • JQuery
    • DOMPurify
    • Xerces, JAXB, Jackson, Jersey usw.

Zielgruppe

  • Softwareentwickler
  • Architekten

Dauer

3 bis 5 Tage

Voraussetzungen

Best Practices für sichere Webanwendungen oder ähnlicher Kenntnisstand

Trainer

Mirko Richter
15 Jahre Softwareentwicklungserfahrung