You are on page 1of 38

Web Service Security

R A L I S PA R :

E N C A D R PA R :

HAMZA BENDHIBA

M . YO U N S E L BO UZ E K R I E L
ID R I S S I

AYO U B B E N H A M M O U

Plan
Introduction
Les Services
Web
Web Service
Security
Caractristiqu
es

Mcanismes

Conclusion
2

INTRODUCTION

Les Services Web


La technologie des services Web est un moyen rapide de
distribution de l'information entre clients, fournisseurs,
partenaires commerciaux et leurs diffrentes plates-formes.
Les services Web sont bass sur le modle SOA
(Service-Oriented Architecture) .
Un service Web est tout simplement un programme
accessible au moyen d'Internet, qui utilise un systme de
messagerie standard XML, etn'est li aucun systme
d'exploitation ou langage de programmation
4

Architecture d'un service Web


Publication et Dcouverte
WS-Inspection, UDDI
Descripteur du Service
WSDL
Echange
SOAP
Protocole de transport
HTTP, SMTP, FTP
Internet
TCP/IP

Architecture d'un service Web


(Simple object Access Protocol) Protocole de communication via internet

SOAP est un protocole dcrit en XML, Standardis par le W3C

Langage indpendant, protocole lger, simple & extensible

SOAP

Circule sur le protocole HTTP

permet d'effectuer des appels de mthodes distance


une enveloppe pouvant tre signe et pouvant contenir des donnes ou des
pices jointes

Le Web Service nest pas scuris


Stocker les informations relatives
aux services Web

PEUT
Traiter les requtes SOAP entrantes

SOAP Server

Vrifier les requtes SOAP entrantes

PEUT PAS

Distinction entre les services web


sensibles et non sensibles
Effectue l'authentification de
l'utilisateur, lautorisation et de
contrle d'accs.
7

Le Web Service nest pas scuris


Les messages XML circulent sur le rseau. Nimporte
qui peut facilement sniffer et lire le texte.
WS est utilise SSL dans la couche de transport, mais
ne garantit pas la scurit de bout en bout. SSL crypte
galement tout ce qui nest pas obligatoire.
Il existe de nombreux moyens d'assurer la scurit
des messages des Web Services, WS-Security est un
moyen standard de scurisation WS.
8

WEB SERVICE SECURITY

WS-Security : Dfinition
Publie par Microsoft, IBM et Verisign
Le 19 avril 2004, la spcification WS-Security 1.0 a t lance par
OASIS-Open.
Dfinit un modle qui permet d'appliquer la scurit aux messages
SOAP.
Intgre les spcifications mises au point par le W3C autour du
chiffrement et de la signature des documents XML - XML
Encryption et XML Signature
Utilise des jetons de scurit combins des formats de
certificat
1

WS-Security : spcifications
WSSecureConcersatio
n

WS-Federation

WS-Authorizaion

WS-Policy

WS-Trust

WS-Privacy

WS-Security
SOAP Foundation

WS-Security : Caractristiques

WS-Security rpond trois problmatiques principales :


Comment signer les messages SOAP pour en assurer
l'intgrit et en viter la transformation par un tiers.
Comment chiffrer les messages SOAP pour en assurer la
confidentialit.
Comment attacher des jetons de scurit pour garantir
l'identit de l'metteur et assurer la non-rpudiation.

WS-Security : Implmentation
SOAP Envelope
Security Feeder

SOAP Envelope
SOAP Body

Security Token
Signature
SOAP Body

SOAP

Web Service

Secure
SOAP
SOAP

WSS-module

SOAP

WSS-module

Requester

WS-Security : Communication

WS-Security
La spcification WS-Security dfinit un ensemble
dextension SOAP.
WS-Security sinspire des mcanismes existants
permettant la mise en place dune infrastructure
scurise
WS-Security propose quatre mcanismes constituant un
socle flexible
de protection
des services Web :
Signature
des messages
Chiffrement des messages
Transmission de jeton de scurit
Time-Stamp

Signature des messages


Signer un message permet de garantir que le message na
pas t altr au cours de lchange et que lmetteur du
message en est bien lauteur en se fondant sur lidentit
vhicule par le jeton de scurit.
Avec WS-Security, lintgrit du message se fonde sur
lutilisation conjointe de jetons de scurit et du protocole
XML Signature qui dfinit des mcanismes de signature
chiffre dun message XML.
1

Chiffrement des messages


Pour garantir la confidentialit des changes, WS-Security
offre des mcanismes de chiffrement et dchiffrement des
messages qui se fondent sur lutilisation conjointe de jetons
de scurit et du protocole XML Encryption pour chiffrer des
parties du message SOAP.
WS-Security permet de chiffrer toutes composantes dun
message (corps, entte,pices jointes) soit par le partage
dune cl symtrique entre metteur et rcepteur,soit par la
transmission chiffre de la cl dans le message.
1

Transmission de jeton
WS-Security permet de transmettre des jetons de scurit via des
systmes htrognes par l'inclusion de jetons de scurit fonde
sur des mcanismes standards indpendants des mcanismes de
transport spcifiques.

Jeton bas sur le couple utilisateur/mot


de passe
Jetons binaires : ticket Kerberos,
certificat X.509
Jetons XML : SAML
1

Transmission de jeton
Mcanismes

Avantages

Inconvnients

Utilisateur/mot
de passe

Indpendant de l'environnement, Moins scuris.


de la
technologie.
Simple mettre en uvre.

Kerberos

Trs scuris.

Ne fonctionne
qu'au sein d'un
domaine Kerberos.

X.509

Trs scuris.
Interoprabilit.

Ncessite une PKI.

SAML

Mcanismes d'change
d'information
d'authentification et
d'autorisation.

Peu
d'implmentations
existant
aujourd'hui.
1

Transmission de jeton
Jeton couple utilisateur/mot de passe

2Validation

Username/Passwor
d

Envoi Requte
Message

3Envoi Rponse
Message

Service

Client

Transmission de jeton
Certificat numrique X.509

Un certificat numrique X.509 version 3 permet


dindiquer prcisment qui est lutilisateur en
lui associant une cl publique.
On lutilise des fins dauthentification, de
signature, de confidentialit, et dintgrit.

Transmission de jeton
Certificat numrique X.509

4 Attacher le

Certifica
te Store

S
C

Certificat Client
le
au message
5 Signer
1 Rcuprer le Certificat du Message avec
cl prive
Crypter
le
6 sa
Service
2 Rcuprer le Certificat
Message avec la
du Client
cl publique du
3 Rcuprer la Cl Prive
service

7 Envoi Requte
Message

Client

Service

Transmission de jeton
Certifica
te Store

Certificat numrique X.509

Rcuprer le Certificat du 1
ServiceRcuprer la Cl Prive
2

4 Dcrypter le
message

5 Vrifier la

7 Envoi Message
Rponse

Client

signature

Service

Transmission de jeton
Jeton binaire : Kerberos
Kerberos est un protocole standard dauthentification au sein du
domaine, se basant sur une double authentification (aussi appele
authentification mutuelle ) de lidentit de lutilisateur et des
services rseaux.

lautorit
approuve

Client

Service

Transmission de jeton
Jeton binaire : Kerberos
Chiffrement
Chiffrement
Clef de
session

Clef de service

Ticket
Clef du
client

Transmis
au client

Scnario dauthentification Windows

WS-Security : Transmission de jeton


Centre de
distributio
n de cls

3Signer le

Jeton binaire : Kerberos

1 Demander un ticket de
service
2 Rcuprer le ticket de

message
4 Crypter le
message

Client

service

Service

Traitement par le client


Jeton binaire : Kerberos

Chiffrement
Authentifiant

Reu par
Le client

Authentifiant

Dchiffrement

Clef du
client

Transmis
Au service

Transmission de jeton
Jeton binaire : Kerberos

Centre de
distributio
n de cls

3Signer le

1 Demander un ticket de
service
2 Rcuprer le ticket de

message
4 Crypter le
message

6 Valider le jeton

service

5 Envoi Requte
Message

Client

Service

Transmission de jeton
Jeton binaire : Kerberos

Dchiffrement

Authentifiant

Authentifiant

Reu par
Le serveur
De ressource
Dchiffrement

OUI

Clef de service

Accs

Valide ?

NON

Refus

Transmission de jeton
Jeton binaire : Kerberos

Centre de
distributio
n de cls

3Signer le

1 Demander un ticket de
service
2 Rcuprer le ticket de

message
4 Crypter le
message

service

6 Valider le jeton
7 Dcrypter le
message
8Vrifier la
signature

5 Envoi Requte
Message

Client

Envoi Message
Rponse

Service

Transmission de jeton
Jeton XML : SAML

Le protocole SAML dfinit un langage qui permet


dchanger des donnes scurit au niveau des
utilisateurs et tente de rpondre la problmatique
dauthentification unique.

Transmission de jeton
Jeton XML : SAML

2 Signer le jeton SAML

Service
de
jetons

avec le certificat

5 Signer le

Message
avec la cl.

1 Demander un jeton SAML


3 Rcuprer le jeton SAML
4 Rcuprer la Cl de

Vrifier la signature
du jeton SAML

Vrifier la signature
du message.

revendication

6 Envoi Requte
9
Client

Message
Envoi Message
Rponse
Service

WS-Security : Timestamp
Cest important de vrifier la fracheur du message avant de commencer
son traitement.
Timestamp est mis dans chaque message SOAP afin que vous pouvez
rduire le risque d'attaques par rejeu.
<wsu:timestamp wsu:id="Timestamp-1" xmlns:wsu="http://docs.oasisopen.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsu:created>2015-01-14T12:11:41.331Z</wsu:created>
<wsu:expires>2015-01-14T12:16:41.331Z</wsu:expires>
</wsu:timestamp>

WS-Security : Timestamp

Pirate

1 Envoi Requte
Message

Client

Service

WS-Security : Timestamp

Pirate

1 Bombarder avec les


mme paquets
V
2rifier le timestamp
R
3efus des paquets

Service

Conclusion

Cot serveur WEB-service

WS-Security
WS-Federation
WS-Privacy
WS-Security
Policy

WS-SecureConversation
WS-Trust

XML Encryption

SAML Kerberos X.509


Security Token Profiles

XML Digital Signatures


XML, SOAP, WSDL, Schema, WS-Addressing, etc.
.Net TCP Channel,
Fast InfoSet, etc.

HTTP
SSL

Merci Pour Votre Attentio

You might also like