Bienvenue dans ce cours vidéo sur la sécurité web !
Ce cours se focalise entièrement sur la sécurisation de sites web.
Nous passerons par la démarche classique du hacking éthique : apprendre et comprendre les attaques afin de nous en protéger concrètement.
Vous allez mettre en place un environnement de test avec des machines virtuelles Kali Linux,
Metasploitable et Windows 10 afin d’installer des
applications web volontairement vulnérables que l’on pourra attaquer sans rien casser.
Vous découvrirez les diverses failles web à travers des modules pratiques vous permettant de passer d’un niveau débutant à un niveau plus avancé.
Le cours est divisé en 10 sections :
1. Mettre en place un environnement de test
Vous allez installer Kali Linux, Metasploitable et Windows 10 en tant que machines virtuelles. La méthode d’installation a été simplifiée au maximum pour vous éviter toutes démarches fastidieuses.
2. Comprendre le fonctionnement d’un site web
Nous mettrons en place les fondations avant de continuer : comment fonctionne un site web et comment interagissent les divers composants, comment fonctionnent DNS, HTTP et HTTPS.
3. Comprendre la récupération d’informations et s’en protéger
Une étape trop souvent oubliée qui permet à un attaquant d’en apprendre beaucoup sur votre site web et sur votre organisation. Nous passerons en revue divers services et outils permettant à des attaquants de découvrir de précieuses informations sur vos produits et ressources. Vous saurez les utiliser sur vos sites avant qu’on ne le fasse contre vous et afin de corriger les problèmes en amont.
4. Comprendre l’injection SQL et s’en protéger
Nous passerons longuement en revue la faille web la plus populaire du moment. Vous découvrirez différentes façons de l’exploiter et comprendrez l’importance de non seulement vous en protéger mais en plus de bien savoir le faire.
5. Injection SQL avancée
Nous donnerons davantage d’exemples et nous expliquerons pourquoi les concepts de sécurité doivent bien être maîtrisés pour offrir une sécurité efficace et complète.
6. Comprendre les problèmes d’authentification et de session
Les vols de sessions, la faille CSRF (Cross site request forgery) et les bruteforces sont au programme de cette section. Vous obtiendrez des démonstrations de ces problèmes de sécurité ainsi que les moyens de vous en prémunir.
7. Comprendre les problèmes d’Inclusion de fichiers
Les failles LFI (Local File Inclusion) et RFI (Remote File Inclusion) aussi appelées « Faille Include » seront étudiées. Vous découvrirez que ce n’est pas parce qu’une faille n’est pas très connue qu’elle n’est pas très dangereuse…
8. Comprendre et éviter les Mauvaises configurations de sécurité
Dans cette section, nous allons regrouper les soucis courants liés à des mauvaises configurations de sécurité : la faille file upload permettant à un pirate d’uploader des fichiers arbitraires sur un serveur, le clickjacking, l’injection de commandes et le déni de service.
9. Comprendre et éviter la faille XSS (Cross-site scripting)
Probablement l’une des failles les plus connues qui permet à un attaquant d’injecter du script arbitraire dans des sites web vulnérables. Vous découvrirez les différentes possibilités d’exploitation et les contre-mesures.
10. Utilisation de composants vulnérables et scans automatisés
Il s’agit d’une section très importante dans laquelle on insistera sur la faille humaine qui rend toute notre infrastructure vulnérable. Démonstration avec un plugin vulnérable et un thème backdooré sous WordPress. Avec bien entendu des conseils de sécurité spécifiques à WordPress.
Nous passerons à l’exécution d’outils automatisés afin d’épauler le hacker éthique dans sa tâche de sécurisation de sites web.
14. Conclusion
Conclusion de ce cours et derniers conseils.
Le cours s’adresse aux débutants et initiés en priorité. Vous saurez à la fin de chaque session comment détecter et corriger concrètement les diverses vulnérabilités. Vous aurez également un quiz de fin de section et diverses ressources additionnelles pour compléter les vidéos.
Ce que vous saurez faire à la fin de ce cours :
• Comprendre et savoir détecter les failles web
• Comprendre comment corriger les problèmes de sécurité des applications web
• Comprendre le fonctionnement d’un site web
• Comprendre comment mettre en place un environnement de test volontairement faillible
• Et bien d’autres…
NOTE: Les systèmes, programmes et méthodologies de ce cours sont utilisés à but éducatif et préventif uniquement. Toutes les autorisations ont été reçues au préalable et toutes les précautions nécessaires ont été mises en place pour assurer un apprentissage légal et sans risque pour autrui. Vous restez cependant les responsables de vos actions et aucune responsabilité ne sera engagée quant à la mauvaise utilisation du contenu enseigné. En d’autres termes, ce cours n’est pas destiné aux apprentis pirates informatiques.
Crédits image : shutterstock.
Comprendre le fonctionnement d'un site web
-
1Pourquoi se mettre dans la peau d'un pirate ?
-
2Pourquoi sécuriser son site ?
-
3Installer Virtualbox et aperçu du Lab
-
4Installer Kali Linux en tant que machine virtuelle (màj 2020)
Identifiant : kali
Mot de passe : kali (à taper comme "kqli" dans l'écran de login)
-
5Installer Kali Linux sous macOS
-
6Agrandir la taille de fenêtre (Additions invité)
-
7CHECK LIST ANTI ERREURS
-
8Résolution d'erreurs avec Kali et Virtualbox
-
9Installer Metasploitable en tant que machine cible
-
10Installer Windows 10 en tant que machine cible
Mot de passe (si besoin) : Passw0rd!
-
11Connecter les machines entre elles
-
12Installation de XAMPP et Mutillidae 2
-
13Si vous rencontrez une erreur avec Mutillidae 2
La récupération d'informations
-
14AU SUJET DES VERSIONS DE KALI
-
15Comprendre l'architecture web
-
16Comprendre le fonctionnement de DNS jusqu'au résolveur
-
17Comprendre le fonctionnement de DNS après le résolveur
-
18Faire un exemple pratique avec DIG
-
19Comprendre le fonctionnement d'HTTP
-
20Comprendre le fonctionnement d'HTTPS
-
21Les types de vulnérabilités web (référentiel OWASP top 10)
-
22Quiz n°1
-
23Note importante avant de continuer
Comprendre l'injection SQL et s'en protéger
-
24Rechercher (et masquer) les informations WHOIS
-
25Faire une recherche WHOIS inversée
-
26Découvrir les technologies utilisées sur un site web avec BuiltWith
-
27Remonter dans l'historique d'un site web
-
28Rechercher des informations via DNS
-
29Maitriser le Google Hacking
-
30Utiliser Recon-ng pour le reconnaissance web
-
31Utiliser Maltego pour le reconnaissance web
-
32Quiz n°2
Injection SQL avancée
-
33Qu'est-ce que SQL ?
-
34Utiliser MySQL en ligne de commande sous Metasploitable
-
35Qu'est-ce que l'injection SQL ?
-
36Injections SQL et Dorks
-
37Injection SQL dans un champ password sous Metasploitable
-
38Injection SQL intermédiaire sous Metasploitable
-
39Exemple de sécurité contre la faille SQL
-
40Exploitation avec l'injection SQL
-
41Exploitation avec l'Injection SQL à l'aveugle
-
42Quiz n°3
Problèmes d'authentification et de session
Inclusion de fichiers
-
49Bruteforce de DVWA avec Hydra
-
50Comprendre les Vols de session, et contre-mesures
-
51Comprendre le Vol de session via le réseau et contre-mesures
-
52Comprendre la faille CSRF (Cross-site request forgery)
-
53Se protéger contre la faille CSRF
-
54Enumération des utilisateurs avec Burp Suite (Kali 64 bits uniquement)
NOTE : Burpsuite fonctionne uniquement sous Kali 64 bits !
-
55Quiz n°5