CS 356 Lecture 28 Internet Authentication Spring 2013 Review - - PowerPoint PPT Presentation
CS 356 Lecture 28 Internet Authentication Spring 2013 Review - - PowerPoint PPT Presentation
CS 356 Lecture 28 Internet Authentication Spring 2013 Review Chapter 1: Basic Concepts and Terminology Chapter 2: Basic Cryptographic Tools Chapter 3 User Authentication Chapter 4 Access Control Lists Chapter
Review
- Chapter 1: Basic Concepts and Terminology
- Chapter 2: Basic Cryptographic Tools
- Chapter 3 – User Authentication
- Chapter 4 – Access Control Lists
- Chapter 5 – Database Security (skipped)
- Chapter 6 – Malicious Software
- Networking Basics (not in book)
- Chapter 7 – Denial of Service
- Chapter 8 – Intrusion Detection
- Chapter 9 – Firewalls and Intrusion Prevention
- Chapter 10 – Buffer Overflow
- Chapter 11 – Software Security
- Chapter 12 – OS Security
- Chapter 22 – Internet Security Protocols
- Chapter 23 – Internet Authentication Applications
Chapter 23
Internet Authentication Applications
Kerberos Overview
- initially developed at MIT
- software utility available in both the public
domain and in commercially supported versions
- issued as an Internet standard and is the
defacto standard for remote authentication
- overall scheme is that of a trusted third party
authentication service
- requires that a user prove his or her identity
for each service invoked and requires servers to prove their identity to clients
Kerberos Protocol
- designed to counter a variety of threats to the security of a client/server dialogue
- obvious security risk is impersonation
- servers must be able to confirm the identities of clients who request service
involves clients, application servers, and a Kerberos server
- user initially negotiates with AS for identity verification
- AS verifies identity and then passes information on to an application server
which will then accept service requests from the client use an Authentication Server (AS)
- if client sends user’s password to the AS over the network an opponent could
- bserve the password
- an opponent could impersonate the AS and send a false validation
need to find a way to do this in a secure way
Authentication Server (AS) Ticket- granting Server (TGS)
r e q u e s t t i c k e t
- g
r a n t i n g t i c k e t
- nce per
user logon session
- 1. User logs on to
workstation and requests service on host.
- 3. Workstation prompts
user for password and uses password to decrypt incoming message, then sends ticket and authenticator that contains user's name, network address, and time to TGS. ticket + session key r e q u e s t s e r v i c e
- g
r a n t i n g t i c k e t ticket + session key
- nce per
type of service
- 4. TGS decrypts ticket and
authenticator, verifies request, then creates ticket for requested server.
Kerberos
- 5. Workstation sends
ticket and authenticator to server.
- 6. Server verifies that
ticket and authenticator match, then grants access to service. If mutual authentication is required, server returns an authenticator. r e q u e s t s e r v i c e p r
- v
i d e s e r v e r a u t h e n t i c a t
- r
- nce per
service session
Figure 23.1 Overview of Kerberos
- 2. AS verifies user's access right in
database, creates ticket-granting ticket and session key. Results are encrypted using key derived from user's password.
Kerberos Overview
Kerberos Realms
- a Kerberos environment consists of:
– a Kerberos server – a number of clients, all registered with server – a number of application servers, sharing keys with server
- this is referred to as a realm
– networks of clients and servers under different administrative
- rganizations generally constitute different realms
- if multiple realms:
– their Kerberos servers must share a secret key and trust the Kerberos server in the other realm to authenticate its users – participating servers in the second realm must also be willing to trust the Kerberos server in the first realm
Kerberos Realms
AS TGS Kerberos Client Realm A AS TGS Kerberos Server Realm B
- 1. request ticket for local TGS
- 2. ticket for local TGS
3 . r e q u e s t t i c k e t f
- r
r e m
- t
e T G S 4 . t i c k e t f
- r
r e m
- t
e T G S 5 request ticket for remote server 6 ticket for remote server
- 7. request remote service
Figure 23.2 Request for Service in Another Realm
Kerberos Versions 4 and 5
- Kerberos v4 is most widely used version
- improvements found in version 5:
– an encrypted message is tagged with an encryption algorithm identifier
- this enables users to configure Kerberos to use an
algorithm other than DES
– supports authentication forwarding
- enables a client to access a server and have that
server access another server on behalf of the client
- supports a method for interrealm authentication that
requires fewer secure key exchanges than in version 4
Kerberos Performance Issues
- see larger client-server installations
- Kerberos performance impact in a large-scale
Kerberos security is best assured by placing the Kerberos server on a separate, isolated machine
- motivation for multiple realms is administrative, not
performance related
environment:
- very little if system is properly configured
- tickets are reusable which reduces traffic
Certificate Authority (CA)
certificate consists of:
- a public key plus a User ID of the key owner
- signed by a trusted third party
- typically the third party is a CA that is trusted by the user community
(such as a government agency or a financial institution)
user can present his or her public key to the authority in a secure manner and obtain a certificate
- user can then publish the certificate
- anyone needing this user’s public key can obtain the certificate and
verify that it is valid by way of the attached trusted signature
X.509 Authentication Service
universally accepted standard for formatting public-key certificates part of CCITT X.500 directory service standards uses public-key crypto & digital signatures
- widely used in network
security applications, including IPsec, SSL, SET, and S/MIME
- algorithms not
standardized, but RSA recommended
X.509 Certificates
Certificate Serial Number Version Issuer Name Signature algorithm identifier Subject Name Extensions Issuer Unique Identifier Subject Unique Identifier
algorithm parameters not before
algorithms parameters key algorithms parameters encrypted hash (a) X.509 Certificate
not after
Subject's public key info Signature
Figure 23.3 X.509 Formats
Period of validity
Version 1 Version 2 Version 3 all versions
Issuer Name This Update Date Next Update Date ! ! ! Signature algorithm identifier
algorithm parameters user certificate serial #
(b) Certificate Revocation List
revocation date
algorithms parameters encrypted hash
Signature Revoked certificate
user certificate serial # revocation date
Revoked certificate
Public Key Infrastructure X.509 (PKIX)
End entity certificate/CRL retrieval certificate publication certificate/CRL publication CRL publication cross certification Certificate/CRL Repository Certificate authority Registration authority Certificate authority registration, initialization, certification, key pair recovery, key pair update revocation request PKI users PKI management entities CRL issuer
Figure 23.4 PKIX Architectural Model
PKIX Management Functions
registration initialization certification key pair recovery key pair update revocation request cross certification
Federated Identity Management
- use of common identity management scheme
– across multiple enterprises and numerous applications – supporting many thousands, even millions of users
- principal elements are:
– authentication, authorization, accounting, provisioning, workflow automation, delegated administration, password synchronization, self-service password reset, federation
Identity Management
Principal Principal Administrator Administrator Data consumer
Identity control interface Principals provide attributes Principals authenticate, manage their identity elements Administrators provide attributes Data consumers apply references to obtain attribute data Data consumers obtain identifiers, attribute references
Identity Provider
Figure 23.5 Generic Identity Management Architecture
Attribute locator Principal authentication Identifier translation
Data consumer Attribute service Attribute service Attribute service Principal
Standards Used
Extensible Markup Language (XML)
characterizes text elements in a document
- n
appearance, function, meaning, or context
Simple Object Access Protocol (SOAP)
for invoking code using XML over HTTP
WS-Security
set of SOAP extensions for implementing message integrity and confidentiality in Web services
Security Assertion Markup Language (SAML)
XML-based language for the exchange
- f security
information between
- nline
business partners
Federated Identity Management
User store
(a) Federation based on account linking (b) Chained Web Services
Figure 23.6 Federated Identity Scenarios
Workplace.com (employee portal)
Name Joe Jane Ravi ID 1213 1410 1603
User store
Name Joe Jane Ravi ID 1213 1410 1603 Links: health benefits etc.
Health.com Workplace.com End user (employee) Initial authentication
User store
(b) Federation based on roles
W orkplace.com (employee portal)
Name Joe Jane Ravi ID 1213 1410 1603 Dept Eng Purch Purch
User store
Role Engineer Purchaser Links: parts supplier etc.
PartsSupplier.com Welcome Joe!
Technical doc. Troubleshooting
End user (employee) Initial authentication
Procurement application End user Soap message Initial message authentication Soap message
PinSupplies.com
Purchasing Web service
E-ship.com
Shipping Web service
Summary
- Kerberos
- Kerberos protocol
- Kerberos realms
- Kerberos versions 4
and 5
- Kerberos
performance issues
- X.509
- public-key
infrastructure
- PKIX management
functions
- PKIX management
protocols
- federated identity