Aborde en profondeur les aspects de la sécurité du développement sous différents axes
Programme
HACK1
- Introduction et fondements
- Vue d’ensemble de la sécurité applicative
- Comment évaluer la sécurité (connaître l’ennemi, Préparer ses défenses, contrôler son travail)
- Definitions
- Les tests d’intrusion
- Méthodologie et outils
- Classification des risques
- Exploitation
- Guide de test OWASP
- Notions connexes (whitebox / blackbox) et analyse de risque.
HACK2
- La pratique – le laboratoire permettra à l’étudiant d’attaquer un serveur en combinant plusieurs vulnérabilités vues lors de la première session. Le but étant d’obtenir les droits administrateur du système d’exploitation du serveur
- Chaque étudiant aura sa cible et sa machine d’attaque
CODE1
- Introduction
- La sécurité des applications : Les attaques et les défenses
- Les règles à respecter pour développer de manière sécurisée
- Analyse des erreurs classiques
- Protection et classification des données par sensibilité
- Comment intégrer proprement une matrice d’autorisation dans un logiciel
- Avantages des outils modernes (Frameworks) dans la sécurité applicative actuelle
CODE2 et CODE3 (Labos)
- Apprentissage de l’identification les erreurs logicielles classiques dans un code source
- Travaux pratiques avec les outils Jenkins, SonarQube et TFS pour construire un ensemble de métriques permettant de mesurer la qualité d’un code source
- Une deuxième phase de travaux pratiques visera à diminuer le temps de déploiement dans une optique DevOps et en évaluer les impacts sécurité.
- Le laboratoire sera orienté vers l’analyse statique et dynamique du code afin de couvrir les différentes branches de la sécurité avant une mise en production
HTML5
- Nouveautés HTML5
- Nouveautés HTTP 2.0
- Exemples pratiques :
- Web browser fingerprint
- Attaques cotés client : quels sont les risques de Javascript et les limites de la détection antivirus
SSDLC1
- En quoi consiste le Secure Software Development Life Cycle (SSDLC) ?
- Comment mettre en place un SSDLC ?
- Vue d’ensemble de l’OWASP Open SAMM
- Pourquoi utiliser ce référentiel pour votre SSDLC ?
- Comment utiliser Open SAMM ?
- Exemples pratiques :
- Choisir les bonnes pratiques de sécurités en fonction de “Security Practices” en fonction du contexte
- Définir une roadmap
DB1 : Sécurisation des bases de données
- Chiffrement
- Système de chiffrement
- Gestion des clés
- Accès en RAM
- Sécurité du système d’exploitation
- Accès
- Database firewall
- Logs d’accès/Audit
- Injections SQL/NoSQL
- Droits du DBMS
- Droits dans le DBMS
HOST1
- Introduction
- Contexte
- Définitions
- Méthodologie
- Hardening Guide
- Scenarii
- Environnement Java
- Environnement Tomcat
- Référentiel de test OWASP
- Approches de sécurisation : surface d’attaque et exploitabilité.
- Validation des différentes phases de sécurisation
- Intégration du serveur dans une démarche de sécurisation globale.
- Différences Linux/Unix/Windows
HOST2 (Labos)
- L’étudiant validera les impacts du hardening sur un serveur d’application
- En tant qu’attaquant, les différentes limitations induitent par la sécurisation avancée, impliquent une limitation des possibilités d’exploitation, l’étudiant en verra les différents effets dans l’architecture Java