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 sichere Programmierung
- Grundlegende Sicherheitsprinzipien: Vertraulichkeit, Integrität und Verfügbarkeit (CIA) im Kontext von Java-Anwendungen.
- Sicherer Softwareentwicklungslebenszyklus (SSDLC): Integration der Sicherheit von den Anforderungen bis zur Bereitstellung.
- Paradigmen der sicheren Programmierung: Verteidigung in der Tiefe, Minimale Berechtigung und sichere Standardwerte.
- Standardisierte Klassifizierung von Schwachstellen: Verständnis von CWE (Common Weakness Enumeration) und OWASP.
2. Sicherheit von Webanwendungen
- Tiefe Analyse der OWASP Top Ten: Detaillierte Untersuchung von Injektionen, gebrochener Authentifizierung und der Preisgabe sensibler Daten.
- Cross-Site Scripting (XSS): Szenarien für reflektiertes, gespeichertes und DOM-basiertes XSS in Java/JSP.
- Cross-Site Request Forgery (CSRF): Angriffsmechanismen und Implementierung von Anti-CSRF-Tokens.
- Sitzungsverwaltung: Cookie-Sicherheit, Sitzungsfestlegung und Zeitüberschreitungverwaltung.
- API-Sicherheit: Absicherung von REST- und SOAP-Endpunkten gegen Missbrauch.
3. Sicherheit von Webservices
- Webservices im Vergleich zu klassischen Webanwendungen: Unterschiede in den Angriffsflächen.
- Transportlagentransportsicherheit: SSL/TLS-Konfiguration für Java-Clients und -Server.
- Nachrichtensicherheit: Integrität und Vertraulichkeit auf der Ebene der Nutzdaten.
- Authentifizierungsstandards: Implementierung von OAuth 2.0, OpenID Connect und JWT (JSON Web Tokens).
4. XML-Sicherheit
- Schwachstellen beim XML-Parsing: Vermeidung von XML External Entity (XXE)-Angriffen.
- XML-Schema-Validierung: Best Practices für die strikte Durchsetzung von Schemata.
- XML-Digitalsignaturen: Implementierung von Signaturen zur Sicherstellung der Nichtabstreitbarkeit.
- XML-Verschlüsselung: Standardansätze zur Verschlüsselung von XML-Inhalten.
5. Grundlagen der Java-Sicherheit
- Java-Sicherheitsarchitektur: Das
java.security-Paket und die Anbieter-Architektur. - Sicherheitsanbieter: Installation und Konfiguration von Anbietern wie Bouncy Castle.
- Zugriffskontrolle: Policy-Dateien, Berechtigungen und der Security Manager (Legacy vs. Modern).
- KeyStore-Verwaltung: Erstellung und Verwaltung von Keystores und Truststores für Zertifikate.
6. Praktische Kryptografie
- Kryptografische Algorithmen: Übersicht über symmetrische (AES), asymmetrische (RSA, ECC) und Hash-Algorithmen (SHA-256/512).
- Zufallszahlengenerierung: Die Gefahren von
java.util.Randomim Vergleich zujava.security.SecureRandom. - Schlüsselverwaltung: Strategien für Schlüsselgenerierung, -speicherung und -rotation.
- Java Cryptography Architecture (JCA): Nutzung der Klassen
Cipher,MessageDigestundMac. - Java Cryptography Extension (JCE): Verständnis von Policy-Dateien und unbegrenzter Schlüsselstärke.
7. Java-Sicherheitsdienste
- SSL/TLS in Java: Verwendung von
SSLSocketFactoryundHttpsURLConnection. - Trust Managers: Anpassung der Vertrauensverifizierung für private PKI-Umgebungen.
- Authentifizierer: Programmatische Authentifizierung unter Verwendung von
Authenticator.getDefault(). - Zertifikatsanalyse: Programmables Lesen und Analysieren von X.509-Zertifikaten.
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 Sicherheitsbeschränkungen und Authentifizierungsmethoden (FORM, BASIC, DIGEST).
9. Häufige Programmierfehler und Schwachstellen
- Unsichere Deserialisierung: Die Risiken von
ObjectInputStreamund das Umgehen von Sicherheitsprüfungen. - Befehlssprachen-Injektion: Minderung von OS-Ebene-Ausführungs-Schwachstellen.
- Pfaddurchbrüche: Bereinigung von Dateisystemeingaben zur Verhinderung von Verzeichnisdurchbrüchen.
- Missbrauch von Reflection: Risiken, die mit
java.lang.reflectund dem Umgehen der Zugriffskontrolle verbunden sind. - Hardcodierte Anmeldeinformationen: Identifizierung und Entfernung von Geheimnissen aus dem Quellcode.
- Fehler bei der Kryptografie-Implementierung: Verwendung von ECB-Modus, schwachen Schlüsseln oder statischen IVs.
10. Wissensquellen
- Werkzeuge zur statischen Analyse: Verwendung von SonarQube, Checkmarx und Fortify für automatisierte Scans.
- Werkzeuge zur dynamischen Analyse: Übersicht über Burp Suite und OWASP ZAP.
- CVE-Datenbanken: So verfolgen und reagieren Sie auf neue Schwachstellen im Java-Framework.
- Empfohlene Literatur: Liste von Büchern, Dokumentationen und Checklisten für die sichere Programmierung.
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