Evolution MM

Formations à l'informatique
Découvrez la différence ENI

Lien accueil

Téléchargez le Calendrier des formations

Nantes, Rennes, Niort, Nice, Paris

jusqu'à juillet 2018

Rechercher
Rechercher une formation
 

Sécuriser les applications PHP

Formation éligible au CPF

Dans cette formation vous apprendrez à développer des applications Web sécurisées en PHP. Après une présentation des différents types d'attaques et vulnérabilités des applications Web, vous mettrez en pratique les techniques de programmation permettant de les éviter. Vous apprendrez également à configurer une plateforme d'hébergement pour la sécurité des applications. Du codage à l'hébergement, toutes les clés vous seront données durant cette formation pour améliorer la sécurité de vos applications PHP.

Public :

  • Développeurs, architectes techniques, chefs de projet.

Objectifs :

  • Comprendre les vulnérabilités des applications Web ;
  • Appliquer des bonnes pratiques de codage pour éviter les principales attaques ;
  • Comprendre l'apport des frameworks et librairies PHP populaires, pour la sécurité ;
  • Sécuriser les éléments constituant d'une plateforme Web PHP : système, serveur Web, base de données.

Pré-requis :

  • Connaître le langage PHP, ou idéalement avoir suivi la formations " T44B-010 - Développement de sites Web dynamiques avec PHP et MySQL " ;
  • Une connaissance de la configuration du serveur Web Apache est un plus.

Contenu pédagogique

La sécurité informatique dans un contexte Web

  • Les différentes attaques et vulnérabilités des applications et sites Web
    • CSRF, XSS, SQL Injection, Remote Code Injection
  • Présentation des attaques et des contremesures associées
    • La théorie des techniques de contre-mesure
    • L'apport des frameworks de développement PHP pour la sécurité
  • Travaux pratiques :
    • Importation d'un projet d'application PHP vulnérable
    • Identification des failles dans l'application
    • Définition de la stratégie de sécurisation

Sécurisation du code

  • Les différents types d'attaques visant les failles du code PHP
  • Sécuriser le contenu des paramètres des requêtes HTTP
    • Paramètre register_globals
    • Remote et Local File Include
  • La gestion des sessions
    • Par les cookies
    • Par les en-têtes
    • Renouvellement de l'identifiant de session
  • La conception et traitement des formulaires
    • XSS
    • CSRF
    • Les uploads
  • La protection du code SQL
    • Les requêtes paramétrées
  • Le spam
  • Se prémunir contre :
    • Les authentifications en force brute
    • Les attaques par déni de service avec les quotas
    • Le Phishing
  • Travaux pratiques :
    • Applications des contre-mesures aux différentes fonctionnalités de l'application
    • Utilisation des mécanismes de PHP pour la sécurisation des formulaires, de l'accès aux données et du transfert de fichiers

Sécurisation de la plateforme

  • Sécurisation des éléments logiciels vis-à-vis de l'OS
    • Les groupes d'utilisateurs
    • Les permissions sur les fichiers
  • Sécurisation du serveur Web
    • Le cas du serveur Apache
  • Les paramètres d'initialisation de PHP
    • Les différentes directives du fichier php.ini
    • Les localisations de définition des directives
    • Utilisation des directives PHP dans la configuration d'Apache
  • Le cas de l'hébergement mutualisé
    • Utilisation des directives PHP pour les hôtes virtuels
  • Travaux pratiques :
    • Création d'un hôte virtuel pour l'hébergement d'une application PHP
    • Définition des paramètres de sécurisation des sessions, des fichiers transférés

Les bonnes pratiques

  • Les patterns de programmation
  • La gestion des mots de passe
    • Fonctionnalités de cryptage disponible dans PHP
  • Les frameworks
    • La prise en charge des contre-mesures dans les librairies et frameworks PHP
  • Travaux pratiques :
    • Présentation de librairies et frameworks PHP et des leurs fonctionnalités natives pour la sécurisation des applications


Modalité et moyens pédagogiques, techniques et d'encadrement

  • Formation avec un formateur, dans une salle dédiée à la formation, équipée d'un vidéoprojecteur, d'un tableau blanc et d'une solution de visio-conférence dans le cas des formations suivies en in-classTM (présentiel à distance). Le nombre de stagiaires peut varier de 1 à 12 personnes (5 à 6 personnes en moyenne), ce qui facilite le suivi permanent et la proximité avec chaque stagiaire.
  • Chaque stagiaire dispose d'un poste de travail adapté aux besoins de la formation, d'un support de cours et/ou un manuel de référence au format numérique ou papier (pour les sessions inter-entreprises, dans le cas où le support de cours officiel est en anglais, nous offrons en complément, s'il existe, un ouvrage de référence des Editions ENI au format numérique rédigé en français).
  • Pour une meilleure assimilation, le formateur alterne tout au long de la journée les exposés théoriques, les démonstrations et la mise en pratique au travers d'exercices et de cas concrets réalisés seul ou en groupe. La répartition du temps entre la théorie et la pratique est mentionnée dans le plan de cours.

Modalités d'évaluation des acquis

  • L'évaluation des acquis se fait tout au long de la formation au travers des différents travaux dirigés et travaux pratiques réalisés par le stagiaire.
  • En complément, pour les stagiaires qui le souhaitent, certaines formations peuvent être validées officiellement par un examen de certification. Pour les formations concernées, l'examen est mentionné dans la zone " Commentaire " du programme de formation. Les candidats doivent produire un travail personnel important en vue de se présenter au passage de l'examen, le seul suivi de la formation ne constituant pas un élément suffisant pour garantir un bon résultat et/ou l'obtention de la certification.

Moyens de suivi d'exécution et appréciation des résultats

  • Feuille de présence, émargée par demi-journée par chaque stagiaire et le formateur ;
  • Evaluation qualitative de fin de formation, qui est ensuite analysée par notre équipe pédagogique ;
  • Attestation de fin de formation, remise au stagiaire en main propre ou par courrier électronique.

Qualification du formateur

  • La formation est animée par un professionnel de l'informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique. Il est en veille technologique permanente et possède plusieurs années d'expérience sur les produits, technologies et méthodes enseignés. Il est présent auprès des stagiaires pendant toute la durée de la formation.