Réseaux TCP/IP - Auditer et sécuriser un site Web

Référence : RES-NF-SV-WEB

Avant toute mise en ligne d'une application Web celle-ci devrait faire l'objet d'un audit de sécurité afin de vérifier qu'elle ne présente pas de faille majeure.

Infos pratiques

  • Durée : 4 jours soit 28 heures
  • Population visée : Développeurs et administrateurs de sites et serveurs Web.
  • Public concerné : Toute personne souhaitant auditer une application Web et mettre en place des contres mesures pour se prémunir des attaques

Programme

Objectifs pédagogiques

A l’issue de cette formation, l’apprenant sera capable de :

  • Auditer une application Web par un test de pénétration à l'aide d'outils automatiques mais aussi manuellement ;
  • Mettre en place des contres mesures pour se prémunir des attaques.

Pré-requis

  • Notion de développement d'application Web ;
  • Connaissances de base sur Apache, PHP et MySQL ;
  • Bases d'utilisation de Linux.

Objectifs opérationnels et contenu de la formation

Les technologies du Web

  • Historique
  • Les langages les plus utilisés
  • Les Frameworks
  • Les CMS

Tour d'horizon des attaques sur le Web

  • Qui ? Pourquoi ? Comment ?
  • Les cibles les plus courantes

Classification des attaques Web

  • Présentation de l'OWASP
  • Classification des dix attaques les plus courantes

Installation d'un serveur LAMP

  • Installation
  • Tour d'horizon des éléments de sécurité dans les fichiers de configuration
  • Fichiers de configuration d'apache
  • Fichier de configuration de PHP
  • Fichier de configuration de MySQL

 

Passage des contrôles côté client

  • Les outils inclus dans les navigateurs
  • Utilisation d'un proxy local (ZAP, BurpSuite)
  • Utilisation d'addons (Tamper Data, Web developper, etc)
  • Débogage de JavaScript (principe d'obfuscation)
  • Bonne pratique et règle de sécurité pour les contrôles côté client

Technique d'hameçonnage par injection dans l'URL

Les failles XSS

  • Faille XSS reflétées
  • Faille XSS stockées
  • Exemple de récupération de session
  • Se prémunir des failles XSS

Passage d'authentification

  • Les bonnes pratiques
  • Gérer correctement les IDs de session
  • Politiques des mots de passe
  • Les authentifications HTTP

Les injections SQL classiques

  • Rappels sur les bases de données
  • Principe des injections SQL
  • Exemples et exercices pratiques

Les injections SQL en aveugle

  • Principe
  • Exploitation
  • Exemples et exercices

Détection et exploitation des injections SQL

  • Par des outils automatiques
  • Manuellement

Se prémunir des injections SQL

La faille Include

  • Exploitation d'une faille include
  • Bonnes pratiques pour se prémunir des failles includes

La faille Upload

  • Passage des extensions et types MME
  • Mise en place d'un shell
  • Saturation du serveur
  • Contre mesure

Les outils d'audit automatiques

  • ZAP
  • W3AF
  • Acunetix
  • Burpsuite

Interprétation et vérification des résultats

  • Interpréter les résultats d'un outil automatique
  • Vérifier la véracité des alertes remontées

Synthèse des bonnes pratiques pour la réalisation d'une application Web

Méthodes et moyens

  • Explications théoriques suivies de pratiques guidées puis mises en autonomie
  • Stage en mode « In Class » : 2 téléviseurs et 1 caméra HD par salle
  • 1 vidéoprojecteur par salle
  • 1 ordinateur par stagiaire

Méthodes d’évaluation des acquis

  • Exercices de synthèse et d’évaluation
  • Evaluation de fin de stage

Profil formateur

Nos formateurs sont certifiés à l’issue d’un parcours organisé par nos soins. Ils bénéficient d’un suivi de compétences aussi bien au niveau technique que pédagogique.

Support stagiaire

  • Support papier ou électronique (dématérialisé)
  • Les exercices d’accompagnement peuvent être récupérés sur clef USB