SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Mai 2014
ECOLE NATIONALE SUPERIEURE D’INFORMATIQUE
Mini-projet: D'lala Online
TP N°3 IPLS
Développement d’une application de vente en ligne sécurisée avec ESAPI
Trinôme :
KENOUCHE Takfarinas
HALLAK Sidali
Guernane Hamza
Encadré par : Y.Challal
Sommaire
I. Description de l’application :.................................................................................................. 3
II. Description de l’outil de développement :............................................................................... 3
PLAY2 :................................................................................................................................... 3
III. Architecture de l’application :............................................................................................. 4
IV. La Sécurité du Framework PLAY2: ....................................................................................... 4
Est-ce que on besoin de ESAPI si on utilise PLAY2?................................................................... 4
1) ESAPI d’OWASP :............................................................................................................ 5
V. Intégration d’ESAPI dans le Framework PLAY2 :....................................................................... 6
VI. Prévention des Failles :....................................................................................................... 7
1) Le Cross Site Scripting :..................................................................................................... 7
2) Violation de Gestion d'Authentification et de Session :......................................................... 7
3) Références directes non sécurisées à un objet :..................................................................... 7
4) Exposition de données sensibles :........................................................................................ 7
5) Manque de contrôle d’accès au niveau fonctionnel :............................................................. 7
6) Falsification de requête intersites :....................................................................................... 7
VII. Intégration d’ESAPI ............................................................................................................ 8
1) Dans la classe commandes.java :......................................................................................... 8
2) Dans la classe Products.java :.............................................................................................. 9
VIII. Conclusion :....................................................................................................................... 9
I. Description de l’application :
L'application D'lala Online permet à un utilisateur authentifié d'effectuer une
recherche de produits dans une base de données. Cette application garantit la sécurité
de toutes les opérations que l’utilisateur peut effectuer.
II. Description de l’outil de développement :
L’application web D’lala Online à été développé avec le Framework PLAY2.
PLAY2 : un Framework open source de développement web dans la sphère java, visant à
offrir une productivité plus élevée aux développeurs de par sa simplicité et sa facilité d’accès.
Play est un Framework MVC basé sur la JVM (il n’est pas un Framework JEE), il
n’implémente pas la norme Servlet, il se base pas sur un serveur HTTP simple appelé Apache
Mina. Ce Framework utilise des langages connus HTML, Scala et JAVA.
Des grandes sites ont été développé avec PLAY2 citons :
 LinkedIn : est un réseau social professionnel en ligne qui revendique
plus de 300 millions de membres issus de 170 secteurs d'activités
dans plus de 200 pays et territoires.
 Klout : est un site web couplé avec une application pour Smartphones,
qui prend en compte l'activité sur les médias sociaux pour classer ses
utilisateurs en fonction de leur influence sociale en ligne.
 The Guardian : est un quotidien d'information
britannique
 Gilt Groupe : est une entreprise de commerce électronique
américaine, elle fait des ventes flash en ligne, de
vêtements et d'accessoires de couturiers…etc.
III. Architecture de l’application :
L’application D’lala Online est organisée de tel sorte que :
Le client peut passer une commande constituée de plusieurs produits, ces derniers
appartiennent à des catégories différentes (un produit appartient à une seule catégorie). Toutes
les commandes d’un client sont sauvegardées dans une ligne de commande.
Le diagramme ci-dessous montre la structure de D’lala Online :
IV. La Sécurité du Framework PLAY2:
Le Web est devenu un lieu où on peut échanger des informations mais il est
également devenu un marché à part entière pour la vente et l'achat de biens matériels.
Les acteurs de ce nouveau marché ont besoin de sécurité sous tous ses aspects, la
protection de la confidentialité, l'intégrité et de la disponibilité de l'information.
Est-ce que on besoin de ESAPI si on utilise PLAY2?
Play est assez robuste car il inclut l'échappement automatique de potentiels vecteur de
cross site Scripting mais si vous n'utilisez pas les modèles de Framework PLAY2pour
afficher les données (mais une API AJAX), vous aurez besoin de le faire séparément. Play
offre également un cadre tout à fait bon de validation, mais vous avez encore besoin de mettre
en œuvre des fonctions de validation pour certains types de contenu et c'est là que l'OWASP
ESAPI est très utile.
1) ESAPI d’OWASP :
C’est une bibliothèque open source destinée pour les applications web pour le contrôle de
sécurité conçu pour permettre aux programmeurs de rénover des applications existantes de
façon très simple. ESAPI pour Java est également une base solide pour un nouveau
développement, surtout qu’elle permet la validation des entrées, l’encodage des sorties et le
contrôle d’accès pour les objets.
Les grands organismes qui l’utilisent :
 L'Apache Software Foundation : est une organisation
à but non lucratif qui développe des logiciels open
source sous la licence Apache, dont le renommé
serveur web Apache HTTP Server.
 Foundstone de McAfee : le géant de la sécurité de l’information,
fournit des solutions stratégiques aux problèmes de sécurité.
 American Express : est une entreprise financière américaine,
spécialisée dans les moyens de paiement, connue pour ses cartes de
paiement ainsi que ses chèques de voyage et acteur de premier plan
dans l'organisation de voyages d'affaires.
 US Navy : est la marine de guerre des États-Unis et représente l'une
des cinq composantes des forces armées des États-Unis. Elle est
depuis la Seconde Guerre mondiale la première force aéronavale au
monde.
V. Intégration d’ESAPI dans le Framework PLAY2 :
On va ajouter les fichiers d’ESAPI comme la montre la capture suivante :
ESAPI à besoin des fichiers suivants :
 esapi-2.1.0.jar : la librairie ESAPI qui va être placé dans le répertoire lib/.
 Antisamy-esapi.xml : qui contient les règles de W3C qui permet de vérifier le contenu
HTML introduit par l’utilisateur dont le but d’éviter des attaques tel que XSS.
 Validation.properties : le validateur de d’ESAPI qui permet la vérification des entrées
(exemple : validation par liste blanche).
 ESAPI.properties : c’est le fichier de configuration d’ESAPI (au minimum il faut
modifier Encryptor.MasterKey, Encryptor.MasterSalt).
VI. Prévention des Failles :
1) Le Cross Site Scripting :
Consiste à injecter du code (html, javascript ...) directement dans les pages web via un
formulaire à remplir ou autres, cela amène à exécuter un script dans le navigateur de la
victime afin de détourner des sessions utilisateur, défigurer des sites web, ou rediriger
l'utilisateur vers des sites malveillants.
Cette vulnérabilité va être évitée on utilisant la bibliothèque d’ESAPI d’OWASP.
2) Violation de Gestion d'Authentification et de Session :
Les sessions ne sont pas généralement gérées correctement, ceci permet aux attaquants de
compromettre les mots de passe, jetons de session, ou d'exploiter d'autres failles
d'implémentation pour s'approprier les identités d'autres utilisateurs.
3) Références directes non sécurisées à un objet :
Cela arrive lorsqu’expose une référence à un objet d'exécution interne, un enregistrement
de base de données ou une clé de base de données. Les attaquants peuvent manipuler ces
références pour accéder à des données non autorisées.
4) Exposition de données sensibles :
Les données faiblement protégées sont exposées à divers attaques tel que le vol d'identité
ou fraude. Ces données méritent une protection supplémentaire tel un chiffrement
statique ou en transit, ainsi que des précautions particulières lors de l'échange avec le
navigateur.
5) Manque de contrôle d’accès au niveau fonctionnel :
Il est indispensable d’effectuer des vérifications de contrôle d'accès sur le serveur lors de
l'accès à chaque fonction, dans le cas contraire il est possible de forger des demandes afin
d'accéder à une fonctionnalité non autorisée.
6) Falsification de requête intersites :
Cette attaque force le navigateur d'une victime authentifiée à envoyer une requête HTTP
forgée, comprenant le cookie de session de la victime ainsi que toute autre information
automatiquement inclue, à une application web vulnérable.
Le Framework PLAY2 à été configuré pour résoudre les attaques (2, 3, 4,5 et 6)
citées au-dessus.
VII. Intégration d’ESAPI
1) Dans la classe commandes.java :
Lors de la récupération des données d’une commande, il est indispensable de vérifier le
flux de données venant du service web au tant que Json dont le but d’éviter les attaques
de type XSS.
La quantité et le total de la commande est récupéré comme étant un texte, on utilise la
fonction encodeForJavaScript pour échapper le contenu JavaScript dans le cas d’une attaque
XSS.
2) Dans la classe Products.java :
Utiliser la fonction encodeForHtml lors de la récupération du nom, prix, description et
catégorie du produit, pour échapper le contenu Html dans le cas d’une attaque XSS.
VIII. Conclusion :
La sécurité des applications Web ne peut plus être ignorée. De plus en plus
souvent, les vols de données et les incidents liés aux applications Web font la une
de l’actualité de la sécurité. Alors la solution c’est de combiner un Framework de
développement d’application tel que Play avec un Framework de sécurité tel
qu’ESAPI.

Weitere ähnliche Inhalte

Was ist angesagt?

Scaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardScaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardJui An Huang (黃瑞安)
 
OWASP AppSecEU 2018 – Attacking "Modern" Web Technologies
OWASP AppSecEU 2018 – Attacking "Modern" Web TechnologiesOWASP AppSecEU 2018 – Attacking "Modern" Web Technologies
OWASP AppSecEU 2018 – Attacking "Modern" Web TechnologiesFrans Rosén
 
(Mis)trusting and (ab)using ssh
(Mis)trusting and (ab)using ssh(Mis)trusting and (ab)using ssh
(Mis)trusting and (ab)using sshmorisson
 
共変戻り値型って知ってますか?
共変戻り値型って知ってますか?共変戻り値型って知ってますか?
共変戻り値型って知ってますか?Ryota Murohoshi
 
Security for oauth 2.0 - @topavankumarj
Security for oauth 2.0 - @topavankumarjSecurity for oauth 2.0 - @topavankumarj
Security for oauth 2.0 - @topavankumarjPavan Kumar J
 
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...Benjamin Delpy
 
Protecting browsers’ secrets in a domain environment
Protecting browsers’ secrets in a domain environmentProtecting browsers’ secrets in a domain environment
Protecting browsers’ secrets in a domain environmentItai Grady
 
Pentest Application With GraphQL | Null Bangalore Meetup
Pentest Application With GraphQL | Null Bangalore Meetup Pentest Application With GraphQL | Null Bangalore Meetup
Pentest Application With GraphQL | Null Bangalore Meetup Divyanshu
 
What should a hacker know about WebDav?
What should a hacker know about WebDav?What should a hacker know about WebDav?
What should a hacker know about WebDav?Mikhail Egorov
 
What happens on your Mac, stays on Apple’s iCloud?!
What happens on your Mac, stays on Apple’s iCloud?!What happens on your Mac, stays on Apple’s iCloud?!
What happens on your Mac, stays on Apple’s iCloud?!SecuRing
 
Petit potam slides-rtfm-ossir
Petit potam slides-rtfm-ossirPetit potam slides-rtfm-ossir
Petit potam slides-rtfm-ossirLionelTopotam
 
WebAuthn and Security Keys
WebAuthn and Security KeysWebAuthn and Security Keys
WebAuthn and Security KeysFIDO Alliance
 
Goでwebアプリを開発してみよう
Goでwebアプリを開発してみようGoでwebアプリを開発してみよう
Goでwebアプリを開発してみようTakuya Ueda
 
200308 Active Directory Security
200308 Active Directory Security200308 Active Directory Security
200308 Active Directory SecurityArmando Leon
 
20140625 ステルスアドレスとその仕組み
20140625 ステルスアドレスとその仕組み20140625 ステルスアドレスとその仕組み
20140625 ステルスアドレスとその仕組みTetsuyuki Oishi
 
Distribuer une librairie via maven
Distribuer une librairie via mavenDistribuer une librairie via maven
Distribuer une librairie via mavenFranck SIMON
 

Was ist angesagt? (20)

Scaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ DcardScaling Offline Database Usage On GCP @ Dcard
Scaling Offline Database Usage On GCP @ Dcard
 
OWASP AppSecEU 2018 – Attacking "Modern" Web Technologies
OWASP AppSecEU 2018 – Attacking "Modern" Web TechnologiesOWASP AppSecEU 2018 – Attacking "Modern" Web Technologies
OWASP AppSecEU 2018 – Attacking "Modern" Web Technologies
 
(Mis)trusting and (ab)using ssh
(Mis)trusting and (ab)using ssh(Mis)trusting and (ab)using ssh
(Mis)trusting and (ab)using ssh
 
共変戻り値型って知ってますか?
共変戻り値型って知ってますか?共変戻り値型って知ってますか?
共変戻り値型って知ってますか?
 
Security for oauth 2.0 - @topavankumarj
Security for oauth 2.0 - @topavankumarjSecurity for oauth 2.0 - @topavankumarj
Security for oauth 2.0 - @topavankumarj
 
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...
BlueHat 2014 - The Attacker's View of Windows Authentication and Post Exploit...
 
Protecting browsers’ secrets in a domain environment
Protecting browsers’ secrets in a domain environmentProtecting browsers’ secrets in a domain environment
Protecting browsers’ secrets in a domain environment
 
Pentest Application With GraphQL | Null Bangalore Meetup
Pentest Application With GraphQL | Null Bangalore Meetup Pentest Application With GraphQL | Null Bangalore Meetup
Pentest Application With GraphQL | Null Bangalore Meetup
 
Why HATEOAS
Why HATEOASWhy HATEOAS
Why HATEOAS
 
Blacklist3r
Blacklist3rBlacklist3r
Blacklist3r
 
What should a hacker know about WebDav?
What should a hacker know about WebDav?What should a hacker know about WebDav?
What should a hacker know about WebDav?
 
What happens on your Mac, stays on Apple’s iCloud?!
What happens on your Mac, stays on Apple’s iCloud?!What happens on your Mac, stays on Apple’s iCloud?!
What happens on your Mac, stays on Apple’s iCloud?!
 
Petit potam slides-rtfm-ossir
Petit potam slides-rtfm-ossirPetit potam slides-rtfm-ossir
Petit potam slides-rtfm-ossir
 
Burp Suite Starter
Burp Suite StarterBurp Suite Starter
Burp Suite Starter
 
Recon like a pro
Recon like a proRecon like a pro
Recon like a pro
 
WebAuthn and Security Keys
WebAuthn and Security KeysWebAuthn and Security Keys
WebAuthn and Security Keys
 
Goでwebアプリを開発してみよう
Goでwebアプリを開発してみようGoでwebアプリを開発してみよう
Goでwebアプリを開発してみよう
 
200308 Active Directory Security
200308 Active Directory Security200308 Active Directory Security
200308 Active Directory Security
 
20140625 ステルスアドレスとその仕組み
20140625 ステルスアドレスとその仕組み20140625 ステルスアドレスとその仕組み
20140625 ステルスアドレスとその仕組み
 
Distribuer une librairie via maven
Distribuer une librairie via mavenDistribuer une librairie via maven
Distribuer une librairie via maven
 

Andere mochten auch

La vente en ligne 101
La vente en ligne 101La vente en ligne 101
La vente en ligne 101Nmédia
 
JavaScript Coding Guidelines
JavaScript Coding GuidelinesJavaScript Coding Guidelines
JavaScript Coding GuidelinesOleksii Prohonnyi
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Jean-Marc Fontaine
 
formulaire d'inscription sur les listes électorales
formulaire d'inscription sur les listes électoralesformulaire d'inscription sur les listes électorales
formulaire d'inscription sur les listes électoralesGwladys
 
Corrig Projet P L S Q L
Corrig Projet  P L S Q LCorrig Projet  P L S Q L
Corrig Projet P L S Q Lbadirh
 
Recommendation Letter- PDRM
Recommendation Letter- PDRMRecommendation Letter- PDRM
Recommendation Letter- PDRMSally Abas
 
Applications secure by default
Applications secure by defaultApplications secure by default
Applications secure by defaultSecuRing
 
Formation MySQL Workbench
Formation MySQL WorkbenchFormation MySQL Workbench
Formation MySQL WorkbenchIsenDev
 
Scala play-framework
Scala play-frameworkScala play-framework
Scala play-frameworkAbdhesh Kumar
 
Serveur web sur lindux debian
Serveur web sur lindux debianServeur web sur lindux debian
Serveur web sur lindux debiancharlielefebvre14
 
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScriptENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScriptHoracio Gonzalez
 
Alimentation et synchronisation d'annuaires LDAP
Alimentation et synchronisation d'annuaires LDAPAlimentation et synchronisation d'annuaires LDAP
Alimentation et synchronisation d'annuaires LDAPLINAGORA
 
Exercices shell
Exercices shellExercices shell
Exercices shellulratique
 
Initiation a la ligne de commande
Initiation a la ligne de commandeInitiation a la ligne de commande
Initiation a la ligne de commandeLakhdar Meftah
 
Enib cours c.a.i. web - séance #5 : scala play! framework
Enib   cours c.a.i. web - séance #5 : scala play! frameworkEnib   cours c.a.i. web - séance #5 : scala play! framework
Enib cours c.a.i. web - séance #5 : scala play! frameworkHoracio Gonzalez
 
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAP
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAPPlone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAP
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAPParis, France
 

Andere mochten auch (20)

La vente en ligne 101
La vente en ligne 101La vente en ligne 101
La vente en ligne 101
 
JavaScript Coding Guidelines
JavaScript Coding GuidelinesJavaScript Coding Guidelines
JavaScript Coding Guidelines
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012
 
formulaire d'inscription sur les listes électorales
formulaire d'inscription sur les listes électoralesformulaire d'inscription sur les listes électorales
formulaire d'inscription sur les listes électorales
 
Corrig Projet P L S Q L
Corrig Projet  P L S Q LCorrig Projet  P L S Q L
Corrig Projet P L S Q L
 
Recommendation Letter- PDRM
Recommendation Letter- PDRMRecommendation Letter- PDRM
Recommendation Letter- PDRM
 
Applications secure by default
Applications secure by defaultApplications secure by default
Applications secure by default
 
Formation MySQL Workbench
Formation MySQL WorkbenchFormation MySQL Workbench
Formation MySQL Workbench
 
Secure java script-for-developers
Secure java script-for-developersSecure java script-for-developers
Secure java script-for-developers
 
Conception d'un Extranet
Conception d'un ExtranetConception d'un Extranet
Conception d'un Extranet
 
Scala play-framework
Scala play-frameworkScala play-framework
Scala play-framework
 
Serveur web sur lindux debian
Serveur web sur lindux debianServeur web sur lindux debian
Serveur web sur lindux debian
 
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScriptENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
ENIB 2015 2016 - CAI Web S02E03- Forge JS 1/4 - La forge JavaScript
 
Alimentation et synchronisation d'annuaires LDAP
Alimentation et synchronisation d'annuaires LDAPAlimentation et synchronisation d'annuaires LDAP
Alimentation et synchronisation d'annuaires LDAP
 
Exercices shell
Exercices shellExercices shell
Exercices shell
 
Tp switch
Tp switchTp switch
Tp switch
 
Initiation a la ligne de commande
Initiation a la ligne de commandeInitiation a la ligne de commande
Initiation a la ligne de commande
 
Enib cours c.a.i. web - séance #5 : scala play! framework
Enib   cours c.a.i. web - séance #5 : scala play! frameworkEnib   cours c.a.i. web - séance #5 : scala play! framework
Enib cours c.a.i. web - séance #5 : scala play! framework
 
My SQL
My SQLMy SQL
My SQL
 
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAP
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAPPlone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAP
Plone - Déployer un intranet collaboratif avec intégration d'un annuaire LDAP
 

Ähnlich wie La sécurité des applications avec ESAPI

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
 
Tuto atelier securisation_site_web
Tuto atelier securisation_site_webTuto atelier securisation_site_web
Tuto atelier securisation_site_websahar dridi
 
Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Asma Messaoudi
 
Vulnérabilité des sites web
Vulnérabilité des sites webVulnérabilité des sites web
Vulnérabilité des sites webSaid Sadik
 
Atelier hadoop-single-sign-on
Atelier hadoop-single-sign-onAtelier hadoop-single-sign-on
Atelier hadoop-single-sign-onsahar dridi
 
Introduction à La Sécurité Informatique 2/2
Introduction à La Sécurité Informatique 2/2Introduction à La Sécurité Informatique 2/2
Introduction à La Sécurité Informatique 2/2Sylvain Maret
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseAntonio Fontes
 
Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016Blandine Delaporte
 
Owasp top 10 2010 Resist toulouse
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouseSébastien GIORIA
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement webHouda TOUKABRI
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1Tarek MOHAMED
 
Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016Blandine Delaporte
 
Rapport Threat Intelligence Check Point du 20 juin 2016
Rapport Threat Intelligence Check Point du 20 juin 2016Rapport Threat Intelligence Check Point du 20 juin 2016
Rapport Threat Intelligence Check Point du 20 juin 2016Blandine Delaporte
 
TP1 analyse de mémoire.pdf
TP1 analyse de mémoire.pdfTP1 analyse de mémoire.pdf
TP1 analyse de mémoire.pdffatima117475
 
Api win32 ancestrales pour chevaux de troie hyper furtifs
Api win32 ancestrales pour chevaux de troie hyper furtifsApi win32 ancestrales pour chevaux de troie hyper furtifs
Api win32 ancestrales pour chevaux de troie hyper furtifsUltraUploader
 
Sécurité Active Directory : détecter l’indétectable !
Sécurité Active Directory : détecter l’indétectable !Sécurité Active Directory : détecter l’indétectable !
Sécurité Active Directory : détecter l’indétectable !Microsoft Technet France
 

Ähnlich wie La sécurité des applications avec ESAPI (20)

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
 
Tuto atelier securisation_site_web
Tuto atelier securisation_site_webTuto atelier securisation_site_web
Tuto atelier securisation_site_web
 
La Sécurité Sur Le Web
La Sécurité Sur Le WebLa Sécurité Sur Le Web
La Sécurité Sur Le Web
 
OWASP TOP 10 Proactive
OWASP TOP 10 ProactiveOWASP TOP 10 Proactive
OWASP TOP 10 Proactive
 
Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02Securitedesapplications 091011120426-phpapp02
Securitedesapplications 091011120426-phpapp02
 
Vulnérabilité des sites web
Vulnérabilité des sites webVulnérabilité des sites web
Vulnérabilité des sites web
 
Atelier hadoop-single-sign-on
Atelier hadoop-single-sign-onAtelier hadoop-single-sign-on
Atelier hadoop-single-sign-on
 
Introduction à La Sécurité Informatique 2/2
Introduction à La Sécurité Informatique 2/2Introduction à La Sécurité Informatique 2/2
Introduction à La Sécurité Informatique 2/2
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défense
 
Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016Rapport Threat Intelligence Check Point du 29 août 2016
Rapport Threat Intelligence Check Point du 29 août 2016
 
Owasp top 10 2010 Resist toulouse
Owasp top 10   2010  Resist toulouseOwasp top 10   2010  Resist toulouse
Owasp top 10 2010 Resist toulouse
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1
 
Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016Rapport Threat Intelligence Check Point du 23 mai 2016
Rapport Threat Intelligence Check Point du 23 mai 2016
 
Rapport Threat Intelligence Check Point du 20 juin 2016
Rapport Threat Intelligence Check Point du 20 juin 2016Rapport Threat Intelligence Check Point du 20 juin 2016
Rapport Threat Intelligence Check Point du 20 juin 2016
 
TP1 analyse de mémoire.pdf
TP1 analyse de mémoire.pdfTP1 analyse de mémoire.pdf
TP1 analyse de mémoire.pdf
 
Api win32 ancestrales pour chevaux de troie hyper furtifs
Api win32 ancestrales pour chevaux de troie hyper furtifsApi win32 ancestrales pour chevaux de troie hyper furtifs
Api win32 ancestrales pour chevaux de troie hyper furtifs
 
Securite web is_ima
Securite web is_imaSecurite web is_ima
Securite web is_ima
 
20100114 Waf V0.7
20100114 Waf V0.720100114 Waf V0.7
20100114 Waf V0.7
 
Sécurité Active Directory : détecter l’indétectable !
Sécurité Active Directory : détecter l’indétectable !Sécurité Active Directory : détecter l’indétectable !
Sécurité Active Directory : détecter l’indétectable !
 

Kürzlich hochgeladen

BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...idelewebmestre
 
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresBOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresidelewebmestre
 
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLBOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLidelewebmestre
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogneidelewebmestre
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairidelewebmestre
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinidelewebmestre
 
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasBOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasidelewebmestre
 
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsBOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsidelewebmestre
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsidelewebmestre
 
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresBOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresidelewebmestre
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleuridelewebmestre
 
BOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airBOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airidelewebmestre
 
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...idelewebmestre
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...idelewebmestre
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en Franceidelewebmestre
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresidelewebmestre
 
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineBOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineidelewebmestre
 
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...idelewebmestre
 
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud PorcsBOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud Porcsidelewebmestre
 

Kürzlich hochgeladen (20)

BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
 
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresBOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
 
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VLBOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
BOW 2024 -3-9 - Matelas de logettes à eau refroidie VL
 
Agrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en DordogneAgrivoltaïsme et filière ovine en Dordogne
Agrivoltaïsme et filière ovine en Dordogne
 
BOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chairBOW 2024 - Jardins d'hiver en poulets de chair
BOW 2024 - Jardins d'hiver en poulets de chair
 
BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcin
 
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pasBOW 2024 - Dedans/Dehors quand voir ne suffit pas
BOW 2024 - Dedans/Dehors quand voir ne suffit pas
 
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcinsBOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
BOW 24 - De la réflexion de groupe à l'immersion dans des bâtiments porcins
 
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminantsBow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
Bow 2024 - Plein air à l'intérieur des bâtiments d'élevage de ruminants
 
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitièresBOW 2024 - 3-2 - Stress thermique impact vaches laitières
BOW 2024 - 3-2 - Stress thermique impact vaches laitières
 
Webinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptxWebinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptx
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
 
BOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein airBOW 2024 - Logement des veaux laitiers en plein air
BOW 2024 - Logement des veaux laitiers en plein air
 
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...BOW 2024 - 3-3 -  Adaptation des bâtiments pour ruminants au changement clima...
BOW 2024 - 3-3 - Adaptation des bâtiments pour ruminants au changement clima...
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
 
Cadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en FranceCadre réglementaire et développement de l'agrivoltaïsme en France
Cadre réglementaire et développement de l'agrivoltaïsme en France
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitières
 
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équineBOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
BOW 2024 - L'écurie ouverte : un concept inspirant pour la filière équine
 
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...
Accompagnement de l'agrivoltaisme - Focus sur l'étude système en Merthe et Mo...
 
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud PorcsBOW 2024 - 3-6 - Adaptation climat chaud Porcs
BOW 2024 - 3-6 - Adaptation climat chaud Porcs
 

La sécurité des applications avec ESAPI

  • 1. Mai 2014 ECOLE NATIONALE SUPERIEURE D’INFORMATIQUE Mini-projet: D'lala Online TP N°3 IPLS Développement d’une application de vente en ligne sécurisée avec ESAPI Trinôme : KENOUCHE Takfarinas HALLAK Sidali Guernane Hamza Encadré par : Y.Challal
  • 2. Sommaire I. Description de l’application :.................................................................................................. 3 II. Description de l’outil de développement :............................................................................... 3 PLAY2 :................................................................................................................................... 3 III. Architecture de l’application :............................................................................................. 4 IV. La Sécurité du Framework PLAY2: ....................................................................................... 4 Est-ce que on besoin de ESAPI si on utilise PLAY2?................................................................... 4 1) ESAPI d’OWASP :............................................................................................................ 5 V. Intégration d’ESAPI dans le Framework PLAY2 :....................................................................... 6 VI. Prévention des Failles :....................................................................................................... 7 1) Le Cross Site Scripting :..................................................................................................... 7 2) Violation de Gestion d'Authentification et de Session :......................................................... 7 3) Références directes non sécurisées à un objet :..................................................................... 7 4) Exposition de données sensibles :........................................................................................ 7 5) Manque de contrôle d’accès au niveau fonctionnel :............................................................. 7 6) Falsification de requête intersites :....................................................................................... 7 VII. Intégration d’ESAPI ............................................................................................................ 8 1) Dans la classe commandes.java :......................................................................................... 8 2) Dans la classe Products.java :.............................................................................................. 9 VIII. Conclusion :....................................................................................................................... 9
  • 3. I. Description de l’application : L'application D'lala Online permet à un utilisateur authentifié d'effectuer une recherche de produits dans une base de données. Cette application garantit la sécurité de toutes les opérations que l’utilisateur peut effectuer. II. Description de l’outil de développement : L’application web D’lala Online à été développé avec le Framework PLAY2. PLAY2 : un Framework open source de développement web dans la sphère java, visant à offrir une productivité plus élevée aux développeurs de par sa simplicité et sa facilité d’accès. Play est un Framework MVC basé sur la JVM (il n’est pas un Framework JEE), il n’implémente pas la norme Servlet, il se base pas sur un serveur HTTP simple appelé Apache Mina. Ce Framework utilise des langages connus HTML, Scala et JAVA. Des grandes sites ont été développé avec PLAY2 citons :  LinkedIn : est un réseau social professionnel en ligne qui revendique plus de 300 millions de membres issus de 170 secteurs d'activités dans plus de 200 pays et territoires.  Klout : est un site web couplé avec une application pour Smartphones, qui prend en compte l'activité sur les médias sociaux pour classer ses utilisateurs en fonction de leur influence sociale en ligne.  The Guardian : est un quotidien d'information britannique  Gilt Groupe : est une entreprise de commerce électronique américaine, elle fait des ventes flash en ligne, de vêtements et d'accessoires de couturiers…etc.
  • 4. III. Architecture de l’application : L’application D’lala Online est organisée de tel sorte que : Le client peut passer une commande constituée de plusieurs produits, ces derniers appartiennent à des catégories différentes (un produit appartient à une seule catégorie). Toutes les commandes d’un client sont sauvegardées dans une ligne de commande. Le diagramme ci-dessous montre la structure de D’lala Online : IV. La Sécurité du Framework PLAY2: Le Web est devenu un lieu où on peut échanger des informations mais il est également devenu un marché à part entière pour la vente et l'achat de biens matériels. Les acteurs de ce nouveau marché ont besoin de sécurité sous tous ses aspects, la protection de la confidentialité, l'intégrité et de la disponibilité de l'information. Est-ce que on besoin de ESAPI si on utilise PLAY2? Play est assez robuste car il inclut l'échappement automatique de potentiels vecteur de cross site Scripting mais si vous n'utilisez pas les modèles de Framework PLAY2pour afficher les données (mais une API AJAX), vous aurez besoin de le faire séparément. Play offre également un cadre tout à fait bon de validation, mais vous avez encore besoin de mettre en œuvre des fonctions de validation pour certains types de contenu et c'est là que l'OWASP ESAPI est très utile.
  • 5. 1) ESAPI d’OWASP : C’est une bibliothèque open source destinée pour les applications web pour le contrôle de sécurité conçu pour permettre aux programmeurs de rénover des applications existantes de façon très simple. ESAPI pour Java est également une base solide pour un nouveau développement, surtout qu’elle permet la validation des entrées, l’encodage des sorties et le contrôle d’accès pour les objets. Les grands organismes qui l’utilisent :  L'Apache Software Foundation : est une organisation à but non lucratif qui développe des logiciels open source sous la licence Apache, dont le renommé serveur web Apache HTTP Server.  Foundstone de McAfee : le géant de la sécurité de l’information, fournit des solutions stratégiques aux problèmes de sécurité.  American Express : est une entreprise financière américaine, spécialisée dans les moyens de paiement, connue pour ses cartes de paiement ainsi que ses chèques de voyage et acteur de premier plan dans l'organisation de voyages d'affaires.  US Navy : est la marine de guerre des États-Unis et représente l'une des cinq composantes des forces armées des États-Unis. Elle est depuis la Seconde Guerre mondiale la première force aéronavale au monde.
  • 6. V. Intégration d’ESAPI dans le Framework PLAY2 : On va ajouter les fichiers d’ESAPI comme la montre la capture suivante : ESAPI à besoin des fichiers suivants :  esapi-2.1.0.jar : la librairie ESAPI qui va être placé dans le répertoire lib/.  Antisamy-esapi.xml : qui contient les règles de W3C qui permet de vérifier le contenu HTML introduit par l’utilisateur dont le but d’éviter des attaques tel que XSS.  Validation.properties : le validateur de d’ESAPI qui permet la vérification des entrées (exemple : validation par liste blanche).  ESAPI.properties : c’est le fichier de configuration d’ESAPI (au minimum il faut modifier Encryptor.MasterKey, Encryptor.MasterSalt).
  • 7. VI. Prévention des Failles : 1) Le Cross Site Scripting : Consiste à injecter du code (html, javascript ...) directement dans les pages web via un formulaire à remplir ou autres, cela amène à exécuter un script dans le navigateur de la victime afin de détourner des sessions utilisateur, défigurer des sites web, ou rediriger l'utilisateur vers des sites malveillants. Cette vulnérabilité va être évitée on utilisant la bibliothèque d’ESAPI d’OWASP. 2) Violation de Gestion d'Authentification et de Session : Les sessions ne sont pas généralement gérées correctement, ceci permet aux attaquants de compromettre les mots de passe, jetons de session, ou d'exploiter d'autres failles d'implémentation pour s'approprier les identités d'autres utilisateurs. 3) Références directes non sécurisées à un objet : Cela arrive lorsqu’expose une référence à un objet d'exécution interne, un enregistrement de base de données ou une clé de base de données. Les attaquants peuvent manipuler ces références pour accéder à des données non autorisées. 4) Exposition de données sensibles : Les données faiblement protégées sont exposées à divers attaques tel que le vol d'identité ou fraude. Ces données méritent une protection supplémentaire tel un chiffrement statique ou en transit, ainsi que des précautions particulières lors de l'échange avec le navigateur. 5) Manque de contrôle d’accès au niveau fonctionnel : Il est indispensable d’effectuer des vérifications de contrôle d'accès sur le serveur lors de l'accès à chaque fonction, dans le cas contraire il est possible de forger des demandes afin d'accéder à une fonctionnalité non autorisée. 6) Falsification de requête intersites : Cette attaque force le navigateur d'une victime authentifiée à envoyer une requête HTTP forgée, comprenant le cookie de session de la victime ainsi que toute autre information automatiquement inclue, à une application web vulnérable. Le Framework PLAY2 à été configuré pour résoudre les attaques (2, 3, 4,5 et 6) citées au-dessus.
  • 8. VII. Intégration d’ESAPI 1) Dans la classe commandes.java : Lors de la récupération des données d’une commande, il est indispensable de vérifier le flux de données venant du service web au tant que Json dont le but d’éviter les attaques de type XSS. La quantité et le total de la commande est récupéré comme étant un texte, on utilise la fonction encodeForJavaScript pour échapper le contenu JavaScript dans le cas d’une attaque XSS.
  • 9. 2) Dans la classe Products.java : Utiliser la fonction encodeForHtml lors de la récupération du nom, prix, description et catégorie du produit, pour échapper le contenu Html dans le cas d’une attaque XSS. VIII. Conclusion : La sécurité des applications Web ne peut plus être ignorée. De plus en plus souvent, les vols de données et les incidents liés aux applications Web font la une de l’actualité de la sécurité. Alors la solution c’est de combiner un Framework de développement d’application tel que Play avec un Framework de sécurité tel qu’ESAPI.