Plan du cours
Fondements de la sécurité informatique et du codage sécurisé
- Fondamentaux de la modélisation des menaces : STRIDE, surfaces d'attaque et vecteurs d'élévation de privilèges
- Intégration au cycle de développement logiciel sécurisé (SDLC) : décalage vers la gauche (shift left), revues de conception conscientes des menaces et défense en profondeur
- Principe du moindre privilège, défense par contrat et configurations par défaut sécurisées
- Atelier : Cartographier un microservice .NET vers un modèle de menace et identifier les contrôles architecturaux
Sécurité des applications web dans ASP.NET
- Pipeline de requête ASP.NET, ordre d'exécution des middleware et points d'interception des filtres
- Risques du protocole HTTP : injection d'en-têtes, détournement de requêtes (request smuggling) et configurations incorrectes de CORS
- Gestion des sessions, persistance de l'état et meilleures pratiques de sécurité des cookies
- Appels de procédure à distance sécurisés et modèles de consommation d'API externes
- Lab : Exploiter et corriger une chaîne de middleware vulnérable dans une application ASPNET exemple
Architecture de sécurité et services intégrés de .NET
- Modèle de sécurité du CLR : preuves, permissions et évolution de la sécurité d'accès au code (CAS)
- ASP.NET Core Identity, schémas d'authentification et sécurité basée sur les jetons (JWT, OAuth2, OpenID Connect)
- API Data Protection : chiffrement, rotation des clés et sérialisation sécurisée des données
- Primitives cryptographiques dans .NET : RNG, hachage, chiffrement symétrique/asymétrique et validation des signatures
- Lab : Implémenter l'émission de jetons sécurisée, la rotation des clés et la protection des données à travers les limites d'un microservice
Erreurs de codage courantes, vulnérabilités et atténuation
- Attaques par désérialisation, falsification du ViewState et pièges liés à la terminaison/dépassement de chaînes dans .NET
- Dérive de configuration : web.config/appsettings.json, exposition des variables d'environnement et gestion des secrets
- Vecteurs d'injection : SQL, commande, XSS et LDAP dans l'accès aux données et le routage en C#
- Défauts insécurisés, codage en dur et gestion incorrecte des erreurs entraînant des fuites d'informations
- Lab : Ré-ingénierie inverse d'un module .NET vulnérable, application de modèles sécurisés et validation des correctifs avec des analyseurs statiques/dynamiques
Tests de sécurité, validation et amélioration continue
- Tests statiques de sécurité des applications (SAST) : analyseurs Roslyn, Security Code Scan et intégration CI/CD
- Tests dynamiques de sécurité des applications (DAST) : OWASP ZAP, workflows Burp Suite et analyse automatisée
- Protection en runtime : garde-fous applicatifs, pratiques de sécurité mémoire et journalisation/audit sécurisés
- Gestion des correctifs, suivi des dépendances et réponse aux avis de sécurité de .NET/ASP.NET
- Lab : Construire une porte de sécurité pré-commit et pipeline pour une solution .NET
Ressources de connaissances et écosystème de développement sécurisé
- Directives officielles de sécurité Microsoft, documentation sur la sécurité de .NET et références de durcissement d'ASP.NET
- Bases de données CVE, flux d'avis et workflows de divulgation responsable pour les dépendances open source
- Écosystèmes de bibliothèques sécurisées : PGP, crypto-ops, échafaudages d'authentification et cryptographie conforme
- Établissement de normes internes de codage sécurisé, activation des développeurs et programmes de champions de la sécurité
- Atelier : Création d'une boîte à outils de développement sécurisé personnalisée et établissement de pratiques de surveillance continue
Pré requis
- Maîtrise solide de la programmation en C# et des fondamentaux du framework .NET
- Familiarité avec le développement web ASP.NET (Razor Pages, MVC ou Minimal APIs)
- Compréhension des concepts de base d'HTTP, du routage et des serveurs web
- Aucune certification préalable en sécurité n'est requise, mais une expérience en développement en production est attendue
Nos clients témoignent (5)
Très bien pour comprendre comment un pirate informatique pourrait analyser des sites pour détecter leurs faiblesses et les outils qu'il pourrait utiliser.
Roger - OTT Mobile
Formation - .NET, C# and ASP.NET Security Development
Traduction automatique
les blagues ringardes. J'adore la session de deux jours parce que les laboratoires sont géniaux.
Kevin Galacgac - Human Edge Software Philippines, Inc.
Formation - .NET, C# and ASP.NET Security Development
Traduction automatique
Le formateur est vraiment en phase avec nous et s'assure que personne ne soit laissé de côté sur le sujet actuel. Il explique bien chaque sujet et fournit un exemple facile à comprendre.
Edgarico Llaneta - Human Edge Software Philippines, Inc.
Formation - .NET, C# and ASP.NET Security Development
Traduction automatique
La formation pratique et les exemples.
Lord-Sam Lamparero - Human Edge Software Philippines, Inc.
Formation - .NET, C# and ASP.NET Security Development
Traduction automatique
I was benefit from the exercises (SQL injection, XSS, CRSF. .).