Objectifs pédagogiques / Compétences visées
- Reconnaître les mécanismes de sécurité de .NET
- Expliquer les principales failles de sécurité applicative
- Mettre en oeuvre Code Access Security et Role Based Security
- Sécuriser des Assembly
- Authentifier et autoriser l'accès aux applications ASP.NET
- Chiffrer des données avec le Framework .NET.
Niveau requis
Avoir des connaissances en développement d'application en langage .NET ou langage assimilé.
Public concerné
Pentesters et développeurs.
Programme
Jour 1
Sécurité du Framework .NET
- Sécurité à l'exécution
- Namespace permissions
- Sandbox Environments
- Code Access Security
- Principales permissions (core, IO, Network et UI)
- Permission Attribute
- APTCA (AllowPartiallyTrustedCallersAttribute)
Chiffrement en C#
- Bases du chiffrement
- Windows Data Protection et File. Encrypt
- Algorithmes symétriques type AES
- Algorithme asymétrique RSA
- Fonctions à sens unique type SHA ou MD5
- Génération de clés
- Génération de certificats
- Authentification Web
- HTTP basic
- FormsAuthenticationModule
- Integrated Windows Authentication
- Méthode Application_AuthenticateRequest
- Rôles et permissions
- UrlAuthorizationModule
- Security Attributes
Exemple de travaux pratiques (à titre indicatif)
- Challenge de cryptographie
Jour 2
Sécurité applicative
- Sécurité réseau et sécurité applicative
- Firewall, proxy et DMZ
- Anatomie d'une faille applicative
- Open Web Application Security Project
- Le Top 10 OWASP
Tester les failles d'une application
- Anatomie d'une faille applicative
- Open Web Application Security Project
- Le Top 10 OWASP
- CVE (Common Vulnerabilities and Exposures)
- CWE (Common Weakness Enumeration)
- CVSS (Common Vulnerability Scoring System)
Exemple de travaux pratiques (à titre indicatif)
- Installation de Web Goat et ESAPI
Jour 3
- Failles et remèdes
- Injections SQL
- Cross Site Scripting
- Détournement de sessions
- Référence directe par URL
- Cross Site Request Forgery
- La faille sur les API
- IDOR
- SSRF
Exemple de travaux pratiques (à titre indicatif)
- Challenge Client et Serveur
Mettre en place du Secure Code
- Créer une checklist des bonnes pratiques pour son application
- Ajouter un analyse des risques
- Durcir son application avec OWASP ASVS
- Utiliser les bons outils
- DAST (Dynamic Application Security Testing)
- SAST (Static Application Security Testing)
- WAF (Web Application Firewall)
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)