Exploitation d'une plateforme
d’apprentissage des vulnérabilités des applications web
Propriétés
|
Description
|
Intitulé long
|
Exploitation d'une plateforme d'apprentissage
des vulnérabilités des applications web
|
Intitulé court
|
Sécurisation des applications web
|
Formation concernée
|
BTS Services Informatiques aux
Organisations
|
Matière
|
Bloc 3 :
Cybersécurité des services informatiques en deuxième année SLAM
|
Présentation
|
Cet atelier a pour objectif d'exploiter la
plateforme d'apprentissage Mutillidae (OWASP) afin de se
familiariser avec les principales vulnérabilités des applications
web.
Chaque activité couvre une problématique
spécifique (SQLi, XSS, CSRF…) en référence au top 10 des
vulnérabilités décrites par l'OWASP (page 4).
Dans un premier temps, Vous devez réaliser les
attaques associées à chaque vulnérabilité.
Dans un deuxième temps, l’objectif est
d’analyser et de comprendre les codes sources des scripts présentés
dans leur forme non sécurisée puis sécurisée en tant que
contre-mesure.
|
Notions
|
Activités supports de l’acquisition des compétences
D4.1 –
Maintenance d'une solution applicative
●
A4.2.1 Analyse et correction d'un dysfonctionnement, d'un problème
de qualité de service ou de sécurité.
Savoir-faire
●
Programmer un composant logiciel.
●
Adapter un composant logiciel.
●
Valider et documenter un composant logiciel.
Savoirs
associés
●
Techniques de sécurisation.
|
Prérequis
|
Commandes de
base d’administration d’un système Linux, langages PHP et
JavaScript.
|
Outils
|
Deux machines
virtualisées (sous Virtualbox) sont fournies avec Linux (Debian 9)
comme système d’exploitation.
Site
officiel : https://www.owasp.org
|
Mots-clés
|
OWASP, Mutillidae, BurpSuite, vulnérabilités,
SQLi, XSS.
|
Durée
|
Une heure de présentation et une heure environ
pour chaque activité.
|
I.
Introduction..................................................................................
2
1. La sécurité
des applications web.................................................
2
1.1.1.I.1.1...............................................
Les applications web sont partout
2
1.1.1.I.1.2..........................
La sécurisation des applications web est indispensable...............................................................................
2
2. Les motifs
des attaques.............................................................
3
II.
Présentation d'OWASP................................................................
3
1. La communauté
OWASP............................................................
3
2. Le top 10
d'OWASP...................................................................
4
Aujourd'hui, les applications web sont partout.
Elles sont utilisées quotidiennement dans nos activités
personnelles ou professionnelles (réseaux sociaux, achats en
lignes, démarches administratives…). Toute entreprise ou
administration se doit d'avoir un site web. Ces applications
facilitent les échanges et les transactions car elles sont
accessibles de partout à l'aide d'un simple navigateur sur un
smartphone ou un ordinateur de bureau.
Si au début des sites web, les aspects
techniques et fonctionnels étaient suffisants, ce n'est plus du
tout le cas aujourd'hui. L'actualité nous rappelle régulièrement
que des entreprises voient leur site web attaqué. Les conséquences
peuvent être lourdes (perte de données, baisse du chiffre
d'affaire, effondrement de la réputation…). Avec comme enjeu, la
survie de l'entreprise selon la gravité de l'attaque subie.
En outre, Le règlement règlement général sur
la protection des données (RGPD), mis en place au sein
de l’Union Européenne, oblige les entreprises à assurer la sécurité
des données personnelles qu’elles collectent.
La sécurité des applications web est donc
devenue un enjeu stratégique. Lors de son édition 2016, la société
EY (http://www.ey.com/fr) a montré qu'une majorité des entreprises
mondiales n'a pas de stratégie en matière de lutte contre les
cybermenaces.
Au delà de l'aspect fonctionnel des outils de
développement, il est indispensable pour tout développeur de savoir
identifier les vulnérabilités potentielles et de prendre en compte
les menaces en adaptant son développement à l'aide de bonnes
pratiques. La phase de test ne doit pas se limiter au
fonctionnement attendu du code mis en œuvre mais elle doit aussi
anticiper les utilisations malveillantes comme les injections de
code SQL dans les formulaires.
Afin de mettre en place une veille stratégique
sur la sécurisation des applications web, le groupe OWASP a
développé une base de données qui recense la liste des incidents de
sécurité recensés sur les applications web. Cette base nommée
WASC-WHID (Web application Security Consortium - Web Hacking
Database Project) permet de disposer de statistiques sur les
failles de sécurité relevées sur les applications web. Les
incidents sont déclarés et enregistrés afin d’alimenter une base de
connaissance.
Le lien permettant d’accéder aux outils WHID
est le suivant :
https://www.owasp.org/index.php/OWASP_WASC_Web_Hacking_Incidents_Database_Project
Les sites web peuvent être attaqués pour
plusieurs raisons :
MOTIFS
|
EXPLICATIONS
|
Propagande
|
Certaines personnes peuvent attaquer un site
pour des raisons politiques ou pour défendre une cause particulière
(hacktivistes).
|
Distraction
|
Des personnes peuvent voir dans l'attaque de
sites web une distraction ou un défi à relever.
|
Vol de données
|
Le vol de données lucratif, pour effectuer du
chantage ou pour copier le savoir d'un concurrent sur un
marché.
|
Machine zombie
|
Le serveur cible est utilisé dans un réseau
destiné à faire des attaques distribuées par déni de service
(DDOS), du stockage de fichiers illégaux, de l’envoi de spams …
|
OWASP (Open Web Application Security project)
est une communauté travaillant sur la sécurité des applications
web. Elle a pour but de publier des recommandations de sécurisation
des sites web et propose des outils permettant de tester la
sécurité des applications web.

Site
officiel : https://www.owasp.org/
OWASP fournit une liste des risques de sécurité
des applications web les plus courants. En 2017, OWASP a mis à jour
son classement afin de sensibiliser les développeurs web aux
risques encourus. Les 10 risques classés par ordre de dangerosité
sont les suivants :
RISQUES
|
DÉFINITIONS
|
ACTIVITÉS
|
A1
|
INJECTION
|
Correspond au risque d'injection SQL
(SQLi).
|
1
|
A2
|
BROKEN AUTHENTICATION AND SESSION MANAGEMENT
|
Correspond au risque de
casser la gestion de l’authentification et de la session. Comprend
notamment le vol de session (session hijacking) ou la récupération
de mots de passe.
|
2
|
A3
|
CROSS SITE SCRIPTING (XSS)
|
Correspond au XSS soit
l’injection de contenu dans une page, ce qui provoque des actions
non désirées sur une page Web. Les failles XSS sont
particulièrement répandues parmi les failles de sécurités Web.
|
3
|
A4
|
INSECURE DATA OBJECT REFERENCE (IDOR)
|
Correspond aux failles de
sécurité des identifiants (ID) de données visualisées. Nécessite de
mettre en place un contrôle d’accès aux données.
|
4
|
A5
|
SECURITY MISCONFIGURATION
|
Correspond aux failles de
configuration liées aux serveurs Web, applications, base de données
ou framework.
|
5
|
A6
|
SENSITIVE DATA EXPOSURE
|
Correspond aux failles de
sécurité liées aux données sensibles comme les mots de passe, les
numéros de carte de crédit ou encore les données personnelles et la
nécessité de crypter ces données.
|
6 ?
|
A7
|
MISSING FUNCTION LEVEL ACCESS CONTROL
|
Correspond aux failles de
sécurité liées aux accès non souhaitables à une fonctionnalité.
|
7 ?
|
A8
|
CROSS SITE REQUEST FORGERY
|
Correspond aux failles
liées à l’exécution de requêtes à l’insu de l’utilisateur.
|
8 ?
|
A9
|
USING COMPONENT WITH KNOWN VULNERABILITIES
|
Correspond aux failles
liées à l’utilisation de composants tiers.
|
9 ?
|
A10
|
UNVALIDATED REDIRECTS AND FORWARDS
|
Correspond aux failles liées aux
redirect et forward générique des
applications.
|
10 ?
|