SlideShare une entreprise Scribd logo
1  sur  23
Les principales failles de sécurité
des applications web actuelles
telles que recensées par l’OWASP
Principes, parades
& bonnes pratiques de développement
Xavier KRESS
08 Juillet 2013
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• Les applications Web sont devenues omniprésentes
• Objectifs et conséquences d’une attaque
• Les hackers et les kits d’attaque
• L’OWASP et les kits de défense
- Les principales failles de sécurité applicatives
• Principe et exemples de fonctionnement
• Objectifs / Conséquences
• Parades
- Comment sécuriser son parc applicatif
• Sensibiliser les développeurs
• Effectuer des tests d’intrusion et de la revue de code
• Intégrer la sécurité dans la gestion de projets
2/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
3/22
- L’importance de la sécurité applicative
• Les applications Web sont devenues omniprésentes
Pourcentage d’Internautes dans le monde, source: International Telecommunications Union.
Environ 40% de la
population mondiale
70% dans les pays
développés
80% en France soit
plus de 50 millions
d’internautes
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• Les applications Web sont devenues omniprésentes
Une multitude d’applications
Dans tous les domaines
Des usages différents, en
entreprise, à domicile ou en
mobilité
L’intégralité des données
personnelles et de
l’entreprise est accessible au
travers des applications Web
4/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• Objectifs et conséquences d’une attaque
o Vol d’informations
o Usurpation d’identité
o Indisponibilité de service
o Défiguration de site
o Désinformation
5/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• Objectifs et conséquences d’une attaque
Juin 2012 6.5 millions de mots de passe LinkedIn volés
Juin 2011 : plusieurs centaines de comptes Gmail de hauts fonctionnaires et
militaires américains piratés
Avril 2011 : accès et publication sur Internet des informations de 77 millions
de comptes du Playstation Network
6/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• Les hackers et les kits d’attaque
o Trouver et exploiter une faille de
sécurité est un jeu d’enfant
o Cela ne nécessite aucune
compétence particulière
o Une documentation abondante
o Des logiciels de détection (scanner)
et d’intrusion disponibles
gratuitement.
7/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- L’importance de la sécurité applicative
• L’OWASP et les kits de défense
o Une communauté libre et ouverte travaillant sur la sécurité des applications Web
o De nombreux projets et documents destinés à aider les développeurs à sécuriser leurs applications
o WebGoat Application non sécurisée permettant de découvrir la sécurité par la pratique
o WebScarab Permet d’analyser et modifier les flux HTTP envoyés et reçus par les applications
o Zed Attack Proxy Logiciel de test d’intrusion permettant de détecter des failles applicatives
o Testing Guide Guide pour les tests applicatifs
o Code Review Guide Guide pour la revue de code
o Top Ten Classement (par niveau de risque) des principales failles applicatives
8/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
1. Les injections
2. Violation de gestion d’authentification et de session
3. Cross-Site Scripting (XSS)
4. Référence directe non sécurisée à un objet
5. Mauvaise configuration de sécurité
6. Exposition de données sensibles
7. Absence de contrôle d’accès aux fonctions
8. Falsification de requête intersite (CSRF)
9. Utilisation de composants dont la vulnérabilité est connue
10. Redirections et renvois non validés
9/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
1. Les injections
Injection de commande non prévue par le système (SQL, LDAP, XPATH …) dans les entrées
de l’application (formulaires et variables d’URL).
Objectifs :
- lecture, suppression, altération de données.
- accès au système sans authentification.
Parades :
- Vérification des données saisies (listes noires,
liste blanche, expressions régulières…).
10/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
2. Violation de gestion d’authentification et de session
Regroupe les vulnérabilités permettant à un attaquant de s’approprier l’identité d’un
utilisateur.
Violation de gestion d’authentification
Vol de session
Objectifs :
- Accéder à des fonctionnalités réservées à
certaines personnes.
- Accéder à des données confidentielles.
Parades :
- Exiger des mots de passe forts.
- Utiliser un système de captcha.
--------------------
- Utiliser les cookies pour gérer les sessions.
- Définir une durée de session maximale.
11/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
3. Cross-Site Scripting (XSS)
Attaque par injection, consistant à insérer du code au sein d’une application réputée fiable,
pour qu’il s’exécute sur le poste client.
Objectifs :
- Défiguration / blocage de site.
- Redirection d’utilisateurs vers un autre site.
- Vol de session.
Parades :
- Vérifier les données en entrée.
- Retraiter les données issues de la base de
données avant de les afficher.
12/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
4. Référence directe non sécurisée à un objet
Faille permettant à un attaquant d’accéder directement à des objets (fichiers, répertoires,
enregistrements de base de données) sans autorisation.
Objectifs :
- Accéder à des informations confidentielles.
- Prendre le contrôle d’un serveur.
Parades :
- Vérifier les accès à chaque ressources.
- Remplacer par une valeur temporaire
aléatoire (ESAPI) les références directes aux
objets (ID, noms de fichiers…).
13/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
5. Mauvaise configuration de sécurité
Cette faille regroupe toutes les vulnérabilités liées à des problèmes de configuration, sur
tous les éléments de la couche applicative (serveurs, langage, framework, composants…).
Attaque par manipulation d’URL Objectifs :
- Accéder à des informations confidentielles.
- Prendre le contrôle d’un serveur.
Parades :
- Ne pas attribuer aux composants plus de
droits que nécessaire.
- Etudier rigoureusement la configuration.
14/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
6. Exposition de données sensibles
Cette faille regroupe toutes les vulnérabilités liées à la protection des données sensibles.
Technique du grain de sel Objectifs :
- Accéder à des données confidentielles.
- Usurpation d’identité.
Parades :
- Utiliser des algorithmes de chiffrement forts.
- Ne pas stocker d’informations inutiles.
- Utiliser le protocole TLS sur toute la chaine.
- Les clés de décryptage doivent être stockées
séparément des données.
15/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
7. Absence de contrôle d’accès aux fonctions
Cette faille permet à un attaquant d’accéder à des pages ou fonctions d’une application
Web sans y avoir droit.
Objectifs :
- Exécuter des fonctionnalités sans en avoir les
droits.
- Accéder à des données confidentielles.
Parades :
- Vérifier les droits d’accès sur chaque page de
l’interface et avant d’exécuter chaque
fonctions (logique métier).
- Par défaut, refuser les accès.
16/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
8. Falsification de requête intersite (CSRF)
Cette faille consiste à exploiter la confiance qu’une application a envers ses utilisateurs en
les forçant à exécuter des requêtes sur l’application sans qu’ils en soient conscients.
Attaque CSRF par envoi de mail Objectifs :
- Exécuter des fonctionnalités sans en avoir les
droits.
Parades :
- Demander aux utilisateurs des confirmations
avant d’exécuter des actions sensibles.
- Vérifier le referer de la page.
- Utiliser la technique du jeton de validité.
<img src =
"http://bank.com/transfer.do?acct=
KRESS&amount=1000" width="1"
height="1" border="0">
17/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
9. Utilisation de composants dont la vulnérabilité est connue
Cette faille concerne tous les composants utilisés pour le fonctionnement d’une application.
Ils peuvent présenter des vulnérabilités et doivent faire l’objet d’une attention particulière.
Objectifs :
- Accéder à des données confidentielles.
- Prendre le contrôle d’un serveur.
Parades :
- Tenir à jour une liste des composants utilisés
ainsi que leur version.
- Mettre à jour ces composants dès qu’une
vulnérabilité est détectée et corrigée.
18/22
Objectifs :
- Rediriger des utilisateurs vers des sites de
phishing.
- Accéder sans autorisation à une partie de
l’application.
Parades :
- Vérifier les URL avant d’effectuer les
redirections.
- Utiliser des variables pour masquer les liens
de redirection.
- Vérifier les droits d’accès sur chaque page
d’un espace privé.
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Les principales failles de sécurité applicatives
10. Redirections et renvois non validés
Cette faille concerne les redirections et renvois utilisés par les applications sans validation.
19/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Comment sécuriser son parc applicatif
• Sensibiliser les développeurs
o Les informer sur les failles de sécurité et les impacts métier qu’elles peuvent avoir.
o Leur apprendre à mettre en place des parades pour chacune de ces failles.
o La robustesse d’une application dépend de son maillon le plus faible.
o Les inciter à utiliser les API et les check-lists (OWASP).
o Utiliser des référentiels (OWASP, SANS TOP 25, CWE, WASC ID…)
20/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Comment sécuriser son parc applicatif
• Effectuer des tests d’intrusion et de la revue de code
o Utiliser les techniques des hackers pour mieux protéger ses applications.
o Les tests d’intrusion ne remplacent pas la revue de code (hashage des mots de passe,
vérification d’authentification sur toutes les pages…)
o Utiliser des guides (Testing guide, Code rewiew guide…)
21/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
- Comment sécuriser son parc applicatif
• Intégrer la sécurité dans la gestion de projets
o La sécurité doit être appréhendée et traitée comme un processus continu.
o Elle doit être intégrée à la stratégie et aux objectifs de l’entreprise.
o Définition d’une politique de sécurité impliquant le management.
22/22
Les principales failles de sécurité des applications web actuelles
Xavier KRESS - 08/07/2013
Questions

Contenu connexe

Tendances

Rapport DVWA: CSRF
Rapport DVWA: CSRFRapport DVWA: CSRF
Rapport DVWA: CSRFAyoub Rouzi
 
Introduction à La Sécurité Informatique 1/2
Introduction à La Sécurité Informatique 1/2Introduction à La Sécurité Informatique 1/2
Introduction à La Sécurité Informatique 1/2Sylvain Maret
 
Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Emna Tfifha
 
Audit de sécurité informatique
Audit de sécurité informatiqueAudit de sécurité informatique
Audit de sécurité informatiqueMohamed Ali Hadhri
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm
 
Attaques Informatiques
Attaques InformatiquesAttaques Informatiques
Attaques InformatiquesSylvain Maret
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Heithem Abbes
 
Securite informatique
Securite informatiqueSecurite informatique
Securite informatiqueSouhaib El
 
Design patterns - Exemples en Java
Design patterns - Exemples en JavaDesign patterns - Exemples en Java
Design patterns - Exemples en JavaOussama BEN KHIROUN
 
Sécurité informatique
Sécurité informatiqueSécurité informatique
Sécurité informatiqueoussama Hafid
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)Sakka Mustapha
 
Cours sécurité 2_asr
Cours sécurité 2_asrCours sécurité 2_asr
Cours sécurité 2_asrTECOS
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objetAmir Souissi
 
Modéliser les menaces d'une application web
Modéliser les menaces d'une application webModéliser les menaces d'une application web
Modéliser les menaces d'une application webAntonio Fontes
 

Tendances (20)

Rapport DVWA: CSRF
Rapport DVWA: CSRFRapport DVWA: CSRF
Rapport DVWA: CSRF
 
Comprendre la securite web
Comprendre la securite webComprendre la securite web
Comprendre la securite web
 
Introduction à La Sécurité Informatique 1/2
Introduction à La Sécurité Informatique 1/2Introduction à La Sécurité Informatique 1/2
Introduction à La Sécurité Informatique 1/2
 
Sécurité des systèmes d'informations
Sécurité des systèmes d'informations Sécurité des systèmes d'informations
Sécurité des systèmes d'informations
 
Audit de sécurité informatique
Audit de sécurité informatiqueAudit de sécurité informatique
Audit de sécurité informatique
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentaux
 
Attaques Informatiques
Attaques InformatiquesAttaques Informatiques
Attaques Informatiques
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Securite informatique
Securite informatiqueSecurite informatique
Securite informatique
 
Design patterns - Exemples en Java
Design patterns - Exemples en JavaDesign patterns - Exemples en Java
Design patterns - Exemples en Java
 
Sécurité informatique
Sécurité informatiqueSécurité informatique
Sécurité informatique
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
Sécurité Réseau à Base d'un Firewall Matériel (fortigate)
 
Cours sécurité 2_asr
Cours sécurité 2_asrCours sécurité 2_asr
Cours sécurité 2_asr
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
Modéliser les menaces d'une application web
Modéliser les menaces d'une application webModéliser les menaces d'une application web
Modéliser les menaces d'une application web
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Rapport finiale
Rapport finialeRapport finiale
Rapport finiale
 

Similaire à Les principales failles de sécurité des applications Web actuelles

Les principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesLes principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesBee_Ware
 
Durcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebDurcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebCyrille Grandval
 
Owasp et les failles des applications web
Owasp et les failles des applications webOwasp et les failles des applications web
Owasp et les failles des applications webHenrique Mukanda
 
2010 02 09 Ms Tech Days Owasp Asvs Sgi V01
2010 02 09 Ms Tech Days Owasp Asvs Sgi V012010 02 09 Ms Tech Days Owasp Asvs Sgi V01
2010 02 09 Ms Tech Days Owasp Asvs Sgi V01Sébastien GIORIA
 
Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Asma Messaoudi
 
Introduction-aux-vulnerabilites-des-applications-Web (1).pptx
Introduction-aux-vulnerabilites-des-applications-Web (1).pptxIntroduction-aux-vulnerabilites-des-applications-Web (1).pptx
Introduction-aux-vulnerabilites-des-applications-Web (1).pptxouiamlamghari12
 
20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatif20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatifLeClubQualiteLogicielle
 
Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes Nzalli
 
Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Aymeric Lagier
 
La sécurité sur iOS par Arnaud de Bock
La sécurité sur iOS par Arnaud de BockLa sécurité sur iOS par Arnaud de Bock
La sécurité sur iOS par Arnaud de BockNicolas Lourenço
 
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...Rational_France
 
Rational France livre blanc - choisir le bon outil pour faire du bon travail
Rational France   livre blanc - choisir le bon outil pour faire du bon travailRational France   livre blanc - choisir le bon outil pour faire du bon travail
Rational France livre blanc - choisir le bon outil pour faire du bon travailRational_France
 
Présentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonPrésentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonSébastien GIORIA
 
Première rencontre d'owasp québec
Première rencontre d'owasp québecPremière rencontre d'owasp québec
Première rencontre d'owasp québecPatrick Leclerc
 
20080923 02 - Securité applicative (GDF-Suez)
20080923 02 - Securité applicative (GDF-Suez)20080923 02 - Securité applicative (GDF-Suez)
20080923 02 - Securité applicative (GDF-Suez)LeClubQualiteLogicielle
 
La sécurité des API: Quand les mauvais élèves entrent en piste.
La sécurité des API: Quand les mauvais élèves entrent en piste.La sécurité des API: Quand les mauvais élèves entrent en piste.
La sécurité des API: Quand les mauvais élèves entrent en piste.EyesOpen Association
 
mise en pratique de l'outil Skipfish
mise en pratique de l'outil Skipfishmise en pratique de l'outil Skipfish
mise en pratique de l'outil SkipfishMounia EL
 
Sécurisation d'un site internet
Sécurisation d'un site internetSécurisation d'un site internet
Sécurisation d'un site internetwaggaland
 

Similaire à Les principales failles de sécurité des applications Web actuelles (20)

Les principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuellesLes principales failles de sécurité des applications web actuelles
Les principales failles de sécurité des applications web actuelles
 
Durcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebDurcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative Web
 
Owasp et les failles des applications web
Owasp et les failles des applications webOwasp et les failles des applications web
Owasp et les failles des applications web
 
2010 02 09 Ms Tech Days Owasp Asvs Sgi V01
2010 02 09 Ms Tech Days Owasp Asvs Sgi V012010 02 09 Ms Tech Days Owasp Asvs Sgi V01
2010 02 09 Ms Tech Days Owasp Asvs Sgi V01
 
Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02
 
Introduction-aux-vulnerabilites-des-applications-Web (1).pptx
Introduction-aux-vulnerabilites-des-applications-Web (1).pptxIntroduction-aux-vulnerabilites-des-applications-Web (1).pptx
Introduction-aux-vulnerabilites-des-applications-Web (1).pptx
 
20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatif20090929 04 - Securité applicative, hacking et risque applicatif
20090929 04 - Securité applicative, hacking et risque applicatif
 
OWASP TOP 10 Proactive
OWASP TOP 10 ProactiveOWASP TOP 10 Proactive
OWASP TOP 10 Proactive
 
Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012
 
Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)
 
La sécurité sur iOS par Arnaud de Bock
La sécurité sur iOS par Arnaud de BockLa sécurité sur iOS par Arnaud de Bock
La sécurité sur iOS par Arnaud de Bock
 
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...
Rational France - Livre blanc - Choisir le bon outil pour outils pour faire d...
 
Rational France livre blanc - choisir le bon outil pour faire du bon travail
Rational France   livre blanc - choisir le bon outil pour faire du bon travailRational France   livre blanc - choisir le bon outil pour faire du bon travail
Rational France livre blanc - choisir le bon outil pour faire du bon travail
 
Présentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonPrésentation Top10 CEGID Lyon
Présentation Top10 CEGID Lyon
 
Première rencontre d'owasp québec
Première rencontre d'owasp québecPremière rencontre d'owasp québec
Première rencontre d'owasp québec
 
20080923 02 - Securité applicative (GDF-Suez)
20080923 02 - Securité applicative (GDF-Suez)20080923 02 - Securité applicative (GDF-Suez)
20080923 02 - Securité applicative (GDF-Suez)
 
La sécurité des API: Quand les mauvais élèves entrent en piste.
La sécurité des API: Quand les mauvais élèves entrent en piste.La sécurité des API: Quand les mauvais élèves entrent en piste.
La sécurité des API: Quand les mauvais élèves entrent en piste.
 
mise en pratique de l'outil Skipfish
mise en pratique de l'outil Skipfishmise en pratique de l'outil Skipfish
mise en pratique de l'outil Skipfish
 
Securite web is_ima
Securite web is_imaSecurite web is_ima
Securite web is_ima
 
Sécurisation d'un site internet
Sécurisation d'un site internetSécurisation d'un site internet
Sécurisation d'un site internet
 

Les principales failles de sécurité des applications Web actuelles

  • 1. Les principales failles de sécurité des applications web actuelles telles que recensées par l’OWASP Principes, parades & bonnes pratiques de développement Xavier KRESS 08 Juillet 2013
  • 2. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • Les applications Web sont devenues omniprésentes • Objectifs et conséquences d’une attaque • Les hackers et les kits d’attaque • L’OWASP et les kits de défense - Les principales failles de sécurité applicatives • Principe et exemples de fonctionnement • Objectifs / Conséquences • Parades - Comment sécuriser son parc applicatif • Sensibiliser les développeurs • Effectuer des tests d’intrusion et de la revue de code • Intégrer la sécurité dans la gestion de projets 2/22
  • 3. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 3/22 - L’importance de la sécurité applicative • Les applications Web sont devenues omniprésentes Pourcentage d’Internautes dans le monde, source: International Telecommunications Union. Environ 40% de la population mondiale 70% dans les pays développés 80% en France soit plus de 50 millions d’internautes
  • 4. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • Les applications Web sont devenues omniprésentes Une multitude d’applications Dans tous les domaines Des usages différents, en entreprise, à domicile ou en mobilité L’intégralité des données personnelles et de l’entreprise est accessible au travers des applications Web 4/22
  • 5. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • Objectifs et conséquences d’une attaque o Vol d’informations o Usurpation d’identité o Indisponibilité de service o Défiguration de site o Désinformation 5/22
  • 6. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • Objectifs et conséquences d’une attaque Juin 2012 6.5 millions de mots de passe LinkedIn volés Juin 2011 : plusieurs centaines de comptes Gmail de hauts fonctionnaires et militaires américains piratés Avril 2011 : accès et publication sur Internet des informations de 77 millions de comptes du Playstation Network 6/22
  • 7. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • Les hackers et les kits d’attaque o Trouver et exploiter une faille de sécurité est un jeu d’enfant o Cela ne nécessite aucune compétence particulière o Une documentation abondante o Des logiciels de détection (scanner) et d’intrusion disponibles gratuitement. 7/22
  • 8. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - L’importance de la sécurité applicative • L’OWASP et les kits de défense o Une communauté libre et ouverte travaillant sur la sécurité des applications Web o De nombreux projets et documents destinés à aider les développeurs à sécuriser leurs applications o WebGoat Application non sécurisée permettant de découvrir la sécurité par la pratique o WebScarab Permet d’analyser et modifier les flux HTTP envoyés et reçus par les applications o Zed Attack Proxy Logiciel de test d’intrusion permettant de détecter des failles applicatives o Testing Guide Guide pour les tests applicatifs o Code Review Guide Guide pour la revue de code o Top Ten Classement (par niveau de risque) des principales failles applicatives 8/22
  • 9. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 1. Les injections 2. Violation de gestion d’authentification et de session 3. Cross-Site Scripting (XSS) 4. Référence directe non sécurisée à un objet 5. Mauvaise configuration de sécurité 6. Exposition de données sensibles 7. Absence de contrôle d’accès aux fonctions 8. Falsification de requête intersite (CSRF) 9. Utilisation de composants dont la vulnérabilité est connue 10. Redirections et renvois non validés 9/22
  • 10. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 1. Les injections Injection de commande non prévue par le système (SQL, LDAP, XPATH …) dans les entrées de l’application (formulaires et variables d’URL). Objectifs : - lecture, suppression, altération de données. - accès au système sans authentification. Parades : - Vérification des données saisies (listes noires, liste blanche, expressions régulières…). 10/22
  • 11. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 2. Violation de gestion d’authentification et de session Regroupe les vulnérabilités permettant à un attaquant de s’approprier l’identité d’un utilisateur. Violation de gestion d’authentification Vol de session Objectifs : - Accéder à des fonctionnalités réservées à certaines personnes. - Accéder à des données confidentielles. Parades : - Exiger des mots de passe forts. - Utiliser un système de captcha. -------------------- - Utiliser les cookies pour gérer les sessions. - Définir une durée de session maximale. 11/22
  • 12. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 3. Cross-Site Scripting (XSS) Attaque par injection, consistant à insérer du code au sein d’une application réputée fiable, pour qu’il s’exécute sur le poste client. Objectifs : - Défiguration / blocage de site. - Redirection d’utilisateurs vers un autre site. - Vol de session. Parades : - Vérifier les données en entrée. - Retraiter les données issues de la base de données avant de les afficher. 12/22
  • 13. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 4. Référence directe non sécurisée à un objet Faille permettant à un attaquant d’accéder directement à des objets (fichiers, répertoires, enregistrements de base de données) sans autorisation. Objectifs : - Accéder à des informations confidentielles. - Prendre le contrôle d’un serveur. Parades : - Vérifier les accès à chaque ressources. - Remplacer par une valeur temporaire aléatoire (ESAPI) les références directes aux objets (ID, noms de fichiers…). 13/22
  • 14. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 5. Mauvaise configuration de sécurité Cette faille regroupe toutes les vulnérabilités liées à des problèmes de configuration, sur tous les éléments de la couche applicative (serveurs, langage, framework, composants…). Attaque par manipulation d’URL Objectifs : - Accéder à des informations confidentielles. - Prendre le contrôle d’un serveur. Parades : - Ne pas attribuer aux composants plus de droits que nécessaire. - Etudier rigoureusement la configuration. 14/22
  • 15. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 6. Exposition de données sensibles Cette faille regroupe toutes les vulnérabilités liées à la protection des données sensibles. Technique du grain de sel Objectifs : - Accéder à des données confidentielles. - Usurpation d’identité. Parades : - Utiliser des algorithmes de chiffrement forts. - Ne pas stocker d’informations inutiles. - Utiliser le protocole TLS sur toute la chaine. - Les clés de décryptage doivent être stockées séparément des données. 15/22
  • 16. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 7. Absence de contrôle d’accès aux fonctions Cette faille permet à un attaquant d’accéder à des pages ou fonctions d’une application Web sans y avoir droit. Objectifs : - Exécuter des fonctionnalités sans en avoir les droits. - Accéder à des données confidentielles. Parades : - Vérifier les droits d’accès sur chaque page de l’interface et avant d’exécuter chaque fonctions (logique métier). - Par défaut, refuser les accès. 16/22
  • 17. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 8. Falsification de requête intersite (CSRF) Cette faille consiste à exploiter la confiance qu’une application a envers ses utilisateurs en les forçant à exécuter des requêtes sur l’application sans qu’ils en soient conscients. Attaque CSRF par envoi de mail Objectifs : - Exécuter des fonctionnalités sans en avoir les droits. Parades : - Demander aux utilisateurs des confirmations avant d’exécuter des actions sensibles. - Vérifier le referer de la page. - Utiliser la technique du jeton de validité. <img src = "http://bank.com/transfer.do?acct= KRESS&amount=1000" width="1" height="1" border="0"> 17/22
  • 18. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 9. Utilisation de composants dont la vulnérabilité est connue Cette faille concerne tous les composants utilisés pour le fonctionnement d’une application. Ils peuvent présenter des vulnérabilités et doivent faire l’objet d’une attention particulière. Objectifs : - Accéder à des données confidentielles. - Prendre le contrôle d’un serveur. Parades : - Tenir à jour une liste des composants utilisés ainsi que leur version. - Mettre à jour ces composants dès qu’une vulnérabilité est détectée et corrigée. 18/22
  • 19. Objectifs : - Rediriger des utilisateurs vers des sites de phishing. - Accéder sans autorisation à une partie de l’application. Parades : - Vérifier les URL avant d’effectuer les redirections. - Utiliser des variables pour masquer les liens de redirection. - Vérifier les droits d’accès sur chaque page d’un espace privé. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Les principales failles de sécurité applicatives 10. Redirections et renvois non validés Cette faille concerne les redirections et renvois utilisés par les applications sans validation. 19/22
  • 20. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Comment sécuriser son parc applicatif • Sensibiliser les développeurs o Les informer sur les failles de sécurité et les impacts métier qu’elles peuvent avoir. o Leur apprendre à mettre en place des parades pour chacune de ces failles. o La robustesse d’une application dépend de son maillon le plus faible. o Les inciter à utiliser les API et les check-lists (OWASP). o Utiliser des référentiels (OWASP, SANS TOP 25, CWE, WASC ID…) 20/22
  • 21. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Comment sécuriser son parc applicatif • Effectuer des tests d’intrusion et de la revue de code o Utiliser les techniques des hackers pour mieux protéger ses applications. o Les tests d’intrusion ne remplacent pas la revue de code (hashage des mots de passe, vérification d’authentification sur toutes les pages…) o Utiliser des guides (Testing guide, Code rewiew guide…) 21/22
  • 22. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 - Comment sécuriser son parc applicatif • Intégrer la sécurité dans la gestion de projets o La sécurité doit être appréhendée et traitée comme un processus continu. o Elle doit être intégrée à la stratégie et aux objectifs de l’entreprise. o Définition d’une politique de sécurité impliquant le management. 22/22
  • 23. Les principales failles de sécurité des applications web actuelles Xavier KRESS - 08/07/2013 Questions