training
Secure Programming Foundation
Master de basis van veilige softwareontwikkeling en bouw vanaf dag één software die veilig is ontworpen.
Beschrijving
Security is geen optie meer - het is een kernvaardigheid voor iedere developer. In deze cursus vormt de nieuwste OWASP Top 10 jouw praktische leidraad om de meest kritieke webapplicatierisico's van vandaag te begrijpen én te voorkomen. Geen theorie voor auditors, maar kennis die je direct toepast in je eigen code. Je gaat verder dan een checklist en begrijpt echt waarom kwetsbaarheden ontstaan. We duiken daarom gericht in essentiële onderwerpen zoals SOP, CORS, cookies, STRIDE (een eenvoudige manier van threat modeling), inputvalidatie en cryptografie. Elk concept vertalen we naar concrete ontwerp- en codeerkeuzes die je de volgende dag al kunt toepassen. Verwacht live demo's en hands-on labs in eenvoudig JavaScript, zodat je security niet alleen begrijpt, maar ook daadwerkelijk toepast. Hoewel veel voorbeelden web-gebaseerd zijn, zijn de principes universeel en toepasbaar in elke taal of framework. "Secure thinking" is overal relevant.
Doelgroep: Deze cursus is bedoeld voor ontwikkelaars die:
- hun kennis en vaardigheden in veilige softwareontwikkeling willen versterken en up-to-date houden
- veelvoorkomende kwetsbaarheden willen herkennen en voorkomen
- willen doorgroeien van "het werkt" naar "het werkt én het is veilig"
Leerdoelen
Benodigde voorkennis
Ervaring met ten minste één programmeertaal is vereist.
Onderwerpen
- Secure Programming Awareness
- STRIDE
- OWASP Top 10 nieuwste editie:
- 10 meest kritieke webapplicatie beveiligingsrisico's
- gerelateerde weaknesses (CWE)
- best practices om deze te beperken
- SOP, CORS, Security-related Headers
- Input Handling
- Authentication & Authorization
- Configuration, Error Handling and Logging
- Cryptography
Introductie tot Veilig Programmeren
- Identificeer OWASP als een toonaangevende autoriteit op het gebied van veilig programmeren en applicatiebeveiliging.
- Begrijp de kernprincipes en best practices beschreven door OWASP voor veilig programmeren en waar deze informatie te vinden is.
- Maak kennis met de OWASP Top 10 lijst van de meest kritieke webapplicatie beveiligingsrisico's.
- In het nieuws: wat gebeurde er deze week?
Security Awareness
- Herken de historische onderfinanciering van beveiliging en begrijp de implicaties hiervan voor organisaties.
- Definieer en leg technische termen uit die vaak worden gebruikt in de context van beveiliging.
- Ken het STRIDE-model om verschillende soorten bedreigingen voor de beveiliging te identificeren en te begrijpen.
- Herken en begrijp de rol van "man in the middle" proxies in beveiligingscontexten.
- Begrijp het HTTP-protocol en de relevantie ervan als aanvalsvector in webbeveiliging.
- Begrijp het Browser Security Model en het belang ervan voor veilig browsen op het web.
Authenticatie en Sessiebeheer
- Maak onderscheid tussen authenticatie en autorisatie en begrijp hun respectievelijke best practices.
- Implementeer veilig wachtwoordbeleid en begrijp hashing en salting met behulp van Bcrypt.
- Ken het belang van Multi-Factor Authentication (MFA) als een kritieke verdediging tegen diefstal van inloggegevens en zwakke wachtwoorden.
- Maak onderscheid tussen sessie-gebaseerde en token-gebaseerde authenticatie, en begrijp hun afwegingen en beveiligingsimplicaties.
- Implementeer en beheer JWT-gebaseerde authenticatie veilig, inclusief juiste token-opslag, vervaldatum en intrekkingsstrategieën.
- Begrijp en pas de juiste cookie-attributen toe voor veilig sessiebeheer.
- Herken session fixation en user enumeration aanvallen en implementeer geschikte tegenmaatregelen.
Input Handling
- Herken veelvoorkomende gebieden waar injection-aanvallen kunnen plaatsvinden, zoals command injection, XSS en path traversal.
- Begrijp het verschil tussen input validatie en sanitization, en wanneer elke techniek moet worden toegepast.
- Implementeer maatregelen om applicaties te beschermen tegen SQL injection aanvallen en begrijp de risico's van blind SQL injection aanvallen.
- Maak onderscheid tussen allowlist en blocklist input validatiemethoden.
- Herken drie soorten Cross-Site Scripting (XSS) aanvallen.
- Implementeer contextbewuste encoding om XSS-aanvallen in verschillende contexten te voorkomen.
- Begrijp hoe moderne frameworks automatische escaping en sanitization bieden, en wanneer handmatige interventie nog steeds vereist is.
- Herken valkuilen in reguliere expressies, waaronder ReDoS-aanvallen en greedy quantifiers.
- Begrijp encoding-standaarden en het belang van decodering.
Autorisatie
- Begrijp de rationale voor het gebruik van indirecte objectreferenties en het voorkomen van Insecure Direct Object Reference (IDOR) kwetsbaarheden.
- Pas het principe van least privilege toe bij het ontwerpen van toegangscontrolemechanismen.
- Begrijp het verschil tussen Role-Based Access Control (RBAC) en Attribute-Based Access Control (ABAC).
- Handhaaf record ownership in toegangscontroles om ongeautoriseerde CRUD-operaties op gegevens van andere gebruikers te voorkomen.
- Ontwerp en onderhoud een tweedimensionale toegangscontrolematrix die subjects, objecten en toegestane acties voor elke rol documenteert.
- Begrijp de basis van OAuth 2.0.
- Herken Server-Side Request Forgery (SSRF) aanvallen en begrijp mitigatie.
- Herken Cross-Site Request Forgery (CSRF) aanvallen en implementeer mitigatie.
- Identificeer en mitigeer clickjacking-aanvallen.
Configuratie, Error Handling en Logging
- Herken dat frameworks, servers en cloudplatforms zelden standaard veilig zijn en hardening vereisen.
- Implementeer veilige configuratiepraktijken zoals het uitschakelen van directory listing.
- Voorkom onbedoelde informatielekken door gedetailleerde foutmeldingen, stack traces en response headers.
- Begrijp best practices rond security logging en alerting.
- Configureer beveiligingsgerelateerde HTTP response headers zoals
Content-Security-Policy. - Begrijp de beveiligingsimplicaties van ontbrekende of verkeerd geconfigureerde beveiligingsgerelateerde cookie-attributen.
- Herken het belang van het toepassen van het principe van "secure by default" in alle configuraties.
- Implementeer goede exception handling die veilig faalt.
Cryptografie
- Maak onderscheid tussen symmetrische en asymmetrische encryptiemethoden en begrijp hun geschikte use cases in veilige communicatie.
- Begrijp de rol van digitale handtekeningen bij het waarborgen van data-integriteit, authenticiteit en non-repudiation.
- Leg de basis uit van Public Key Infrastructure (PKI), inclusief certificaatautoriteiten, certificaatketens en de risico's van CA-compromittering.
- Herken dat moderne, bewezen cryptografische algoritmen (AES-GCM, ChaCha20-Poly1305, SHA-256/512, Argon2) moeten worden gebruikt in plaats van gebroken algoritmen zoals MD5, SHA-1 of DES.
- Begrijp het cruciale verschil tussen standaard PRNG's en Cryptographically Secure PRNG's (CSPRNG's) bij het genereren van secrets.
- Begrijp enkele best practices rond cryptografisch sleutelbeheer.
- Verifieer de integriteit van third-party resources (CDN-scripts, libraries).
Planning
| Startdatum | Duur | Locatie | |
|---|---|---|---|
23 maart 202624 maart 2026 | 2 dagen | Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie | Inschrijven |
2 april 20263 april 2026 | 2 dagen | Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie | Inschrijven |
14 april 202615 april 2026 | 2 dagen | Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie | Inschrijven |
26 mei 202627 mei 2026 | 2 dagen | Utrecht / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie Utrecht / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie | Inschrijven |
27 juli 202628 juli 2026 | 2 dagen | Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie Veenendaal / Remote Dit is een hybride training die remote gevolgd kan worden. Meer informatie | Inschrijven |
Incompany of persoonlijk advies nodig?
Onze opleidingsadviseurs denken graag met je mee om een persoonlijk advies te geven of een incompany training binnen jouw organisatie te vinden.
Trainers
Vervolgtrainingen
"Ontzettend goede leraar."Sander
-
Hoge waardering
-
Praktijkgerichte trainingen
-
Gecertificeerde trainers
-
Eigen docenten