Initiation à la sécurité desWeb Services (SOAP vs REST)  Sylvain MARET  Principal Consultant / MARET Consulting  OpenID Sw...
2Agenda   Qu’est-ce qu’un Web Service ?   SOAP   REST   Threat Modeling / ACME SA   Réduction des risques   Conclusi...
3Bio   18 years of experience in ICT Security   Principal Consultant at MARET Consulting   Expert at Engineer School of...
4Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    Co...
5Web Service: la base….
6Web Service ?                XML, JSON,   Provider     Consumer     etc.
7Un peu d’histoire   1990 : DCE/RPC – Distributed Computing Environment   1992 : CORBA – Common Object Request Broker Ar...
8Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    Co...
9SOAP vs REST ?
10SOAP: Les ingrédients
11SOAP: Démystification des technologies Langages   – XML   – WSDL : Descripteur du service   – UDDI: Annuaire des servic...
12Enveloppe SOAP                       - SOAP : Simple Object Access Protocol                       - Permet l’envoi de me...
13SOAP request               SOAP response
14UDDI Universal Description Discovery and Integration, connu  aussi sous lacronyme UDDI, est un annuaire de services  fo...
15WSDL WSDL est une grammaire XML permettant  de décrire un Service Web. Le WSDL sert à décrire :    – le format de mess...
16WSDLhttp://predic8.com/wsdl-reading.htm
17WSDL: exemple
18SOAP: Démystification des protocoles    Découverte                  UDDI    Description                WSDL      Message...
19Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    C...
20REST: Les ingrédients
21REST: Démystification des technologies Langages   – XML   – JSON   – XHTML, HTML, PDF... as data formats Protocoles   ...
22Représentation REST (exemple JSON)
23Méthodes REST
24REST: Démystification des protocoles        Découverte                             ???         Description              ...
25
26SOAP vs REST
27Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    C...
28http://fr.wikipedia.org/wiki/Diagramme_de_flux_de_donn%C3%A9es
29
30Modèle STRIDE https://www.owasp.org/index.php/Application_Threat_Modeling
31Menaces selon le DFD Acme SA Threat 1  – Interception des messages (Information disclosure)  – Modification des message...
32Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    C...
33ACME SA: Réductiondes risques ?   Chiffrement du transport   AuthN   SSL Mutual AuthN / X509   WAF / XML Gateway   ...
34Chiffrement du transport                 SOAP / XML           RESTHTTPS                         HTTPSSSL/TLS tunnelSSHIP...
35AuthN              SOAP / XML                               RESTHTTP Basic, Digest,              HTTP Basic, Digest,HTTP...
36SSL Mutual AuthN / X509 / PKI               SOAP / XML                                    RESTSSL/TLS Mutual AuthN**    ...
37WAF / XML Gateway (Protection périmétrique)               SOAP / XML                     RESTReverse Proxy              ...
38Intégrité et confidentialité des messages                 SOAP / XML                        RESTXML Signature           ...
39Code security                 SOAP / XML                                          REST- Data input validation           ...
40REST & OAuth
41Agenda    Qu’est-ce qu’un Web Service ?    SOAP    REST    Threat Modeling / ACME SA    Réduction des risques    C...
42Conclusion SOAP:    –   Implémenter les standards WS-* liés à la sécurité    –   Mettre en place un filtrage applicatif...
43Pour aller plus loin….
44Questions?
45Merci / Thank you!Contact:   sma@maret-consulting.ch   @smaret   http://www.maret-consulting.ch   Slides:      http://sl...
Prochain SlideShare
Chargement dans…5
×

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

1 569 vues

Publié le

Avec l’expansion des services en lignes via le cloud ou tout simplement l’interconnexion des SI, le besoin d’exposer des services vers l’extérieur est croissant. Les WebServices sont une solution
maintenant éprouvée depuis longtemps pour répondre à ce besoin.
Que l’on utilise SOAP ou REST un problème se pose toujours : comment faire pour sécuriser l’accès à mon SI alors que j’en ouvre une porte en exposant mon métier ? Cette conférence tentera de répondre à ces questions en présentant des cas concrets d’implémentation.

Publié dans : Technologie
0 commentaire
3 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 569
Sur SlideShare
0
Issues des intégrations
0
Intégrations
32
Actions
Partages
0
Téléchargements
92
Commentaires
0
J’aime
3
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

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

  1. 1. Initiation à la sécurité desWeb 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.ch08.11.2012, Version 1.1 @smaret
  2. 2. 2Agenda Qu’est-ce qu’un Web Service ? SOAP REST Threat Modeling / ACME SA Réduction des risques Conclusion Questions
  3. 3. 3Bio 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. 4Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  5. 5. 5Web Service: la base….
  6. 6. 6Web Service ? XML, JSON, Provider Consumer etc.
  7. 7. 7Un 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. 8Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  9. 9. 9SOAP vs REST ?
  10. 10. 10SOAP: Les ingrédients
  11. 11. 11SOAP: 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. 12Enveloppe 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. 13SOAP request SOAP response
  14. 14. 14UDDI Universal Description Discovery and Integration, connu aussi sous lacronyme UDDI, est un annuaire de services fondé sur XML et plus particulièrement destiné aux services Web.
  15. 15. 15WSDL 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. 16. 16WSDLhttp://predic8.com/wsdl-reading.htm
  17. 17. 17WSDL: exemple
  18. 18. 18SOAP: 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. 19Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  20. 20. 20REST: Les ingrédients
  21. 21. 21REST: 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. 22. 22Représentation REST (exemple JSON)
  23. 23. 23Méthodes REST
  24. 24. 24REST: 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. 25
  26. 26. 26SOAP vs REST
  27. 27. 27Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  28. 28. 28http://fr.wikipedia.org/wiki/Diagramme_de_flux_de_donn%C3%A9es
  29. 29. 29
  30. 30. 30Modèle STRIDE https://www.owasp.org/index.php/Application_Threat_Modeling
  31. 31. 31Menaces 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. 32Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  33. 33. 33ACME SA: Réductiondes risques ? Chiffrement du transport AuthN SSL Mutual AuthN / X509 WAF / XML Gateway Intégrité et confidentialité des messages Secure Coding
  34. 34. 34Chiffrement du transport SOAP / XML RESTHTTPS HTTPSSSL/TLS tunnelSSHIPSECEtc.
  35. 35. 35AuthN SOAP / XML RESTHTTP Basic, Digest, HTTP Basic, Digest,HTTP Header HTTP HeaderMutual SSL Mutual SSLIP trust IP trustWS Security user name password OauthWS SAML Authentication token API KeysXML SignatureKerberosEtc.
  36. 36. 36SSL Mutual AuthN / X509 / PKI SOAP / XML RESTSSL/TLS Mutual AuthN** SSL/TLS Mutual AuthN**** Man in the middle not possible… (As I Know)
  37. 37. 37WAF / XML Gateway (Protection périmétrique) SOAP / XML RESTReverse Proxy Reverse ProxyContrôle requêtes HTTP Contrôle requêtes HTTPRupture SSL/TLS Rupture SSL/TLSBlack List Black ListWhite List White ListValidation WSDLSignature & VerificationEncryption & DecryptionSAML
  38. 38. 38Intégrité et confidentialité des messages SOAP / XML RESTXML Signature •(p.ex: HMAC, Doseta)XML Encryption • JSON Signature • ** ** Pas de chiffrement à ma connaissance
  39. 39. 39Code security SOAP / XML REST- Data input validation - Data input validation- Data output encoding - Data output encoding- Pseudorandom data generation, high - Pseudorandom data generation, highentropy 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 measuresOWASP Application Security Verification Standard (ASVS):https://www.owasp.org/index.php/ASVSWASC web application weaknesses:http://projects.webappsec.org/w/page/13246978/Threat%20Classification
  40. 40. 40REST & OAuth
  41. 41. 41Agenda  Qu’est-ce qu’un Web Service ?  SOAP  REST  Threat Modeling / ACME SA  Réduction des risques  Conclusion  Questions
  42. 42. 42Conclusion 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. 43Pour aller plus loin….
  44. 44. 44Questions?
  45. 45. 45Merci / Thank you!Contact: sma@maret-consulting.ch @smaret http://www.maret-consulting.ch Slides: http://slideshare.net/ASF-WS/

×