Vielen Dank für die Zusendung Ihrer Anfrage! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Vielen Dank, dass Sie Ihre Buchung abgeschickt haben! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Schulungsübersicht
1. IT-Sicherheit und sicheres Programmieren
- Fundamentale Sicherheitsprinzipien: Vertraulichkeit, Integrität und Verfügbarkeit (CIA) im Kontext von Java-Anwendungen.
- Sicherer Software-Entwicklungslebenszyklus (SSDLC): Integration von Sicherheit von den Anforderungen bis zur Bereitstellung.
- Paradigmen des sicheren Programmierens: Defense in Depth, Least Privilege und sichere Standardvoreinstellungen (fail-safe defaults).
- Standardklassifizierung von Schwachstellen: Verständnis von CWE (Common Weakness Enumeration) und OWASP.
2. Sicherheit von Webanwendungen
- Tiefgehende Analyse der OWASP Top Ten: Detaillierte Untersuchung von Injection, gebrochener Authentifizierung und Exposition sensibler Daten.
- Cross-Site Scripting (XSS): Reflektiertes, gespeichertes und DOM-basiertes XSS in Java/JSP.
- Cross-Site Request Forgery (CSRF): Angriffsmechanismen und Implementierung von Anti-CSRF-Tokens.
- Sitzungsverwaltung: Cookie-Sicherheit, Session Fixation und Timeout-Management.
- API-Sicherheit: Absicherung von REST- und SOAP-Endpunkten gegen Missbrauch.
3. Sicherheit von Webservices
- Webservices im Vergleich zu traditionellen Webanwendungen: Unterschiede in der Angriffsfläche.
- Sicherheit auf Transportschicht: SSL/TLS-Konfiguration für Java-Clients und -Server.
- Nachrichtensicherheit: Integrität und Vertraulichkeit auf Payload-Ebene.
- Authentifizierungsstandards: OAuth 2.0, OpenID Connect und Implementierung von JWT (JSON Web Tokens).
4. XML-Sicherheit
- Schwachstellen beim XML-Parsing: Verhindern von XML External Entity (XXE)-Angriffen.
- XML-Schema-Validierung: Best Practices für eine strikte Schema-Durchsetzung.
- XML-Digital Signaturen: Implementierung von Signaturen zur Gewährleistung der Nichtabstreitbarkeit.
- XML-Verschlüsselung: Standardansätze zur Verschlüsselung von XML-Inhalten.
5. Grundlagen der Java-Sicherheit
- Die Java-Sicherheitsarchitektur: Das Paket
java.securityund die Provider-Architektur. - Sicherheitsprovider: Installation und Konfiguration von Providern wie Bouncy Castle.
- Zugriffskontrolle: Richtlinien-Dateien, Berechtigungen und der Security Manager (Legacy vs. Modern).
- KeyStore-Verwaltung: Erstellen und Verwalten von KeyStores und TrustStores für Zertifikate.
6. Praxisnahe Kryptografie
- Kryptographische Algorithmen: Überblick über symmetrische (AES), asymmetrische (RSA, ECC) und Hash-Algorithmen (SHA-256/512).
- Zufallszahlengenerierung: Die Gefahren von
java.util.Randomgegenüberjava.security.SecureRandom. - Schlüsselverwaltung: Strategien zur Schlüsselerzeugung, -speicherung und -rotation.
- Java Cryptography Architecture (JCA): Verwendung der Klassen
Cipher,MessageDigestundMac. - Java Cryptography Extension (JCE): Verständnis von Richtliniendateien und unbegrenzter Krypto-Stärke in Jurisdiction-Dateien.
7. Java-Sicherheitsdienste
- SSL/TLS in Java: Verwendung von
SSLSocketFactoryundHttpsURLConnection. - Trust Manager: Anpassung der Vertrauensprüfung für private PKI-Umgebungen.
- Authenticator: Programmatische Authentifizierung mittels
Authenticator.getDefault(). - Zertifikats-Parsing: Lesen und Analysieren von X.509-Zertifikaten programmatisch.
8. Java EE-Sicherheit
- Deklarative Sicherheit: Rollenbasierte Zugriffskontrolle (RBAC) unter Verwendung von
web.xmlund Annotationen. - Programmatische Sicherheit: Nutzung von
HttpServletRequest.isUserInRole()undgetRemoteUser(). - JAAS (Java Authentication and Authorization Service): Konfiguration von
login.confund Implementierung vonLoginModules. - Servlet-Sicherheit: Container-verwaltete Sicherheitseinschränkungen und Authentifizierungsmethoden (FORM, BASIC, DIGEST).
9. Häufige Programmierfehler und Schwachstellen
- Insecure Deserialization: Die Risiken von
ObjectInputStreamund das Umgehen von Sicherheitschecks. - Kommandozeilen-Injection (Command Injection): Abschwächung von Schwachstellen der OS-Level-Ausführung.
- Path Traversal: Bereinigung von Dateisystem-Eingaben, um Directory Traversal zu verhindern.
- Missbrauch von Reflection: Risiken im Zusammenhang mit
java.lang.reflectund das Umgehen der Zugriffskontrolle. - Hartcodierte Zugangsdaten: Erkennen und Entfernen von Geheimnissen aus dem Quellcode.
- Fehler bei der Implementierung von Kryptografie: Verwendung des ECB-Modus, schwacher Schlüssel oder statischer IVs (Initialisierungsvektoren).
10. Wissensquellen
- Statische Analyse-Tools: Nutzung von SonarQube, Checkmarx und Fortify für automatisiertes Scannen.
- Dynamische Analyse-Tools: Überblick über Burp Suite und OWASP ZAP.
- CVE-Datenbanken: Wie man neue Schwachstellen im Java-Framework verfolgt und darauf reagiert.
- Empfohlene Lektüre: Liste von Büchern, Dokumentation und Checklisten für sicheres Programmieren.
Voraussetzungen
Keine.
21 Stunden
Erfahrungsberichte (4)
Das Wissen des Trainers war sehr hoch – er wusste, worüber er sprach, und konnte unsere Fragen beantworten.
Adam - Fireup.PRO
Kurs - Advanced Java Security
Maschinelle Übersetzung
Praktische Übungen
Olek - Fireup.PRO
Kurs - Advanced Java Security
Maschinelle Übersetzung
Codierübungen
Mirek - Fireup.PRO
Kurs - Advanced Java Security
Maschinelle Übersetzung
Es öffnet sich weit und bietet viele Einblicke in die Sicherheit
Nolbabalo Tshotsho - Vodacom SA
Kurs - Advanced Java Security
Maschinelle Übersetzung