Академический Документы
Профессиональный Документы
Культура Документы
Ateliers d’une
application Web
vulnerable
2 Ateliers et vulnérabilities
OWASP's Top 10 Vulnerabilities,
3 file upload
Étude de la faille et solutions
Plan 4 csrf
Étude de la faille et solutions
5 xss
Étude de la faille et solutions
6 Conclusion
2
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
DVWA
Présentation de l’atelier
TOP-10
3
5
4
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File
upload
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Étapes d’accès a l’outil
Configuration
Authentification
Installation
une faille de type File Upload est exploitée lorsqu’un pirate se sert de la possibilité de charger un fichier sur le serveur à des fins non prévues.
6
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Types de fichiers autorisés
Après avoir téléchargé un fichier de test, il affichera le chemin du répertoire où votre fichier a été téléchargé avec succès
"hackable/uploads/"
7
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Exemple d’exploit de la faille File Upload
Avec la sécurité basse DWVA accepte tout type de fichier, on va voir après
comment corriger cette faille.
8
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Scripts Shell C99
A travers ce Shell, on peut tout faire pour un serveur Unix. En d’autres termes il nous permet de prendre le contrôle d’un serveur.
9
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau low :
On remarque bien que ce code ne contient aucun contrôle sur le fichier à uploader !
10
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau medium :
À ce niveau, on remarque le code contient désormais deux contrôles sur le fichier ; un contrôle sur le type et un second sur la taille.
11
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau medium (changement d’extension):
Mais cela reste insuffisant car on peut renommer le fichier et ajouter une extension image
12
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau medium (changement d’extension)
On voit bien que l’application n’accepte pas le fichier Mais si on renomme le fichier comme suit shell.php.jpeg
13
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau medium (changement d’extension)
14
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau high
15
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau high
mais ceci reste toujours vulnérable à l’ajout d’une extension que l’application accepte Par exemple shell2.php.jpeg
16
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau high
17
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
File Upload
Etude de la faille - niveau high
Faille résolue!
18
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
• CSRF ?
• Exemple simple
2
• Prévention (comment éviter ces attaques)
CSRF
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
CSRF ?
Faire une action à un autre utilisateur.
http://www.sitexe.com/?supprmsg=30 (GET)
Attaque possible aussi avec la méthode POST
=> Exemple avec un forum :
> Faire supprimer un message
=>Exemple avec un site d'achat :
> Faire acheter quelque chose
20
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
CSRF ?
Cette attaque fonctionne grâce aux navigateurs.
Ne nécessite que peu de compétences.
Du point de vue du site attaqué, la victime est le fautif .
21
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
Exemple (1)
Sur un forum S :
22
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
Exemple (2)
L’exemple suivant reprend un table « messages » et le script PHP pour l’insertion de
données .
23
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
Prévention
Jetons (ou token) aléatoires ou jetons de validités .
Vérification du Referer Header .
CAPTCHA .
24
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
• XSS ?
• Exemple
2
• Comment s'en protéger
XSS
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
XSS ?
•permettant l'injection de code.
• existe en fait deux types de XSS
• XSS réfléchi (non permanent)
• Le XSS stocké (permanent)
26
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
27
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
XSS ?
•permettant l'injection de code.
• existe en fait deux types de XSS
• XSS réfléchi (non permanent)
• Le XSS stocké (permanent)
28
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
29
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
30
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
XSS ?
• la fonction htmlspecialchars() :
remplaçant par leur équivalent en HTML. Par exemple :
• Le symbole & devient &
• Le symbole " devient "
• Le symbole ' devient '
31
Ayoub ROUZI - Abdelhakim SALAMA | (M2 SIR)
Ayoub ROUZI
Abdelhakim SALAMA