Présentation de l'organisation OWASP + Explication des failles + des applications + web et démonstration + piratatage + sécurisation des applications + avec + Webgoat + l'application vulnérable des tests de + l'organisation OWASP
2. Presenter par @mahid_hm 2
❗ DISCLAIMER
CETTE PRESENTATION A UN SIMPLE ET UNIQUE BUT : INFORMER
3. Quid OWASP ?
Presenter par @mahid_hm 3
OWASP, Un projet open source communautaire mis en place pour développer des
- Outils logiciels et
- Documentations pour la sécurité des applications Web
- Guides définissant les exigences de sécurité pour construire des applications WEB
Possède aussi une grande partie pour les tests d'intrusion des applications WEB
4. Presenter par @mahid_hm 4
Que vise OWASP ?
L'objectif principal de l'OWASP est de produire des outils, documents et
standards dédiés à la sécurité des applications Web.
Et il est destiné aux :
- Développeurs pour produire du code sécurisé,
- Testeurs d’application pour avoir un ensemble de tests supplémentaires à
effectuer.
- Expert sécurité pour vérifier si d’autres vulnérabilités ne peuvent pas être
découvertes
Les projets d’OWASP les plus connus sont : Top Ten OWASP, WebGoat, WebScarab, Guide de
Tests, Guide de revue de code
5. Presenter par @mahid_hm 5
Top Ten OWASP (TTO)
Cfr : site officiel d’OWASP dans l’onglet Top Ten OWASP
6. Presenter par @mahid_hm 6
WebGoat et Les failles Web
Le projet WebGoat est hébergé sur le site de l’OWASP, ce projet a pour objectifs de fournir
une application évolutive de formations aux techniques d’attaques des applications web, son
utilisation requiert de disposer d’un serveur sur lequel est installé un serveur d’application
« Tomcat »
LES FAILLES WEB : (Expliquées ici suivant le model proposé dans le projet WebGoat)
1) FAILLES : SQL INJECTION :
C’est une faille très répandue utilisée par un grand nombre de pirates informatiques avec de
très mauvaises conséquences les deux principales raisons pour lesquelles cette faille est
assez répandue sont :
- L’importance des données qu’on peut utiliser se trouvant
dans les base de données ce qui incite des pirates a utilisé cette faille pour des raisons
purement personnelles,
- Le manque de sensibilisation des programmeurs qui laisses beaucoup de failles dans
leur code lors de la création d’une application
7. Presenter par @mahid_hm 7
(suite) WebGoat et Les failles Web
❌ Démo sur : Comment on exploite la vulnérabilité «STRING SQL INJECTION » (Pratique)
✔ SOLUTIONS POUR CONTRER LES FAILLES DU TYPE SQL INJECTION :
Pour éviter les failles du type SQL INJECTION on peut citer deux principales méthodes :
- Les requêtes paramètres
- Les procédures stockées
Pour plus d’informations, lire le guide OWASP sur le site officiel,
A retenir :
- Les failles SQL injection peuvent êtres utilisées que dans des champs vulnérables,
- Il faut avoir une connaissance en langage de requête SQL pour pouvoir utiliser cette
faille
- La faille SQL injection est très dangereuse car elle peut affecter une base de données
toute entière soit en modifiant ou en supprimant ou en ajoutant des données
8. Presenter par @mahid_hm 8
2) FAILLES : XSS : permet l'injection de code html-javaScript dans un script PHP, en exploitant
des variables mal protégées.
Problématique :
Le faite de donner la confiance aux utilisateurs est un grand problème ce qui veux dire que si
le développeur n’exige pas des filtres et des traitements sur les variables ou les données
introduites par les utilisateurs par exemple dans les champs d’un site, peut générer
beaucoup de problème. Puisque un utilisateur malveillant peut introduire du code JavaScript
ou autre qui sera exécuté automatiquement.
✔ SOLUTIONS POUR CONTRER LES FAILLES DU TYPE XSS:
- Toujours faire des filtres minutieux et précis sur toutes les entrées d’un formulaire,
- Pour faire en sorte que le code JavaScript ne s'exécute pas sur le navigateur,
simplement remplacer tout les < et > par leurs équivalents HTML< et >
- Fonction php preg_replace() , htmlspecialchars() qui permet de neutraliser toutes les
balises HTML
Pour plus d’informations, lire le guide OWASP sur le site officiel,
PRINCIPE : « Never trust user input »
(suite) WebGoat et Les failles Web
9. Presenter par @mahid_hm 9
3) FAILLES : Access Control Flaws :
Obtenir des permissions « non permises » par défaut dans le rôle ou accéder à un rôle plus
privilégier,
Cfr TOP TEN OWASP
NB : OWASP va travailler sur d'autres domaines autres que le web, mobile , développer des
applications variées sécurisées (non seulement applications web) etc..
(suite) Les failles Web