Title: Multiparty Authentication in Web Services
1Multi-party Authentication in Web
Services
2Overview
- Web Services Architecture
- Typical Scenario
- Security Threats
- Challenges and issues
- Need for Session Authentication
- Maruyamas Approach
- A Proposal
3Demystifying Webservices
- Web services are modular software components
- Wrapped inside a specific set of Internet
communications protocols - Can communicate with other components
automatically without human intervention.
4Typical Web Services
- airline ticket reservation process
- real time travel advisory
- a restaurant review article
5Web Site/ Web Service
A Web service is designed to be accessed by
applications.
6Web Service Working
- Each new request to a Web service is
automatically spawned as a new thread in the Web
Service process . - A Service could also delegate tasks to other
services. - Dynamic behavior of these short-lived services,
introduce new security challenges.
7Key roles in the Web services architecture
- 3 key roles--------a service provider, a service
registry and a service requestor. - 3 operations performed
- Publish--- makes the service description publicly
available. - Find operation discovers the Web service.
- Bind operation allows the service to be used by
the person or program requesting the service.
8Architecture
9Web Service Components
- Internet based modular applications
- Program to program communication
- XML
- WSDL
- SOAP
- UDDI
10Web Services Description Lang
- WSDL is the language used to create service
descriptions. - Able to create descriptions about the location of
the service, how to run it, what business is
hosting the service, the kind of service it is,
etc
11Simple Object Access Protocol
- SOAP is the means through which the service
provider, service registry and service requestor
communicate. - XML-based technology used to exchange structured
data between network applications. - SOAP is used to publish the service description
to a service registry. - All other interactions between service registry,
service requestor and service provider are done
via SOAP.
12Universal Description Discovery Integration
- UDDI is the directory technology used by
service registries that contain the description
of Web services - Allows the directory to be searched for a
particular Web service. - UDDI is in essence a Yellow Pages that can be
used to locate Web services.
13Web Service Architecture
Implementation of Services
(components)
UDDI
Interface Description with WSDL
1. Request
4. Request
Service Broker
Web Server For SOAP
Service requester
S E R V I C e
14Web Service Security-A concern
- Web services are based on message exchanges on
the net with the possibility of dynamic
short-term relationships. - Authentication Establishing identity of user
- Authorization Establishing what a user is
allowed to do.
15Web Service Securitycont
- Confidentiality Ensuring that only the intended
recipient can read the message, accompanied by
encryption. - Integrity Ensuring that the message has not been
tampered with, generally accomplished with
digital signatures.
16Web Service Workflows
- Dynamic composition
- Multiple instances
- Workflow involves service instances belonging to
different Web services - Multiple parties belong to a flow.
17Typical Web Service Scenario
18 Threats To Web Service Security
- Malicious web service threats typically fall into
one of three categories - Identity threats, such as authentication attacks,
eavesdropping etc. - Content-borne threats, which are attacks with
elements in the actual XML payload, such as XML
viruses. - XML Denial of Service (XdoS), which are new
application-level versions of network level DoS
attacks.
19Identity Threats.
- Unauthorized access
- Weak authentication and authorization
- Parameter manipulation
- Unauthorized modification of data
- Network eavesdropping
- Message replay
20Need for session Authentication
21Maruyamas protocol
- Session Authenticator component responsible for
distributing keys and authenticating messages - Each instance belonging to a session gets the
shared key
22Maruyamas protocol.cont
- Message authentication protocol
- transports authentication information between
session participants - Session management protocol
- responsible for starting, running and ending a
particular session.
23Message Authentication
- Session Authenticator
- Allows service instances to mutually verify
transient membership - Service Authenticator
- Protocol for sending Web service to send MACed
SOAP envelope to receiving Web Service
24Session Authenticator
- Sending instance prepares SOAP envelope
- Optionally uses XML encryption
- Adds authentication to SOAP header
- Using SOAP-DSIG applies MAC to envelope under
session key.
25Session Auth.cont
- Receiver checks for session key.
- Else obtains key from session manager.
- Validates MAC and accepts SOAP envelope.
- Decrypts encrypted message.
- Receiver now has authenticated mesg and session
handle.
26Service Authenticator
- Sending service prepares SOAP envelope.
- Adds authentication header.
- Uses SOAP-DSIG to digitally sign mesg.
- Optionally uses XML encryption.
- Receiver decrypts, validates signature, verifies
its own sign and accepts.
27Session Management
- Initiator of session could be SA
- Assigning session Ids.
- Creating session secrets.
- Maintaining status information for each session.
- Keeping participants informed of the status.
- Shutting down sessions.
28Online session Management
29Drawbacks ..
- SA cannot measure the validity of service
instance - Anyone who has session ID can contact SA.
- An attacker who has compromised an instance can
request to join session - No unique identifier for each instance
30Issues not considered
- What if Session Manager is malicious??
31WS-Security specifications
- The WS-Security specifications protect against
- Message alterationBy including digital
signatures for all or parts of the SOAP body and
the SOAP header. - Message disclosureBy supporting message
encryption.
32.Specifications cont
- Preserve message integrity through the use of
strong key algorithms. - Authenticate messages through the use of various
token mechanisms such as Kerberos and X.509.
33Challenges
- Dealing with un-trusted clients.
- Application internals are exposed.
- SOAP messages are not point to point
- Challenge is to preserve security of SOAP message
from initial SOAP sender to ultimate SOAP
receiver.
34SSL is inadequate
- SSL cannot be used to authenticate dynamically
generated participants - SSL provides point-to-point security
- Web Services need end-to-end security
- SSL does not support
- End-to-end confidentiality
- Element wise signing and encryption
- Non-repudiation
35A Proposal.Adaptive approach
- Requirements of users may vary.
- Is there need for stringent measures uniformly to
every node and transaction - Can we apply as much security as a particular
transaction requires?
36Sophisticated Web Services
- E.g order for aircraft engine
- Spawns multiple supporting transactions
- Orders to individual parts
- Orders for shipping containers
- Etc
- Involves handling huge volumes of traffic
37Adaptive approach .cont
- For Simple Web services existing security
measures may suffice. - For sophisticated Web Services involving long
transactions trusted third party model desirable. - Can an adaptive/hybrid approach be implemented???
38References
- 1. S. Hada and H. Maruyama, Session
Authentication Protocol for Web Services, - Proc. 2002 IEEE Symposium on Application
and the Internet, pp. 158-165, Jan. 2002. - 2. Dacheng Zhang and Jie Xu, Multi-Party
Authentication for Web Services - Protocols, Implementation and Evaluation,
Proc. 2004 IEEE Symposium on - Object Oriented Real-time Distributed
Computing. - 3. M.Hondo, N. Nagaratnam, A.Nadalin, Securing
Web Services, IBM Systems Journal, - Vol 41, No. 2, 2002.
- 4. David Geer, Taking Steps to Secure Web
Services, IEEE Computer, Vol 36, - Oct 2003.
- 5. V Vasudevan, A Web Services Primer,
- http//www.xml.com/pub/a/2001/04/04/Webservic
es/, April 2001. - 6. Y. Nakamur, S. Hada and R. Neyama, Towards
the Integration of - Web Services Security on Enterprise
Environments, Proc. 2002 Symposium on - Applications and the Internet, pp. 166-177,
Jan 2002. - 7. W3C NOTE, Simple Object Access Protocol (SOAP)
1.1, http//www.w3.org/TR/SOAP/
39References
- 8. W3C NOTE, SOAP Security Extensions Digital
Signature, - http//www.w3.org/TR/SOAP-dsig.
- 9. Web Services Security(WS-Security),
- http//www.ibm/developerworks/library/ws-sec
ure. - 10. Web Services Security Threats and
Countermeasures, - Microsoft Corporation, Jan 2004.