formations/developpement/plan_formation_logomotion.md

5.8 KiB

Logomotion 2017 - Formations

Sessions prévues

  • Remise à niveau Symfony pour 3 personnes - 2 jours
  • Introduction aux frameworks javascript pour le développement web - 1 jour
  • Formation framework web (ex: Angular 2) - 3 jours
  • Sécurité des applications web - 2 jours
  • Démarche audit de sécurité des applications web - 2 jours

Plans de formation

Remise à niveau Symfony

Jour 1: Rappels des fonctionnalités

  • Les principales nouveautés de Symfony 3
  • Structure d'un projet, générateurs et "bundles"
    • Notion de bundles
    • Configuration d'un bundle
    • Creation & utilisation des commandes
    • Le générateur
  • Le routage et les contrôleurs
    • Filtrage des verbes HTTP
    • Routage vers les actions de contrôleurs
  • Authentification et autorisation
    • Firewall & ACL
    • Gestion des rôles utilisateur
    • Méthode d'authentification personnalisée
  • Les vues et le moteur de templating Twig
    • Syntaxe Twig
    • Notion d'héritage
    • Gestion de la sécurité
    • Étendre Twig
  • Les formulaires
    • Création et traitement de formulaires
    • Validation des données
    • Les évènements
  • L'ORM Doctrine et le modèle de données
    • Concept d'ORM
    • Entité & Dépôt
    • Les évènements
  • Mise en production
    • Gestion des environnements
    • Cache applicatif

Jour 2: Mise en application

Le 2ème jour est dédié à la mise en pratique des concepts vus pendant le jour précédent.

Un cahier des charges d'une application prévue pour exploiter l'ensemble des éléments traités par la formation sera proposé aux apprenants.

Le formateur les accompagnera durant l'ensemble des travaux.

Introduction aux frameworks javascript pour le développement web

#### Jour 1: Frontend

  • Angular 2 (3 heures)
    • Présentation générale et historique
    • Structuration d'un projet et générateurs
    • Concepts principaux
    • Travaux pratiques
  • React/Redux (3 heures)
    • Présentation générale et historique
    • Concepts généraux de React
    • L'architecture "Flux" et Redux
    • Travaux pratiques

Jour 2: Backend

  • ExpressJS (3 heures)
    • Présentation générale et historique
    • Routage
    • Intégration de moteurs de templates
    • Gestion des formulaires
    • Travaux pratiques
  • Sails (3 heures)
    • Présentation générale et historique
    • Structuration d'un projet et générateurs
    • Concepts principaux
    • Travaux pratiques

Formation framework web (plan généraliste)

Jour 1: Concepts principaux et prise en main

  • Présentation du framework et historique
  • Structure d'un projet et générateurs
  • Gestion du routage applicatif
  • Modèle de données
  • "Templating" et modèle de données

Jour 2: Fonctionnalités avancées et communauté

  • Création et gestion des "composants" et mutualisation
  • Tests unitaires et fonctionnels
  • Gestion de l'authentification
  • Gestion de l'autorisation
  • Mise en production

Jour 3: Mise en application

Le 3ème jour est dédié à la mise en pratique des concepts vus pendant les deux jours précédents.

Un cahier des charges d'une application prévue pour exploiter l'ensemble des éléments traités par la formation sera proposé aux apprenants. Le formateur les accompagnera durant l'ensemble des travaux.

La réalisation nécessitera l'implémentation de fonctionnalités récurrentes dans le domaine applicatif web, notamment:

  • Routage applicatif
  • Authentification
  • Gestion des autorisations
  • Opérations CRUD sur des entités métier
  • Téléversement de fichiers
  • Communication AJAX/Websockets

Sécurité des applications web

Jour 1: Sécurité de l'applicatif

  • Présentation du collectif OWASP (15 minutes)
  • Le "top 10" des failles des applicatifs Web (4 heures)
    • Injections
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Authentification faillible et mauvaise gestion de la session
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Cross Site Scripting (XSS)
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Mauvaise contrôle des accès
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Problèmes de configuration
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Fuite d'informations sensibles
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Cross Site Request Forgery (CSRF)
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
    • Mauvaise politique de maintenance des composants techniques
      • Contexte et scénarios d'exploitation
      • Techniques de mitigation
  • Supervision applicative (2 heures 30)
    • Installation et configuration de Prometheus
    • Métrologie de l'applicatif et des processus métiers
    • Création d'alertes

Jour 2: Sécurité de l'infrastructure

  • Configuration des serveurs HTTP - Apache2 et Nginx (3 heures)
    • Prévention de la fuite d'informations
    • Configuration des connexion SSL/TLS
  • Supervision et détection d'intrusion (3 heures)
    • Supervision du systèmes avec Monit
      • Installation
      • Configuration et usage
    • Détection et prévention des intrusions
      • Apache2 - mod_security
      • fail2ban - NIDS simplifié

Démarche audit de sécurité des applications web

Jour 1: Principes et concepts de l'audit de sécurité

  • Les différents types d'audit (30m)
    • "Black Box"
    • "Grey Box"
    • "White Box"
  • La démarche en mode "white box" avec le référentiel OWASP (5 heures 30)
    • Identification du périmètre
    • Récupération des informations d'amorçage de l'action
    • Verrouillage de l'environnement
    • Audit
    • Création du rapport
    • Accompagnement post-audit

Jour 2: Étude de cas

Mise en application des éléments vu le jour précédent sur une application Web sélectionnée pour illustrer les différentes problématiques de la procédure d'audit (6 heures)