Aperçu du cours
Doel van de opleiding: Deze opleiding heeft als doel ontwikkelaars en systeemarchitecten bewust te maken van het belang van beveiliging in de levenscyclus van de ontwikkeling van systemen en applicaties. De opleiding behandelt de beste beveiligingspraktijken die al in de ontwerp-, ontwikkel- en testfases moeten worden geïntegreerd, en ook tijdens de productie en het onderhoud. De deelnemers leren kwetsbaarheden in applicaties en systemen te identificeren, te voorkomen en op te lossen.
Prérequis
- Basiskennis van softwareontwikkeling
- Begrip van systeemarchitectuur en applicaties
- Basiskennis van cyberbeveiligingsconcepten
Objectifs pédagogiques
- Begrijpen van de fundamentele principes van beveiliging in softwareontwikkeling.
- Leren hoe veelvoorkomende kwetsbaarheden in webapplicaties en systemen te identificeren en te voorkomen.
- Beveiligingspraktijken integreren gedurende de volledige ontwikkelingscyclus, van ontwerp en coderen tot testen en implementeren.
- Beheersen van tools en technieken voor het testen van de beveiliging van applicaties en systemen.
- Het ontwikkelen van een beveiligingscultuur binnen ontwikkelteams en softwareprojecten.
Public ciblé
- Softwareontwikkelaars
- Systeemarchitecten
- IT-beveiligingsverantwoordelijken
- Beveiligingsingenieurs
- Beveiligingsconsultants
- Iedereen die betrokken is bij de ontwerp en ontwikkeling van applicaties en systemen
Programme de formation
-
Dag 1: Inleiding tot beveiliging van applicaties en systemen (7 uur)
-
Fundamentele principes van beveiliging in softwareontwikkeling (2 uur) Waarom beveiliging essentieel is in softwareontwikkeling Risico’s van onveilige applicaties Beveiligingsprincipes: Vertrouwelijkheid, Integriteit, Beschikbaarheid (CIA) Het “Defense in Depth”-model voor beveiliging Praktijkoefening: Bespreking van de werkelijke impact van beveiligingslekken in populaire applicaties (voorbeelden van echte aanvallen).
-
Veelvoorkomende kwetsbaarheden in systemen en applicaties (3 uur) De meest voorkomende aanvallen: SQL-injectie, XSS, CSRF, DDoS-aanvallen, enz. Hoe kwetsbaarheden ontstaan en hoe ze kunnen worden voorkomen Tools en technieken voor het identificeren van kwetsbaarheden (zoals OWASP Top 10) Praktijkoefening: Demonstratie van een SQL-injectie-aanval en de impact ervan op de applicatiebeveiliging. Oplossingen voor het voorkomen van deze kwetsbaarheden worden besproken.
-
Beveiliging in de softwareontwikkelingcyclus (2 uur) Hoe beveiliging kan worden geïntegreerd in het ontwikkelingsproces Beveiligingstests en codebeoordeling Het belang van een veilige ontwikkelingsomgeving Praktijkoefening: Groepsdiscussie: Welke stappen moeten worden genomen om beveiliging vanaf het begin van een project in te voeren?
-
-
Dag 2: Beveiligingspraktijken bij coderen en testen van applicaties (7 uur)
-
Beveiliging bij coderen: veilige programmeerpraktijken (3 uur) Het toepassen van veilige coderingstechnieken Gebruik van encryptie, veilige gegevensopslag en veilige communicatie Beveiliging van gebruikersauthenticatie en sessies Praktijkoefening: Hands-on oefening in veilige codering: deelnemers schrijven veilige code om gevoelige gegevens op te slaan en gebruikers te authenticeren.
-
Veiligheidstests voor applicaties (2 uur) Beveiligingstests: wat te testen en hoe Tools voor het uitvoeren van beveiligingstests (bijv. Static Analysis, Dynamic Analysis, Penetration Testing) Het belang van geautomatiseerde beveiligingstests in CI/CD-pijplijnen Praktijkoefening: Het uitvoeren van een eenvoudig penetratietest op een testapplicatie om kwetsbaarheden te identificeren.
-
Beveiliging van API’s en microservices (2 uur) Hoe API’s en microservices beveiligd kunnen worden tegen aanvallen Authentificatie en autorisatie in gedistribueerde systemen Beveiligingsprotocollen en -standaarden zoals OAuth2 en OpenID Connect Praktijkoefening: Het implementeren van beveiliging voor een API met behulp van OAuth2.
-
-
Dag 3: Beveiliging bij implementatie en onderhoud van systemen (7 uur)
-
Beveiliging bij implementatie en productie (3 uur) Het beveiligen van de productieomgeving Beveiligingsmonitoring en -logging in real-time Beveiliging van cloudinfrastructuren en containerbeveiliging (Docker, Kubernetes) Praktijkoefening: Het opzetten van een monitoring- en loggingsysteem voor beveiliging in een cloudomgeving (bijvoorbeeld met behulp van AWS CloudWatch of Azure Monitor).
-
Incidentrespons en herstel na een beveiligingsincident (2 uur) Het opstellen van een incidentresponsplan Het herkennen van en reageren op beveiligingsincidenten Herstel van applicaties en systemen na een aanval Praktijkoefening: Simulatie van een beveiligingsincident en het ontwikkelen van een actieplan voor het herstel van systemen na de aanval.
-
Beveiligingsbeleid en best practices voor softwareontwikkeling (2 uur) Het ontwikkelen van een organisatiebreed beveiligingsbeleid voor softwareontwikkeling Best practices voor het trainen van ontwikkelaars in beveiliging Het belang van het integreren van beveiliging in de bedrijfscultuur Praktijkoefening: Groepsopdracht: Ontwikkel een eenvoudig beveiligingsbeleid voor een fictief bedrijf.
-