SlideShare ist ein Scribd-Unternehmen logo
1 von 45
Downloaden Sie, um offline zu lesen
Initiation à la sécurité des
Web Services (SOAP vs REST)

  Sylvain MARET
  Principal Consultant / MARET Consulting

  OpenID Switzerland & OWASP Switzerland
                                           Application Security Forum - 2012
                                                           Western Switzerland

                                       7-8 novembre 2012 - Y-Parc / Yverdon-les-Bains
                                       https://www.appsec-forum.ch
08.11.2012, Version 1.1 @smaret
2




Agenda
   Qu’est-ce qu’un Web Service ?
   SOAP
   REST
   Threat Modeling / ACME SA
   Réduction des risques
   Conclusion
   Questions
3




Bio
   18 years of experience in ICT Security
   Principal Consultant at MARET Consulting
   Expert at Engineer School of Yverdon
   Swiss French Area delegate at OpenID Switzerland
   Co-founder Geneva Application Security Forum
   OWASP Member
   Author of the blog: la Citadelle Electronique
   http://ch.linkedin.com/in/smaret or @smaret
   http://www.slideshare.net/smaret

 Chosen field
     – AppSec & Digital Identity Security
4




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
5




Web Service: la base….
6




Web Service ?



                XML, JSON,   Provider
     Consumer     etc.
7




Un peu d’histoire

   1990 : DCE/RPC – Distributed Computing Environment
   1992 : CORBA – Common Object Request Broker Architecture
   1990-1993 : Microsoft’s DCOM -- Distributed Component Object Model
   1995: RMI – Monde Java

 Pour arriver à une standardisation (toujours en cours) des protocoles, outils,
  langages et interfaces

     – SOAP
     – REST
     – Etc.
                               Web Service
8




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
9




SOAP vs REST ?
10




SOAP: Les ingrédients
11




SOAP: Démystification des technologies
 Langages
   – XML
   – WSDL : Descripteur du service
   – UDDI: Annuaire des services
 Protocoles
   – Transport: HTTP, HTTPS, SMTP, FTP, SMS, TFTP, SSH, etc. (TCP or UDP)
   – Message: Enveloppe SOAP
 Sécurité
   – WS-Security (Signature & Chiffrement)
 Autres éléments
   – AuthN: SAML, X509, Username & Password, Kerberos, HTTP Digest, etc.
12




Enveloppe SOAP

                       - SOAP : Simple Object Access Protocol

                       - Permet l’envoi de messages XML

                       - Agnostique au moyen de transport
                           - HTTP
                           - HTTPS
                           - FTP
                           - etc.




   Source= wikipédia
13




SOAP request




               SOAP response
14




UDDI
 Universal Description Discovery and Integration, connu
  aussi sous l'acronyme UDDI, est un annuaire de services
  fondé sur XML et plus particulièrement destiné aux
  services Web.
15




WSDL
 WSDL est une grammaire XML permettant
  de décrire un Service Web.

 Le WSDL sert à décrire :
    – le format de messages requis pour communiquer avec ce
      service
    – les méthodes que le client peut invoquer
    – la localisation du service
    – le protocole de communication (SOAP RPC ou SOAP orienté
      message)

http://fr.wikipedia.org/wiki/Web_Services_Description_Language
16




WSDL




http://predic8.com/wsdl-reading.htm
17




WSDL: exemple
18




SOAP: Démystification des protocoles
    Découverte                  UDDI



    Description                WSDL



      Message               SOAP / XML


                  HTTP, HTTPS, FTP, SFTP, SMS, SMTP
    Protocole
                            (TCP or UDP)


     Transport                   IP
19




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
20




REST: Les ingrédients
21




REST: Démystification des technologies
 Langages
   – XML
   – JSON
   – XHTML, HTML, PDF... as data formats
 Protocoles
   – HTTP(s)  Utilisation d’une URL
   – Méthode de communication (GET, POST, PUT, DELETE)
 Sécurité
   – Sécurité du transport (SSL/TLS)
   – Sécurité des messages: HMAC & Doseta (Like XML Signature)
 Autres éléments
   – Oauth, API Keys
22




Représentation REST (exemple JSON)
23




Méthodes REST
24




REST: Démystification des protocoles
        Découverte                             ???


         Description                    WADL, Swagger ***


           Message                       XML, JSON, etc.


         Protocole                         HTTP, HTTPS


          Transport                          TCP/IP


*** Avant-gardiste mais peux utiliser
25
26




SOAP vs REST
27




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
28




http://fr.wikipedia.org/wiki/Diagramme_de_flux_de_donn%C3%A9es
29
30




Modèle STRIDE




 https://www.owasp.org/index.php/Application_Threat_Modeling
31




Menaces selon le DFD Acme SA
 Threat 1
  – Interception des messages (Information disclosure)
  – Modification des messages (Tampering)
  – Usurpation d’identité (Spoofing)


 Threat 2
  – Attaque de l’application
     •   BoF
     •   Injection
     •   DoS & DDoS
     •   Etc
32




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
33



ACME SA: Réduction
des risques ?

   Chiffrement du transport
   AuthN
   SSL Mutual AuthN / X509
   WAF / XML Gateway
   Intégrité et confidentialité des messages
   Secure Coding
34




Chiffrement du transport
                 SOAP / XML           REST
HTTPS                         HTTPS
SSL/TLS tunnel
SSH
IPSEC
Etc.
35




AuthN
              SOAP / XML                               REST
HTTP Basic, Digest,              HTTP Basic, Digest,
HTTP Header                      HTTP Header
Mutual SSL                       Mutual SSL
IP trust                         IP trust
WS Security user name password   Oauth
WS SAML Authentication token     API Keys
XML Signature
Kerberos
Etc.
36




SSL Mutual AuthN / X509 / PKI
               SOAP / XML                                    REST
SSL/TLS Mutual AuthN**                      SSL/TLS Mutual AuthN**




** Man in the middle not possible… (As I Know)
37




WAF / XML Gateway (Protection périmétrique)
               SOAP / XML                     REST
Reverse Proxy               Reverse Proxy
Contrôle requêtes HTTP      Contrôle requêtes HTTP
Rupture SSL/TLS             Rupture SSL/TLS
Black List                  Black List
White List                  White List
Validation WSDL
Signature & Verification
Encryption & Decryption
SAML
38




Intégrité et confidentialité des messages
                 SOAP / XML                        REST
XML Signature                 •(p.ex: HMAC, Doseta)
XML Encryption                • JSON Signature
                              • **




                                   ** Pas de chiffrement à ma connaissance
39




Code security
                 SOAP / XML                                          REST
- Data input validation                          - Data input validation
- Data output encoding                           - Data output encoding
- Pseudorandom data generation, high             - Pseudorandom data generation, high
entropy                                          entropy
- Strong / reliable data encryption algorithms   - Strong / reliable data encryption algorithms
- Data leakage prevention                        - Data leakage prevention
- Robust error & exception handling              - Robust error & exception handling
- Anti-automation and expiration measures        - Anti-automation and expiration measures

OWASP Application Security Verification Standard (ASVS):
https://www.owasp.org/index.php/ASVS
WASC web application weaknesses:
http://projects.webappsec.org/w/page/13246978/Threat%20Classification
40




REST & OAuth
41




Agenda
    Qu’est-ce qu’un Web Service ?
    SOAP
    REST
    Threat Modeling / ACME SA
    Réduction des risques
    Conclusion
    Questions
42




Conclusion
 SOAP:
    –   Implémenter les standards WS-* liés à la sécurité
    –   Mettre en place un filtrage applicatif (WAF, XML GW)
    –   Complexe à mettre en œuvre (PKI, Secure coding, Cryptography, etc.)
    –   Architecture à forte contrainte de sécurité


 REST
    – Mettre en place un filtrage applicatif (WAF, XML GW)
    – Implémentation rapide et facile  tendance
    – Architecture de type Cloud, Intranet, Social Login, etc.


 On attend avec impatience les standards sécu pour REST ???
   – Pragmatique: protection périmétrique, chiffrement et Secure Coding ???
43




Pour aller plus loin….
44




Questions?
45




Merci / Thank you!

Contact:
   sma@maret-consulting.ch
   @smaret
   http://www.maret-consulting.ch
   Slides:
      http://slideshare.net/ASF-WS/

Weitere ähnliche Inhalte

Was ist angesagt?

Sécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-SecuritySécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-SecuritySlimen Belhaj Ali
 
Sécurisation des Web Services SOAP contre les attaques par injection par la m...
Sécurisation des Web Services SOAP contre les attaques par injection par la m...Sécurisation des Web Services SOAP contre les attaques par injection par la m...
Sécurisation des Web Services SOAP contre les attaques par injection par la m...Zakaria SMAHI
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiEl Habib NFAOUI
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web servicesoussemos
 
Utilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open SourceUtilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open Sourceguest3be047
 
Les web services
Les web servicesLes web services
Les web servicesdihiaselma
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introductionMoez Re
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)ENSET, Université Hassan II Casablanca
 
Fonctionnalités JBoss ESB
Fonctionnalités JBoss ESBFonctionnalités JBoss ESB
Fonctionnalités JBoss ESBFourat Zouari
 
Une RESTful Architecture
Une RESTful ArchitectureUne RESTful Architecture
Une RESTful ArchitectureBrisebois
 

Was ist angesagt? (20)

Sécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-SecuritySécurisation des services WCF avec WS-Security
Sécurisation des services WCF avec WS-Security
 
Sécurisation des Web Services SOAP contre les attaques par injection par la m...
Sécurisation des Web Services SOAP contre les attaques par injection par la m...Sécurisation des Web Services SOAP contre les attaques par injection par la m...
Sécurisation des Web Services SOAP contre les attaques par injection par la m...
 
Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaoui
 
Soap, wsdl et uddi
Soap, wsdl et uddiSoap, wsdl et uddi
Soap, wsdl et uddi
 
education
educationeducation
education
 
Presentation SOAP
 Presentation SOAP Presentation SOAP
Presentation SOAP
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
 
Soa & services web
Soa & services webSoa & services web
Soa & services web
 
Utilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open SourceUtilisation de services Web sécurisés en Java en environnement Open Source
Utilisation de services Web sécurisés en Java en environnement Open Source
 
Les web services
Les web servicesLes web services
Les web services
 
Soap
SoapSoap
Soap
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introduction
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
 
Langage HTML
Langage HTMLLangage HTML
Langage HTML
 
Fonctionnalités JBoss ESB
Fonctionnalités JBoss ESBFonctionnalités JBoss ESB
Fonctionnalités JBoss ESB
 
Ter Web Service Intro
Ter Web Service IntroTer Web Service Intro
Ter Web Service Intro
 
7 rest
7 rest7 rest
7 rest
 
HTTP et REST
HTTP et RESTHTTP et REST
HTTP et REST
 
Une RESTful Architecture
Une RESTful ArchitectureUne RESTful Architecture
Une RESTful Architecture
 

Andere mochten auch

Etat des lieux de la sécurisation des paiements par carte sur internet
Etat des lieux de la sécurisation des paiements par carte sur internetEtat des lieux de la sécurisation des paiements par carte sur internet
Etat des lieux de la sécurisation des paiements par carte sur internetBee_Ware
 
White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web servicesBee_Ware
 
La sécurité des Si en établissement de santé
La sécurité des Si en établissement de santéLa sécurité des Si en établissement de santé
La sécurité des Si en établissement de santéBee_Ware
 
Guide de mise en oeuvre d'une authentification forte avec une cps
Guide de mise en oeuvre d'une authentification forte avec une cpsGuide de mise en oeuvre d'une authentification forte avec une cps
Guide de mise en oeuvre d'une authentification forte avec une cpsBee_Ware
 
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...TelecomValley
 
Où intégrer les services web (association/event)
Où intégrer les services web (association/event)Où intégrer les services web (association/event)
Où intégrer les services web (association/event)Rémi Thomas
 
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
 
Menaces informatique et pratique de sécurité en france
Menaces informatique et pratique de sécurité en franceMenaces informatique et pratique de sécurité en france
Menaces informatique et pratique de sécurité en franceBee_Ware
 
Services web RESTful
Services web RESTfulServices web RESTful
Services web RESTfulgoldoraf
 
Architecture de services web de type ressource
Architecture de services web de type ressourceArchitecture de services web de type ressource
Architecture de services web de type ressourceAntoine Pouch
 
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicants
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicantsRésultats de l'étude sur l'utilisation des réseaux sociaux par les communicants
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicantsGuillaume Jarysta
 
Logiciels et services gratuits utiles en thèse - version 2017
Logiciels et services gratuits utiles en thèse - version 2017Logiciels et services gratuits utiles en thèse - version 2017
Logiciels et services gratuits utiles en thèse - version 2017URFIST de Paris
 

Andere mochten auch (16)

Etat des lieux de la sécurisation des paiements par carte sur internet
Etat des lieux de la sécurisation des paiements par carte sur internetEtat des lieux de la sécurisation des paiements par carte sur internet
Etat des lieux de la sécurisation des paiements par carte sur internet
 
White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web services
 
La sécurité des Si en établissement de santé
La sécurité des Si en établissement de santéLa sécurité des Si en établissement de santé
La sécurité des Si en établissement de santé
 
Guide de mise en oeuvre d'une authentification forte avec une cps
Guide de mise en oeuvre d'une authentification forte avec une cpsGuide de mise en oeuvre d'une authentification forte avec une cps
Guide de mise en oeuvre d'une authentification forte avec une cps
 
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...
SophiaConf 2010 Présentation de la conférence du 30 Juin - Gestion des identi...
 
Où intégrer les services web (association/event)
Où intégrer les services web (association/event)Où intégrer les services web (association/event)
Où intégrer les services web (association/event)
 
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
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 
Menaces informatique et pratique de sécurité en france
Menaces informatique et pratique de sécurité en franceMenaces informatique et pratique de sécurité en france
Menaces informatique et pratique de sécurité en france
 
Services web RESTful
Services web RESTfulServices web RESTful
Services web RESTful
 
Nagios 3
Nagios 3Nagios 3
Nagios 3
 
Architecture de services web de type ressource
Architecture de services web de type ressourceArchitecture de services web de type ressource
Architecture de services web de type ressource
 
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicants
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicantsRésultats de l'étude sur l'utilisation des réseaux sociaux par les communicants
Résultats de l'étude sur l'utilisation des réseaux sociaux par les communicants
 
Conference Php Web Services
Conference Php Web ServicesConference Php Web Services
Conference Php Web Services
 
Comprendre la securite web
Comprendre la securite webComprendre la securite web
Comprendre la securite web
 
Logiciels et services gratuits utiles en thèse - version 2017
Logiciels et services gratuits utiles en thèse - version 2017Logiciels et services gratuits utiles en thèse - version 2017
Logiciels et services gratuits utiles en thèse - version 2017
 

Ähnlich wie ASFWS 2012 / Initiation à la sécurité des Web Services par Sylvain Maret

soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnHINDGUENDOUZ
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlinangeeLee
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_servicesCamus LANMADOUCELO
 
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhxml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhindguendouz2000
 
Web APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)Restlet
 
Client riche et nouvelles technologies
Client riche et nouvelles technologiesClient riche et nouvelles technologies
Client riche et nouvelles technologiesSébastien Letélié
 
LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2Clément OUDOT
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services WebLilia Sfaxi
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de phpGautier DUMAS
 
Asterid: Linked Data Asterisms
Asterid: Linked Data AsterismsAsterid: Linked Data Asterisms
Asterid: Linked Data AsterismsGregoire Burel
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées servicesDonia Hammami
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESSOAT
 
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSO
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSOSL2009 - Identity Management Cycle - LDAP synchronization and WebSSO
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSOClément OUDOT
 
Asp.Net Web.API, SignalR et UX : le futur
Asp.Net Web.API, SignalR et UX : le futurAsp.Net Web.API, SignalR et UX : le futur
Asp.Net Web.API, SignalR et UX : le futurMicrosoft
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)Klee Group
 

Ähnlich wie ASFWS 2012 / Initiation à la sécurité des Web Services par Sylvain Maret (20)

soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
Démystifions l'API-culture!
Démystifions l'API-culture!Démystifions l'API-culture!
Démystifions l'API-culture!
 
Soap
SoapSoap
Soap
 
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhxml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
xml-webservices-intro.pdfhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
 
Web APIs in Action (in French)
Web APIs in Action (in French)Web APIs in Action (in French)
Web APIs in Action (in French)
 
Protocoles SSL/TLS
Protocoles SSL/TLSProtocoles SSL/TLS
Protocoles SSL/TLS
 
Client riche et nouvelles technologies
Client riche et nouvelles technologiesClient riche et nouvelles technologies
Client riche et nouvelles technologies
 
LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2LemonLDAP::NG et le support SAML2
LemonLDAP::NG et le support SAML2
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
 
(protocoles)
(protocoles)(protocoles)
(protocoles)
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
Asterid: Linked Data Asterisms
Asterid: Linked Data AsterismsAsterid: Linked Data Asterisms
Asterid: Linked Data Asterisms
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
 
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSO
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSOSL2009 - Identity Management Cycle - LDAP synchronization and WebSSO
SL2009 - Identity Management Cycle - LDAP synchronization and WebSSO
 
.NET DotNet CF - 3
.NET DotNet CF - 3.NET DotNet CF - 3
.NET DotNet CF - 3
 
Asp.Net Web.API, SignalR et UX : le futur
Asp.Net Web.API, SignalR et UX : le futurAsp.Net Web.API, SignalR et UX : le futur
Asp.Net Web.API, SignalR et UX : le futur
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 

Mehr von Sylvain Maret

Air Navigation Service Providers - Unsecurity on Voice over IP Radion
Air Navigation Service Providers - Unsecurity on Voice over IP RadionAir Navigation Service Providers - Unsecurity on Voice over IP Radion
Air Navigation Service Providers - Unsecurity on Voice over IP RadionSylvain Maret
 
factsheet_4g_critical_comm_en_vl
factsheet_4g_critical_comm_en_vlfactsheet_4g_critical_comm_en_vl
factsheet_4g_critical_comm_en_vlSylvain Maret
 
INA Volume 1/3 Version 1.02 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.02 Released / Digital Identity and AuthenticationINA Volume 1/3 Version 1.02 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.02 Released / Digital Identity and AuthenticationSylvain Maret
 
INA Volume 1/3 Version 1.0 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 Released / Digital Identity and AuthenticationINA Volume 1/3 Version 1.0 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 Released / Digital Identity and AuthenticationSylvain Maret
 
INA Volume 1/3 Version 1.0 RC / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 RC / Digital Identity and AuthenticationINA Volume 1/3 Version 1.0 RC / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 RC / Digital Identity and AuthenticationSylvain Maret
 
Strong Authentication State of the Art 2012 / Sarajevo CSO
Strong Authentication State of the Art 2012 / Sarajevo CSOStrong Authentication State of the Art 2012 / Sarajevo CSO
Strong Authentication State of the Art 2012 / Sarajevo CSOSylvain Maret
 
Threat Modeling / iPad
Threat Modeling / iPadThreat Modeling / iPad
Threat Modeling / iPadSylvain Maret
 
Strong Authentication in Web Application #SCS III
Strong Authentication in Web Application #SCS IIIStrong Authentication in Web Application #SCS III
Strong Authentication in Web Application #SCS IIISylvain Maret
 
Strong Authentication in Web Applications: State of the Art 2011
Strong Authentication in Web Applications: State of the Art 2011Strong Authentication in Web Applications: State of the Art 2011
Strong Authentication in Web Applications: State of the Art 2011Sylvain Maret
 
Strong Authentication in Web Application / ConFoo.ca 2011
Strong Authentication in Web Application / ConFoo.ca 2011Strong Authentication in Web Application / ConFoo.ca 2011
Strong Authentication in Web Application / ConFoo.ca 2011Sylvain Maret
 
Authentication and strong authentication for Web Application
Authentication and strong authentication for Web ApplicationAuthentication and strong authentication for Web Application
Authentication and strong authentication for Web ApplicationSylvain Maret
 
Geneva Application Security Forum 2010
Geneva Application Security Forum 2010Geneva Application Security Forum 2010
Geneva Application Security Forum 2010Sylvain Maret
 
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...Sylvain Maret
 
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...Sylvain Maret
 
Digital identity trust & confidence
Digital identity trust & confidenceDigital identity trust & confidence
Digital identity trust & confidenceSylvain Maret
 
Implementation of a Biometric Solution Providing Strong Authentication To Gai...
Implementation of a Biometric Solution Providing Strong Authentication To Gai...Implementation of a Biometric Solution Providing Strong Authentication To Gai...
Implementation of a Biometric Solution Providing Strong Authentication To Gai...Sylvain Maret
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Sylvain Maret
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Sylvain Maret
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Sylvain Maret
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Sylvain Maret
 

Mehr von Sylvain Maret (20)

Air Navigation Service Providers - Unsecurity on Voice over IP Radion
Air Navigation Service Providers - Unsecurity on Voice over IP RadionAir Navigation Service Providers - Unsecurity on Voice over IP Radion
Air Navigation Service Providers - Unsecurity on Voice over IP Radion
 
factsheet_4g_critical_comm_en_vl
factsheet_4g_critical_comm_en_vlfactsheet_4g_critical_comm_en_vl
factsheet_4g_critical_comm_en_vl
 
INA Volume 1/3 Version 1.02 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.02 Released / Digital Identity and AuthenticationINA Volume 1/3 Version 1.02 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.02 Released / Digital Identity and Authentication
 
INA Volume 1/3 Version 1.0 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 Released / Digital Identity and AuthenticationINA Volume 1/3 Version 1.0 Released / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 Released / Digital Identity and Authentication
 
INA Volume 1/3 Version 1.0 RC / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 RC / Digital Identity and AuthenticationINA Volume 1/3 Version 1.0 RC / Digital Identity and Authentication
INA Volume 1/3 Version 1.0 RC / Digital Identity and Authentication
 
Strong Authentication State of the Art 2012 / Sarajevo CSO
Strong Authentication State of the Art 2012 / Sarajevo CSOStrong Authentication State of the Art 2012 / Sarajevo CSO
Strong Authentication State of the Art 2012 / Sarajevo CSO
 
Threat Modeling / iPad
Threat Modeling / iPadThreat Modeling / iPad
Threat Modeling / iPad
 
Strong Authentication in Web Application #SCS III
Strong Authentication in Web Application #SCS IIIStrong Authentication in Web Application #SCS III
Strong Authentication in Web Application #SCS III
 
Strong Authentication in Web Applications: State of the Art 2011
Strong Authentication in Web Applications: State of the Art 2011Strong Authentication in Web Applications: State of the Art 2011
Strong Authentication in Web Applications: State of the Art 2011
 
Strong Authentication in Web Application / ConFoo.ca 2011
Strong Authentication in Web Application / ConFoo.ca 2011Strong Authentication in Web Application / ConFoo.ca 2011
Strong Authentication in Web Application / ConFoo.ca 2011
 
Authentication and strong authentication for Web Application
Authentication and strong authentication for Web ApplicationAuthentication and strong authentication for Web Application
Authentication and strong authentication for Web Application
 
Geneva Application Security Forum 2010
Geneva Application Security Forum 2010Geneva Application Security Forum 2010
Geneva Application Security Forum 2010
 
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...
Final conclusions of Working Group 3 at Workshop Münchenwiler 20-21 of May 20...
 
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...
Comment protéger de façon efficace son/ses identité(s) numérique(s) sur le We...
 
Digital identity trust & confidence
Digital identity trust & confidenceDigital identity trust & confidence
Digital identity trust & confidence
 
Implementation of a Biometric Solution Providing Strong Authentication To Gai...
Implementation of a Biometric Solution Providing Strong Authentication To Gai...Implementation of a Biometric Solution Providing Strong Authentication To Gai...
Implementation of a Biometric Solution Providing Strong Authentication To Gai...
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...
 
Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...Geneva Application Security Forum: Vers une authentification plus forte dans ...
Geneva Application Security Forum: Vers une authentification plus forte dans ...
 

ASFWS 2012 / Initiation à la sécurité des Web Services par Sylvain Maret

  • 1. Initiation à la sécurité des Web Services (SOAP vs REST) Sylvain MARET Principal Consultant / MARET Consulting OpenID Switzerland & OWASP Switzerland Application Security Forum - 2012 Western Switzerland 7-8 novembre 2012 - Y-Parc / Yverdon-les-Bains https://www.appsec-forum.ch 08.11.2012, Version 1.1 @smaret
  • 2. 2 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 3. 3 Bio  18 years of experience in ICT Security  Principal Consultant at MARET Consulting  Expert at Engineer School of Yverdon  Swiss French Area delegate at OpenID Switzerland  Co-founder Geneva Application Security Forum  OWASP Member  Author of the blog: la Citadelle Electronique  http://ch.linkedin.com/in/smaret or @smaret  http://www.slideshare.net/smaret  Chosen field – AppSec & Digital Identity Security
  • 4. 4 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 5. 5 Web Service: la base….
  • 6. 6 Web Service ? XML, JSON, Provider Consumer etc.
  • 7. 7 Un peu d’histoire  1990 : DCE/RPC – Distributed Computing Environment  1992 : CORBA – Common Object Request Broker Architecture  1990-1993 : Microsoft’s DCOM -- Distributed Component Object Model  1995: RMI – Monde Java  Pour arriver à une standardisation (toujours en cours) des protocoles, outils, langages et interfaces – SOAP – REST – Etc. Web Service
  • 8. 8 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 11. 11 SOAP: Démystification des technologies  Langages – XML – WSDL : Descripteur du service – UDDI: Annuaire des services  Protocoles – Transport: HTTP, HTTPS, SMTP, FTP, SMS, TFTP, SSH, etc. (TCP or UDP) – Message: Enveloppe SOAP  Sécurité – WS-Security (Signature & Chiffrement)  Autres éléments – AuthN: SAML, X509, Username & Password, Kerberos, HTTP Digest, etc.
  • 12. 12 Enveloppe SOAP - SOAP : Simple Object Access Protocol - Permet l’envoi de messages XML - Agnostique au moyen de transport - HTTP - HTTPS - FTP - etc. Source= wikipédia
  • 13. 13 SOAP request SOAP response
  • 14. 14 UDDI  Universal Description Discovery and Integration, connu aussi sous l'acronyme UDDI, est un annuaire de services fondé sur XML et plus particulièrement destiné aux services Web.
  • 15. 15 WSDL  WSDL est une grammaire XML permettant de décrire un Service Web.  Le WSDL sert à décrire : – le format de messages requis pour communiquer avec ce service – les méthodes que le client peut invoquer – la localisation du service – le protocole de communication (SOAP RPC ou SOAP orienté message) http://fr.wikipedia.org/wiki/Web_Services_Description_Language
  • 18. 18 SOAP: Démystification des protocoles Découverte UDDI Description WSDL Message SOAP / XML HTTP, HTTPS, FTP, SFTP, SMS, SMTP Protocole (TCP or UDP) Transport IP
  • 19. 19 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 21. 21 REST: Démystification des technologies  Langages – XML – JSON – XHTML, HTML, PDF... as data formats  Protocoles – HTTP(s)  Utilisation d’une URL – Méthode de communication (GET, POST, PUT, DELETE)  Sécurité – Sécurité du transport (SSL/TLS) – Sécurité des messages: HMAC & Doseta (Like XML Signature)  Autres éléments – Oauth, API Keys
  • 24. 24 REST: Démystification des protocoles Découverte ??? Description WADL, Swagger *** Message XML, JSON, etc. Protocole HTTP, HTTPS Transport TCP/IP *** Avant-gardiste mais peux utiliser
  • 25. 25
  • 27. 27 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 29. 29
  • 31. 31 Menaces selon le DFD Acme SA  Threat 1 – Interception des messages (Information disclosure) – Modification des messages (Tampering) – Usurpation d’identité (Spoofing)  Threat 2 – Attaque de l’application • BoF • Injection • DoS & DDoS • Etc
  • 32. 32 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 33. 33 ACME SA: Réduction des risques ?  Chiffrement du transport  AuthN  SSL Mutual AuthN / X509  WAF / XML Gateway  Intégrité et confidentialité des messages  Secure Coding
  • 34. 34 Chiffrement du transport SOAP / XML REST HTTPS HTTPS SSL/TLS tunnel SSH IPSEC Etc.
  • 35. 35 AuthN SOAP / XML REST HTTP Basic, Digest, HTTP Basic, Digest, HTTP Header HTTP Header Mutual SSL Mutual SSL IP trust IP trust WS Security user name password Oauth WS SAML Authentication token API Keys XML Signature Kerberos Etc.
  • 36. 36 SSL Mutual AuthN / X509 / PKI SOAP / XML REST SSL/TLS Mutual AuthN** SSL/TLS Mutual AuthN** ** Man in the middle not possible… (As I Know)
  • 37. 37 WAF / XML Gateway (Protection périmétrique) SOAP / XML REST Reverse Proxy Reverse Proxy Contrôle requêtes HTTP Contrôle requêtes HTTP Rupture SSL/TLS Rupture SSL/TLS Black List Black List White List White List Validation WSDL Signature & Verification Encryption & Decryption SAML
  • 38. 38 Intégrité et confidentialité des messages SOAP / XML REST XML Signature •(p.ex: HMAC, Doseta) XML Encryption • JSON Signature • ** ** Pas de chiffrement à ma connaissance
  • 39. 39 Code security SOAP / XML REST - Data input validation - Data input validation - Data output encoding - Data output encoding - Pseudorandom data generation, high - Pseudorandom data generation, high entropy entropy - Strong / reliable data encryption algorithms - Strong / reliable data encryption algorithms - Data leakage prevention - Data leakage prevention - Robust error & exception handling - Robust error & exception handling - Anti-automation and expiration measures - Anti-automation and expiration measures OWASP Application Security Verification Standard (ASVS): https://www.owasp.org/index.php/ASVS WASC web application weaknesses: http://projects.webappsec.org/w/page/13246978/Threat%20Classification
  • 41. 41 Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  • 42. 42 Conclusion  SOAP: – Implémenter les standards WS-* liés à la sécurité – Mettre en place un filtrage applicatif (WAF, XML GW) – Complexe à mettre en œuvre (PKI, Secure coding, Cryptography, etc.) – Architecture à forte contrainte de sécurité  REST – Mettre en place un filtrage applicatif (WAF, XML GW) – Implémentation rapide et facile  tendance – Architecture de type Cloud, Intranet, Social Login, etc.  On attend avec impatience les standards sécu pour REST ??? – Pragmatique: protection périmétrique, chiffrement et Secure Coding ???
  • 43. 43 Pour aller plus loin….
  • 45. 45 Merci / Thank you! Contact: sma@maret-consulting.ch @smaret http://www.maret-consulting.ch Slides: http://slideshare.net/ASF-WS/