Bedankt voor uw aanvraag! Een van onze medewerkers neemt binnenkort contact met u op
Bedankt voor uw boeking! Een van onze medewerkers neemt binnenkort contact met u op.
Cursusaanbod
1. IT-beveiliging en veilig coderen
- Fundamentele beveiligingsprincipes: Vertrouwelijkheid, Integriteit en Beschikbaarheid (CIA) in de context van Java-applicaties.
- Veilige Softwareontwikkelingslevenscyclus (SSDLC): Integreer beveiliging van requirements tot deploy.
- Paradigmas voor veilig coderen: Defensie in diepte, minimaal noodzakelijke rechten en veilige standaardinstellingen.
- Standaard classificaties van kwetsbaarheden: Begrijpen van CWE (Common Weakness Enumeration) en OWASP.
2. Beveiliging van webapplicaties
- Diepe analyse van de OWASP Top Ten: Gedetailleerde analyse van injectie, gebroken authenticatie en blootleggen van gevoelige gegevens.
- Cross-Site Scripting (XSS): Gereflecteerd, opgeslagen en DOM-gebaseerd XSS-scenario’s in Java/JSP.
- Cross-Site Request Forgery (CSRF): Aanvalsmethoden en implementatie van Anti-CSRF-tokens.
- Sessiebeheer: Cookie-beveiliging, sessievaststelling en timeout-beheer.
- API-beveiliging: Beschermen van REST- en SOAP-eindpunten tegen misbruik.
3. Beveiliging van web services
- Web services vs. traditionele webapps: Verschillen in aanvalsoppervlak.
- Transportlaagbeveiliging: SSL/TLS-configuratie voor Java-clients en -servers.
- Boodschapsbeveiliging: Integriteit en vertrouwelijkheid op payload-niveau.
- Authenticatiestandaarden: Implementatie van OAuth 2.0, OpenID Connect en JWT (JSON Web Tokens).
4. XML-beveiliging
- XML-parseer-kwetsbaarheden: Voorkomen van XXE-aanvallen (XML External Entity).
- XML-schema-validatie: Best practices voor strikte schema-throughseting.
- XML-numerieke handtekeningen: Implementatie van handtekeningen om ontkennis te voorkomen.
- XML-versleuteling: Standaard benaderingen voor het versleutelen van XML-inhoud.
5. Fundamenten van Java-beveiliging
- Java-beveiligingsarchitectuur: Het
java.security-pakket en providerarchitectuur. - Beveiligingsproviders: Installeren en configureren van providers zoals Bouncy Castle.
- Toegangsbeheer: Beleidbestanden, permissies en de Security Manager (legacy vs. modern).
- KeyStore-beheer: Aanmaken en beheren van keystores en truststores voor certificaten.
6. Praktische cryptografie
- Cryptografische algoritmen: Overzicht van symmetrische (AES), asymmetrische (RSA, ECC) en hash-algoritmes (SHA-256/512).
- Willekeurige getalgeneratie: De gevaren van
java.util.Randomvs.java.security.SecureRandom. - Sleutelbeheer: Strategieën voor sleutelgeneratie, opslag en rotatie.
- Java Cryptography Architecture (JCA): Gebruik van
Cipher,MessageDigestenMac-klassen. - Java Cryptography Extension (JCE): Begrijpen van beleidbestanden en unlimited strength jurisdiction.
7. Java-beveiligingsdiensten
- SSL/TLS in Java: Gebruik van
SSLSocketFactoryenHttpsURLConnection. - Trust Managers: Afbakening van vertrouwensverificatie voor private PKI-omgevingen.
- Authenticatoren: Programmatische authenticatie met
Authenticator.getDefault(). - Certificaatanalyse: Programmatisch lezen en analyseren van X.509-certificaten.
8. Java EE-beveiliging
- Declaratieve beveiliging: Rolgebaseerd toegangsbeheer (RBAC) met
web.xmlen annotaties. - Programmatische beveiliging: Gebruik van
HttpServletRequest.isUserInRole()engetRemoteUser(). - JAAS (Java Authentication and Authorization Service): Configureren van
login.confen implementeren vanLoginModules. - Servlet-beveiliging: Container-gebeheerde beveiligingsrestricties en authenticatiemethoden (FORM, BASIC, DIGEST).
9. Veelvoorkomende programmeerfouten en kwetsbaarheden
- Onveilige serialisatie: Risico’s van
ObjectInputStreamen het omzeilen van beveiligingschecks. - Command injection: Mitigeren van OS-niveau uitvoeringskwetsbaarheden.
- Pad-oversteek: Saniteren van bestandssysteem-ingangen om directory traversal te voorkomen.
- Misbruik van reflectie: Risico’s van
java.lang.reflecten het omzeilen van toegangscontrole. - Ingesloten inloggegevens: Identificeren en verwijderen van secrets uit de broncode.
- Fouten in cryptografische implementaties: Gebruik van ECB-modus, zwakke sleutels of statische IVs.
10. Kennisbronnen
- Statische analysetools: Gebruik van SonarQube, Checkmarx en Fortify voor geautomatiseerd scannen.
- Dynamische analysetools: Overzicht van Burp Suite en OWASP ZAP.
- CVE-databases: Hoe nieuwe kwetsbaarheden in het Java-framework bij te houden en hierop te reageren.
- Aanbevolen lectuur: Lijst met boeken, documentatie en checklists voor veilig coderen.
Vereisten
Geen.
21 Uren
Getuigenissen (4)
de kennis van de trainer was zeer hoog - hij wist waarover hij het had en kon antwoord geven op onze vragen
Adam - Fireup.PRO
Cursus - Advanced Java Security
Automatisch vertaald
Praktische oefeningen
Olek - Fireup.PRO
Cursus - Advanced Java Security
Automatisch vertaald
coderingsopdrachten
Mirek - Fireup.PRO
Cursus - Advanced Java Security
Automatisch vertaald
Het biedt veel inzicht in de beveiliging
Nolbabalo Tshotsho - Vodacom SA
Cursus - Advanced Java Security
Automatisch vertaald