Formation Comment écrire un Code Sécurisé
Après les grandes attaques contre les infrastructures nationales, les professionnels de la sécurité ont constaté que la majorité des vulnérabilités à l'origine de ces attaques provenaient de code mal écrit et vulnérable, développé par les programmeurs.
Aujourd'hui, les développeurs doivent maîtriser les techniques permettant d'écrire du code sécurisé, car nous vivons dans un contexte où quiconque peut utiliser des outils disponibles pour écrire un script capable de désactiver efficacement les systèmes d'une grande organisation, en raison du code médiocre rédigé par les développeurs.
Ce cours vise à aider dans les domaines suivants :
- Aider les développeurs à maîtriser les techniques d'écriture de code sécurisé
- Aider les testers logiciels à vérifier la sécurité des applications avant leur mise en production
- Aider les architectes logiciels à comprendre les risques entourant les applications
- Aider les chefs d'équipe à définir les normes de sécurité pour les développeurs
- Aider les webmasters à configurer les serveurs afin d'éviter les mauvaises configurations
Dans ce cours, vous verrez également les détails des dernières cyberattaques qui ont été menées et les contre-mesures utilisées pour les stopper et les prévenir.
Vous constaterez vous-même comment les erreurs des développeurs ont conduit à des attaques catastrophiques, et en participant aux laboratoires pratiques tout au long du cours, vous pourrez mettre en œuvre les contrôles de sécurité et acquérir l'expérience et les connaissances nécessaires pour produire du code sécurisé.
À qui s'adresse ce cours ?
Formation au développement de code sécurisé : cette formation s'adresse idéalement aux professionnels occupant des postes tels que, mais sans s'y limiter :
- Développeurs Web
- Développeurs mobiles
- Développeurs Java
- Développeurs .Net
- Architectes logiciels
- Testeurs logiciels
- Professionnels de la sécurité
- Webmasters
Plan du cours
Module 1 : Introduction au développement sécurisé
- Aperçu des pratiques de développement sécurisé
- Vulnérabilités courantes dans les logiciels
- Importance du cycle de vie du développement sécurisé
Module 2 : Bases des applications Web, Windows et mobiles
- Introduction aux plateformes d'applications
- Implications de sécurité pour chaque plateforme
- Meilleures pratiques pour un développement sécurisé
Module 3 : Attaques et exploitations d'applications
- Scripting intersite (XSS)
- Injections SQL
- Falsification de requête intersite (CSRF)
Module 4 : Attaques et exploitations de serveurs
- Attaques par déni de service (DoS)
- Débordement de tampon (BOF)
- Vulnérabilités courantes des serveurs
Module 5 : Validation et vérification
- Techniques de validation des entrées
- Assainissement des données et encodage des sorties
- Vérification des mesures de sécurité
Module 6 : Contrôles de sécurité et contre-mesures
- Mise en œuvre du contrôle d'accès
- Utilisation du chiffrement pour la sécurité des données
- Protection contre les menaces courantes
Module 7 : Développement sécurisé d'applications mobiles
- Préoccupations de sécurité dans le développement mobile
- Mise en œuvre d'architectures d'applications mobiles sécurisées
- Gestion sécurisée des données mobiles
Module 8 : Normes de sécurité et tests
- Aperçu des normes de sécurité (par exemple, OWASP)
- Tests de vulnérabilités de sécurité
- Meilleures pratiques pour les tests de sécurité
Pré requis
- Connaissances de base dans un langage de programmation
- Connaissances de base du cycle de vie du développement logiciel
Public visé
- Développeurs
- Architectes logiciels
- Professionnels de la sécurité
Cours à partir de 4 + personnes. Pour un entraînement individuel ou en petit groupe, veuillez demander un devis.
Formation Comment écrire un Code Sécurisé - Réservation
Formation Comment écrire un Code Sécurisé - Demande de renseignements
Comment écrire un Code Sécurisé - Demande d'informations consulting
Nos clients témoignent (3)
Les ateliers pratiques
Angel - Vodacom
Formation - How to Write Secure Code
Traduction automatique
voir les menaces de sécurité à l'œuvre
kesh - Vodacom
Formation - How to Write Secure Code
Traduction automatique
Module3 Attaques et exploitations d'applications, XSS, injection SQL Module4 Attaques et exploitations de serveurs, DOS, BOF
Tshifhiwa - Vodacom
Formation - How to Write Secure Code
Traduction automatique
Cours à venir
Cours Similaires
Sécurité du réseau et communications sécurisées
21 HeuresRéaliser une application réseau sécurisée peut s’avérer difficile, même pour les développeurs qui ont déjà eu recours à divers blocs de construction cryptographiques (comme le chiffrement et les signatures numériques). Afin que les participants comprennent le rôle et l’utilisation de ces primitives cryptographiques, nous commençons par poser les bases solides des exigences principales de la communication sécurisée – accusé de réception sécurisé, intégrité, confidentialité, identification distante et anonymat – tout en présentant les problèmes typiques qui peuvent compromettre ces exigences ainsi que les solutions concrètes qui y sont appliquées.
La cryptographie étant un aspect critique de la sécurité des réseaux, nous abordons les algorithmes cryptographiques les plus importants en cryptographie symétrique, en hachage, en cryptographie asymétrique et en accord de clés. Plutôt que de développer un fondement mathématique approfondi, ces éléments sont analysés du point de vue des développeurs, avec des exemples de cas d’usage typiques et des considérations pratiques liées à l’usage du chiffrement, telles que les infrastructures à clés publiques (PKI). Les protocoles de sécurité dans divers domaines de la communication sécurisée sont présentés, avec un examen approfondi des familles de protocoles les plus répandues, telles qu’IPSEC et SSL/TLS.
Les vulnérabilités cryptographiques courantes sont traitées, tant pour certains algorithmes cryptographiques que pour des protocoles cryptographiques spécifiques, notamment BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE et similaires, ainsi que pour l’attaque par chronométrage sur RSA. Pour chaque problème, les considérations pratiques et les conséquences potentielles sont décrites, sans entrer dans des détails mathématiques complexes.
Finalement, la technologie XML étant centrale pour l’échange de données entre applications réseau, nous décrivons les aspects liés à la sécurité du XML. Cela inclut l’usage du XML dans les services Web et les messages SOAP, ainsi que les mesures de protection telles que la signature XML et le chiffrement XML, et aborde également les faiblesses de ces mécanismes de protection et les problèmes de sécurité spécifiques au XML, comme les injections XML, les attaques par entité externe XML (XXE), les bombes XML et les injections XPath.
Les participants qui assisteront à ce cours sauront
- Comprendre les concepts de base de la sécurité, de la sécurité informatique et du codage sécurisé
- Comprendre les exigences de la communication sécurisée
- Se familiariser avec les attaques et défenses réseau aux différentes couches OSI
- Avoir une compréhension pratique de la cryptographie
- Comprendre les protocoles de sécurité essentiels
- Comprendre certaines attaques récentes contre les systèmes cryptographiques
- Obtenir des informations sur certaines vulnérabilités récentes apparentées
- Comprendre les concepts de sécurité des services Web
- Accéder à des ressources et à des lectures complémentaires sur les pratiques de codage sécurisé
Public cible
Développeurs, Professionnels
Programmation sécurisée en C/C++
21 HeuresÉcrire du code C et C++ sécurisé exige une défense rigoureuse contre les exploitations malveillantes, la corruption de la mémoire et les contournements de validation des entrées. Ce programme examine les vulnérabilités courantes, notamment les dépassements de tampon, les utilisations après libération, les dépassements entiers et les confusions de type. Les participants appliquent les directives de programmation sécurisée, des outils d'analyse statique et des techniques de programmation défensive pour éliminer les faiblesses, imposer la sanitisation des entrées et livrer des logiciels durcis, résilients face aux cyberattaques.
Sécurité Java avancée
21 HeuresMême les programmeurs Java expérimentés ne maîtrisent pas nécessairement tous les services de sécurité proposés par Java, et ne sont pas non plus conscients des différentes vulnérabilités pertinentes pour les applications web écrites en Java.
Le cours – outre l’introduction des composants de sécurité de l’Édition Standard de Java – aborde les questions de sécurité de l’Édition Entreprise de Java (JEE) et des services web. La discussion des services spécifiques est précédée par les fondements de la cryptographie et de la communication sécurisée. Divers exercices traitent des techniques de sécurité déclaratives et programmables dans JEE, tandis que la sécurité au niveau du transport et de bout en bout des services web est discutée. L’utilisation de tous ces composants est présentée à travers plusieurs exercices pratiques, où les participants peuvent essayer par eux-mêmes les API et outils discutés.
Le cours examine également et explique les défauts de programmation les plus fréquents et graves du langage et de la plateforme Java, ainsi que les vulnérabilités liées au web. Outre les bogues typiques commis par les programmeurs Java, les vulnérabilités de sécurité introduites couvrent à la fois les problèmes spécifiques au langage et les problèmes découlant de l’environnement d’exécution. Toutes les vulnérabilités et les attaques pertinentes sont démontrées à travers des exercices faciles à comprendre, suivis des directives de codage recommandées et des techniques d’atténuation possibles.
Les participants suivant ce cours
- Comprendront les concepts de base de la sécurité, de la sécurité informatique et du codage sécurisé
- Apprendront les vulnérabilités web au-delà des OWASP Top Ten et sauront comment les éviter
- Comprendront les concepts de sécurité des services web
- Apprendront à utiliser diverses fonctionnalités de sécurité de l’environnement de développement Java
- Auront une compréhension pratique de la cryptographie
- Comprendront les solutions de sécurité de Java EE
- Apprendront les erreurs de codage typiques et comment les éviter
- Obtiendront des informations sur certaines vulnérabilités récentes du framework Java
- Obtiendront des connaissances pratiques sur l’utilisation des outils de test de sécurité
- Obtiendront des ressources et des lectures supplémentaires sur les pratiques de codage sécurisé
Audience
Développeurs
Développement sécurisé en .NET, C# et ASP.NET
14 HeuresDe nombreux langages de programmation sont disponibles aujourd'hui pour compiler du code vers les frameworks .NET et ASP.NET. Cet environnement offre des moyens puissants pour le développement sécurisé, mais les développeurs doivent savoir comment appliquer les techniques de programmation au niveau de l'architecture et du code afin d'implémenter les fonctionnalités de sécurité souhaitées, d'éviter les vulnérabilités ou d'en limiter l'exploitation.
Ce cours a pour objectif d'enseigner aux développeurs, à travers de nombreux exercices pratiques, comment empêcher le code non fiable d'exécuter des actions privilégiées, protéger les ressources grâce à une authentification et une autorisation robustes, fournir des appels de procédure à distance, gérer les sessions, proposer différentes implémentations pour certaines fonctionnalités, et bien plus encore.
L'introduction aux différentes vulnérabilités commence par la présentation de problèmes de programmation typiques commis lors de l'utilisation de .NET, tandis que la discussion sur les vulnérabilités d'ASP.NET traite également des divers paramètres d'environnement et de leurs effets. Enfin, le sujet des vulnérabilités spécifiques à ASP.NET ne se limite pas aux défis généraux de la sécurité des applications web, mais aborde également des problèmes particuliers et des méthodes d'attaque telles que l'attaque sur le ViewState ou les attaques par terminaison de chaîne.
Les participants suivant ce cours seront en mesure de
- Comprendre les concepts de base de la sécurité, de la sécurité informatique et du codage sécurisé
- Apprendre les vulnérabilités web au-delà des OWASP Top Ten et savoir comment les éviter
- Apprendre à utiliser diverses fonctionnalités de sécurité de l'environnement de développement .NET
- Acquérir des connaissances pratiques sur l'utilisation des outils de test de sécurité
- Apprendre à connaître les erreurs de codage typiques et comment les éviter
- Obtenir des informations sur certaines récentes vulnérabilités dans .NET et ASP.NET
- Obtenir des sources et des lectures complémentaires sur les pratiques de codage sécurisé
Public cible
Développeurs
Codage sécurisé en PHP
21 HeuresCe cours offre aux développeurs PHP les compétences essentielles pour rendre leurs applications résistantes aux attaques contemporaines via Internet. Les vulnérabilités web sont abordées à travers des exemples basés sur PHP, en allant au-delà du OWASP Top Ten, en traitant divers types d'injections, les attaques par injection de scripts, les attaques contre la gestion de session de PHP, les références directes d'objets non sécurisées, les problèmes liés aux téléchargements de fichiers, et bien d'autres. Les vulnérabilités liées à PHP sont présentées selon les types standards de vulnérabilités : validation d'entrée manquante ou incorrecte, gestion incorrecte des erreurs et exceptions, utilisation inappropriée des fonctionnalités de sécurité et problèmes liés au temps et à l'état. Pour ces derniers, nous discutons d'attaques telles que le contournement de open_basedir, les dénis de service par nombre flottant ou encore les attaques par collision de tables de hachage. Dans tous les cas, les participants se familiariseront avec les techniques et fonctions les plus importantes à utiliser pour atténuer les risques énumérés.
Une attention particulière est accordée à la sécurité côté client, en traitant des problèmes de sécurité liés à JavaScript, Ajax et HTML5. Plusieurs extensions de sécurité pour PHP sont introduites, comme hash, mcrypt et OpenSSL pour la cryptographie, ou Ctype, ext/filter et HTML Purifier pour la validation d'entrée. Les meilleures pratiques de durcissement sont expliquées en lien avec la configuration de PHP (définition du php.ini), Apache et le serveur en général. Enfin, une vue d'ensemble des outils et techniques de test de sécurité utilisés par les développeurs et testeurs est donnée, incluant des analyseurs statiques, scanners de sécurité, tests de pénétration, sniffers, serveurs proxy, outils de fuzzing et exploiteurs.
L'introduction des vulnérabilités ainsi que les pratiques de configuration sont soutenues par de nombreux exercices pratiques démontrant les conséquences des attaques réussies, montrant comment appliquer des techniques d'atténuation et introduisant l'utilisation des extensions et outils.
Les participants suivant ce cours seront
- En mesure de comprendre les concepts de base de la sécurité, la sécurité informatique et le codage sécurisé
- Capables d'apprendre les vulnérabilités web au-delà du OWASP Top Ten et de savoir comment les éviter
- Informés sur les vulnérabilités côté client et les pratiques de codage sécurisé
- Capables de comprendre pratiquement la cryptographie
- En mesure d'utiliser diverses fonctionnalités de sécurité de PHP
- Informés des erreurs de codage typiques et de comment les éviter
- Avertis sur les vulnérabilités récentes du framework PHP
- Capables d'utiliser des outils de test de sécurité avec une connaissance pratique
- Informés des sources et lectures complémentaires sur les pratiques de codage sécurisé
Audience
Développeurs
Fondamentaux de la SDL Microsoft
14 HeuresLa formation fondamentale sur la SDL combinée offre un aperçu de la conception, du développement et des tests de logiciels sécurisés via le Cycle de développement sécurisé (SDL) de Microsoft. Elle fournit une introduction de niveau 100 aux éléments de base constitutifs de la SDL, suivie de techniques de conception applicables pour détecter et corriger les vulnérabilités dès les premières étapes du processus de développement.
Concernant la phase de développement, le cours présente un aperçu des bogues de programmation courants liés à la sécurité, tant pour le code managé que natif. Les méthodes d'attaque sont exposées pour les vulnérabilités abordées, accompagnées des techniques d'atténuation associées, le tout illustré par une série d'exercices pratiques offrant aux participants une expérience de piratage en direct et interactif. Une introduction aux différentes méthodes de test de sécurité est suivie de la démonstration de l'efficacité de divers outils de test. Les participants pourront comprendre le fonctionnement de ces outils grâce à plusieurs exercices pratiques consistant à appliquer les outils au code vulnérable déjà étudié.
Les participants qui suivent cette formation
Comprendreont les concepts de base de la sécurité, de la sécurité des TI et du codage sécurisé.
Se familiariseront avec les étapes essentielles du Cycle de développement sécurisé (SDL) de Microsoft.
Apprendront les pratiques de conception et de développement sécurisées.
Acquerront des connaissances sur les principes de mise en œuvre sécurisée.
Comprendront la méthodologie des tests de sécurité.
- Obtiendront des sources bibliographiques et des lectures complémentaires sur les pratiques de codage sécurisé.
Public cible
Développeurs, Chefs de projet
Sécurité DevOps : Élaboration d'une stratégie de sécurité DevOps
7 HeuresLors de ce cours en présentiel et encadré par un formateur à <lieu>, les participants apprendront à formuler la stratégie de sécurité appropriée pour relever les défis de la sécurité dans un environnement DevOps.
DevSecOps en situation critique : Contamination, correction et renforcement
7 HeuresCet atelier de classe mondiale, à la fine pointe de la technologie et très pratique plonge les participants dans les réalités critiques de la sécurité des pipelines CI/CD modernes. Conçu pour les professionnels de la sécurité, les ingénieurs DevOps et les développeurs désireux de maîtriser la défense avancée contre les infiltrations de pipelines, cette formation combine des simulations d'attaques en direct avec des outils de pointe et des techniques de défense pratiques.
Ingénieur DevSecOps Certifié EC-Council (ECDE)
28 HeuresL'examen EC-Council Certified DevSecOps Engineer (ECDE) est une formation pratique conçue pour doter les professionnels des compétences nécessaires pour intégrer la sécurité tout au long du cycle de vie DevOps, permettant ainsi un développement logiciel sécurisé, de la planification au déploiement.
Cette formation en présentiel ou en ligne, dirigée par un instructeur, s'adresse aux professionnels du logiciel et de DevOps de niveau intermédiaire souhaitant intégrer des pratiques de sécurité dans les pipelines CI/CD, garantissant une livraison de code sécurisée et conforme.
À l'issue de cette formation, les participants seront en mesure de :
- Comprendre les principes et pratiques du DevSecOps.
- Sécuriser chaque étape du pipeline CI/CD à l'aide d'outils automatisés.
- Mettre en œuvre des pratiques de codage sécurisé et du scanning de vulnérabilités.
- Se préparer à la certification ECDE grâce à des laboratoires pratiques et à des révisions.
Format de la formation
- Conférences interactives et discussions.
- Utilisation pratique des outils DevSecOps dans des pipelines simulés.
- Exercices guidés axés sur le développement et le déploiement sécurisés.
Options de personnalisation de la formation
- Pour demander une formation personnalisée pour ce cours, adaptée aux workflows ou à la chaîne d'outils de votre équipe, veuillez nous contacter afin de convenir des détails.
Sécurité OWASP GenAI
14 HeuresFondée sur les dernières directives du projet OWASP GenAI Security, cette formation permet aux participants d'apprendre à identifier, évaluer et atténuer les menaces spécifiques à l'IA grâce à des exercices pratiques et des scénarios réels.
OWASP Top 10 2025
14 HeuresCette formation en direct, animée par un formateur à <lieu> (en ligne ou en présentiel), s'adresse aux développeurs web et aux dirigeants souhaitant explorer et mettre en œuvre la norme de référence OWASP Top 10 pour sécuriser leurs applications web.
À l'issue de cette formation, les participants seront en mesure d'élaborer des stratégies, de mettre en œuvre, de sécuriser et de surveiller leurs applications et services web en se basant sur le document OWASP Top 10.
Guide de test de sécurité Web OWASP
21 HeuresCette formation en direct dirigée par un instructeur à Canada (en ligne ou sur site) s'adresse aux développeurs, ingénieurs et architectes qui souhaitent appliquer le cadre, les principes et les techniques de test WSTG pour sécuriser leurs applications et services Web.
À la fin de cette formation, les participants seront capables de :
- Utiliser le WSTG pour mettre en œuvre des processus et techniques de test tout au long du cycle de vie du développement Web.
- Explorer différentes techniques de test afin de personnaliser le cadre WSTG en fonction des besoins de l'entreprise.
- Effectuer diverses méthodes de test de sécurité pour protéger les applications Web contre les risques et les attaques.
- Rédiger un rapport d'évaluation pour documenter les constatations et les résultats des tests de sécurité.
Développeur Java sécurisé (incluant OWASP)
21 HeuresCe cours aborde les concepts et principes de codage sécurisé avec Java, selon la méthodologie de test du projet Open Web Application Security Project (OWASP). Le Open Web Application Security Project est une communauté en ligne qui crée des articles, méthodologies, documentation, outils et technologies disponibles gratuitement dans le domaine de la sécurité des applications web.
Développement sécurisé .NET (y compris OWASP)
21 HeuresCe cours couvre les concepts et principes de codage sécurisé avec ASP.net selon la méthodologie de test du Open Web Application Security Project (OWASP). OWASP est une communauté en ligne qui crée des articles, méthodologies, documentation, outils et technologies gratuitement accessibles dans le domaine de la sécurité des applications web.
Ce cours explore les fonctionnalités de sécurité du .NET Framework et les façons de sécuriser les applications web.