Secure programming foundation
In de cursus Secure Programming Foundation leert u de basisprincipes van het veilig programmeren. In de cursus ziet u welke mogelijke kwetsbaarheden in applicaties kunnen ontstaan en hoe u deze kunt vinden, maar nog belangrijker hoe deze kwetsbaarheden voorkomen kunnen worden. De implementatie van een ontwerp in de vorm van aantoonbaar veilige code, wordt gericht op de onderliggende principes van veilige codering, ongeacht de specifieke programmeertaal of type omgeving. Ook het belang van testen komt aan de orde.
Doordat u vooraf de gelegenheid krijgt om al veel theorie door zelfstudie op te doen, zal tijdens de lessen de focus op de praktische kant liggen.
- Na afloop van deze cursus:
- Begrijpt u de rol van de programmeur binnen de scope van de SDLC
- Begrijpt u het mandaat van een veilige programmeur en zijn beperkingen
- Kent u de belangrijkste soorten codeerfouten die tot onveilige software leiden
- Heeft u basiskennis van veilig ontwerp, bedreigingsmodellering en veilige coderingsprincipes
- Heeft u basiskennis van het identificeren van de meest voorkomende fouten die tot beveiligingsproblemen leiden
Kalender
Il n'y a pas de sessions publiques à ce moment. Nous organisons volontiers un cours en entreprise ou une session publique supplémentaire (en cas d'un nombre suffisant de participants). Intéressé? Contactez-nous.
Doelgroep
De cursus is geschikt voor programmeurs die beperkte kennis hebben van veilig programmeren of een update van hun kennis nodig hebben. Uiteraard zijn degenen met interesse in veilige codering in het algemeen ook welkom.
Voorkennis
Tijdens de cursus Secure Programming Foundation wordt de basis van veilig programmeren behandeld. De kandidaat dient ervaring te hebben met het coderen, bouwen, implementeren en testen van software en bij voorkeur begrijpt de kandidaat de principes van de meest voorkomende software-ontwikkelingsmodellen (bijv. Waterval en agile).
Bij voorkeur is er ervaring met het ontwikkelen van code in teamverband.
Enige basiskennis van informatiebeveiliging in het algemeen is nuttig evenals basiskennis van de meest voorkomende soorten kwetsbaarheden die in software worden aangetroffen.
Inhoud
- 1. Introduction and properties of secure software
- The fundamentals of secure software
The first part of the course introduces you to why secure programming is important and the business case for it. It also describes what is needed to be successful in secure development. After that the Secure Software Development Life Cycle (SSDLC) is introduced. It concludes with an overview of properties that make software secure or open it up to attacks if not implemented properly.
- The case for software security
There is no place to hide security issues. They will be found and exploited if you don't fix them in time. By postponing this work and creating technical/security debt you will only make it harder on yourself and increase the costs of something you will have to do eventually anyway. And if you don't, you will be held accountable. Laws are getting tougher and society is raising its expectations of what it thinks is your responsibility. In the end it makes sense business-wise to improve your security stance. Especially when you take into account that the cost of security breaches always is higher than anticipated and is ever increasing.
- Setting the stage for success
There is no simple recipe for making software secure. You need to build an environment that supports secure development. This means creating a culture where security is important and where this importance is reflected in communications and in the decisions that are made. It also means building and maintaining the right knowledge base and skill set to become and stay good at it. Once that is in place you need to adopt some best practices to ensure you get good results. Think of reducing complexity, practising defence in-depth, making maintenance easy, preparing for changes, and evaluating third-party code before incorporating it in your work, a.o..
- Secure development models
Realise what it takes to "do" secure development by understanding and implementing the Secure Software Development Life Cycle. Even if you have adopted DevOps, this is still the basis for achieving success.
- What makes software (in)secure?
There are many many ways in which software can be either secure or open to attacks. Using SECO's Application Security Framework, a coherent overview of all these aspects of secure software is given. Because almost all software that processes data will have some link to databases, a short overview of database security is included in this section.
- 2. Workshop Threat Modelling
The second part of the course describes what threat modelling is, what it aims to achieve, and how it is done. This part will be concluded with a workshop wherein a threat model is made of a new service that our model organisation Bicsma wants to introduce to the market. All four steps of the threat modelling process will be shown and explained:
- Modelling the system
- Modelling the threats to the system
- Mitigating the threats that were found
- Verifying the threat model
- 3. Secure Coding exercises
The third and last part of the course is purely hands-on. A number of the most common security issues are reviewed using practical examples. Think of:
- Input validation
- Buffer overruns
- Exception handling
- Command injection
- Integer overflows
- Information disclosure
- Race conditions
Verloop van de cursus
U ontvangt bij aanvang van de cursus het officiële cursusmateriaal van SECO-Institute via onze portal. Het cursusmateriaal is Engelstalig en de voertaal tijdens de cursus is Nederlands. Wanneer er een boek is inbegrepen bij het cursusmateriaal ontvangt u deze op de eerste lesdag.
De cursus Secure Programming Foundation is het eerste niveau van het SECO-Institute Cyber Security & Governance Certification program en er is op dit moment nog geen vervolgopleiding in deze track.
Het officiële SECO-Institute examen wordt extern afgenomen door SECO-Institute en bestaat uit multiple choice vragen. Na succesvolle afronding van het examen ontvangt u het certificaat "Secure Programming Foundation" en kunt u uw digitale S-SPF badge aanvragen bij het SECO-Institute.
- Exameninformatie
- Taal examen: Engels
- Type examen: online-examen (u dient dit examen zelf te reserveren)
- Type vragen: 40 meerkeuzevragen
- Examentijd: 60 minuten
Duur
2 cursusdagen - 20 uur zelfstudie.
Docent
Security Academy.
INFO SESSION ET INSCRIPTION |