Chapter 14 – Authentication Applications

Slides:



Advertisements
Similar presentations
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 4.6 Kerberos.
Advertisements

Overview Network security involves protecting a host (or a group of hosts) connected to a network Many of the same problems as with stand-alone computer.
Supervisor :Dr. Lo'ai Ali Tawalbeh Done by: Wa’el Musa Hadi
The Authentication Service ‘Kerberos’ and It’s Limitations
Henric Johnson1 Chapter 4 Authentication Applications Henric Johnson Blekinge Institute of Technology,Sweden
Authentication Applications
1 Authentication Applications Ola Flygt Växjö University, Sweden
Chapter 14 – Authentication Applications
NETWORK SECURITY.
CSCE 815 Network Security Lecture 10 KerberosX.509 February 13, 2003.
IT 221: Introduction to Information Security Principles Lecture 8:Authentication Applications For Educational Purposes Only Revised: October 20, 2002.
Authentication Applications The Kerberos Protocol Standard
SCSC 455 Computer Security
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Chapter 14 From Cryptography and Network Security Fourth Edition written by William Stallings, and Lecture slides by Lawrie Brown, the Australian Defence.
Chapter 4 Authentication Applications. Objectives: authentication functions developed to support application-level authentication & digital signatures.
Winter 2006Prof. R. Aviv: Kerberos1 Kerberos Authentication Systems.
AUTHENTICATION APPLICATIONS - Chapter 14 Kerberos X.509 Directory Authentication (S/MIME)
Information Security Principles & Applications Topic 4: Message Authentication 虞慧群
Kerberos versions 4 and 5 X.509 Authentication Service
Authentication & Kerberos
Cryptography and Network Security Chapter 15 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
1 Authentication Applications Digital Signatures Security Concerns X.509 Authentication Service Kerberos Based on slides by Dr. Lawrie Brown of the Australian.
Henric Johnson1 Chapter 4 Authentication Applications Henric Johnson Blekinge Institute of Technology,Sweden
1 Authentication Applications Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College, UNSW.
Authentication applications
Part Two Network Security Applications Chapter 4 Key Distribution and User Authentication.
Information Security Depart. of Computer Science and Engineering 刘胜利 ( Liu Shengli) Tel:
Lecture 23 Internet Authentication Applications modified from slides of Lawrie Brown.
Kerberos: An Authentication Service for Open Network Systems Jennifer G. Steiner Clifford Neuman Jeffrey I. Schiller.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 22 – Internet Authentication.
Chapter 23 Internet Authentication Applications Kerberos Overview Initially developed at MIT Software utility available in both the public domain and.
Authentication Applications Unit 6. Kerberos In Greek and Roman mythology, is a multi-headed (usually three-headed) dog, or "hellhound” with a serpent's.
1 Authentication Applications Behzad Akbari Fall 2010 In the Name of the Most High.
Cryptography and Network Security Chapter 14 Authentication Fourth Edition by William Stallings Lecture slides by Lawrie Brown Changed and extended by.
Authentication 3: On The Internet. 2 Readings URL attacks
Module 4 Network & Application Security: Kerberos – X509 Authentication service – IP security Architecture – Secure socket layer – Electronic mail security.
KERBEROS. Introduction trusted key server system from MIT.Part of project Athena (MIT).Developed in mid 1980s. provides centralised private-key third-party.
X.509 Topics PGP S/MIME Kerberos. Directory Authentication Framework X.509 is part of the ISO X.500 directory standard. used by S/MIME, SSL, IPSec, and.
31/03/2005Authentication Applications 1 Authentication Applications: Kerberos, X.509 and Certificates REYHAN AYDOĞAN.
Cryptography and Network Security Chapter 14 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Network Security Lecture 25 Presented by: Dr. Munam Ali Shah.
Winter 2006Prof. R. Aviv: Kerberos1 Kerberos Authentication Systems.
AUTHENTICATION APPLICATIONS - Chapter 14 Kerberos X.509 Directory Authentication (S/MIME)
User Authentication  fundamental security building block basis of access control & user accountability  is the process of verifying an identity claimed.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
1 Cryptography CSS 329 Lecture 12: Kerberos. 2 Lecture Outline Kerberos - Overview - V4 - V5.
Computer and Network Security
Cryptography and Network Security Chapter 14
Chapter 14. Authentication Applications
Cryptography and Network Security
KERBEROS.
CNET334 - Network Security
CSCE 715: Network Systems Security
Authentication Applications
Authentication Protocol
B. R. Chandavarkar CSE Dept., NITK Surathkal
CSCE 715: Network Systems Security
Cryptography and Network Security Chapter 14
بسم الله الرحمن الرحيم فصل چهارم kerberos.
CS60002: Distributed Systems
Authentication Applications
CS 378 Kerberos Vitaly Shmatikov.
KERBEROS Miah, Md. Saef Ullah.
Cryptography and Network Security Chapter 14
Kerberos and X.509 Fourth Edition by William Stallings
Cryptography and Network Security Chapter 14
Authentication Applications
Presentation transcript:

Chapter 14 – Authentication Applications We cannot enter into alliance with neighboring princes until we are acquainted with their designs. —The Art of War, Sun Tzu

Authentication Applications Authentication functions To support application-level authentication & digital signatures Kerberos – a private-key authentication service X.509 directory authentication service

Kerberos An authentication service Assume an open distributed environment in which users at workstations wish to access services on servers distributed throughout the network. We would like for servers to be able to restrict access to authorized users and to able to authenticate requests for service. In this environment, the workstation cannot be trusted to identify its users correctly to network services.

Threats A user may gain access to a particular workstation and pretends to be another user operating from that workstation A user may alter the network address of a workstation so that the requests sent from the altered workstation appear to come from the impersonated workstation A user may eavesdrop on exchanges and use a replay attack to gain entrance to a server or to disrupt operations

An unauthorized users gain to access to services and data Solution is to provide an elaborate authentication protocols at each server

Motivations Three approaches to secure a data Enforce a security policy based on user identification (ID) Require that client systems authenticate themselves to servers, but trust the client system concerning the identity of its user Require the user to prove identity for each service invoked. Also require that servers prove their identity to clients

In a small, closed environment, in which all systems are owned and operated by a single organization. In a more open environment, network connections to other machines are supported, the third approach is needed to protect user information and resources housed at the server.

Kerberos supports the third approach Kerberos assumes a distributed client / server architecture One or more Kerberos servers to provide an authentication service

Requirements Secure Reliable Transparent Scalable Network eavesdropper should not able to obtain the necessary information to impersonate like a authenticated user. Reliable should be highly reliable and should employ a distributed server architecture, with one system able to backup another Transparent User should not be aware that authenticate is taking place Scalable Capable of supporting large number of clients and servers

Kerberos Centralized authentication server To authenticate users to servers and servers to users relies on symmetric encryption Two versions Version 4 Version 5

Kerberos is trusted third party authentication service Uses Needham and Schroeder [NEED78] Two versions Version 4 [MILL88, STEI88] Version 5 [KOHL94]

Kerberos Version 4 Makes use of DES Authentication Server (AS) knows the password of all users and stores these in a centralized database AS shares a unique secret key with each server

A Simple Authentication Dialogue Any client can apply to any server for service Security risk is impersonation An opponent pretend to another client and obtain unauthorized privileges To counter this attack Servers must be able to confirm the identities To undertake this task for each client/server interaction

Authentication server is used AS knows the password of all users and stores them in a centralized database AS shares a unique secret key with each server

A Simple Authentication Dialogue C – AS : IDC ||Pc || IDv AS – C : Ticket C – V : ID c || Ticket Ticket = E KV [ID c || AD c || ID v Where C = Client AS = Authentication server ID c = Identifier of user on C IDV = identifier of V Pc = Password of user on C AD c = network address of C K v = secret encryption key shared by AS and V

Disadvantage Users have to enter the password number of times Plaintext transmission of the password

A more secure authentication dialogue To solve these problems Avoiding plaintext passwords Avoiding the plaintext transmission of passwords A new server, known as Ticket Granting Server (TGS)

Ticket Granting Server (TGS) Issues tickets to users who have been authenticated to AS Grants a ticket for particular service during the first instance of each access

A more secure authentication dialogue Once per User Logon Session C – AS : IDc || IDtgs AS – C : EKc [Tickettgs] Once per Type of Service (3) C – TGS: IDc || IDv || Tickettgs (4) TGS – C: Ticketv Once per Service Session (5) C – V: IDc || Ticketv Tickettgs = E Ktgs [ IDc || ADc || IDtgs || TS1 || Lifetime1] Ticketv = E Kv [ IDc || ADc || IDv || TS2 || Lifetime2]

Version 4 Authentication Dialogue Two additional problems remain Lifetime associated with the ticket-granting ticket. There may be requirement for servers to authenticate themselves to users

(a) Authentication Service Exchange - to obtain ticket-granting ticket (1) C – AS: IDc || IDtgs || TS1 (2) AS – C: E Kc [Kc,tgs || IDtgs || TS2 || Lifetime2 || Tickettgs Ticket tgs = E Ktgs [Kc,tgs || IDc || ADc || IDtgs || TS2 || Lifetime2]

Ticket-Granting Service Exchange: to obtain service-granting ticket (3) C – TGS: IDv || Tickettgs || Authenticatorc (4) TGS – C: EKc,tgs [Kc,v || IDv || TS4 || Ticketv] Tickettgs = EKtgs [Kc,tgs || IDc || ADc || IDtgs || TS2 || Lifetime2 ] Ticketv = EKv [ Kc,v || IDc || ADc || IDv || TS4 || Lifetime4 ] Authenticatorc = EKc tgs [ IDc ||ADc || TS5]

Client / Server Authentication Exchange: to obtain service (5) C – V: Ticketv || Authenticatorc (6) V – C: E Kc,v [ TS5 + 1] (for mutual authentication) Ticket v = EKv [ Kc,v||IDc||ADc||IDv||TS4||Lifetime4] Authenticatorc = EK c,v [IDc || ADc || TS5]

Kerberos Realms and Multiple Kerberi Kerberos server, number of clients, and a number of application server Kerberos server must have the user ID and hashed passwords of all participating users in its database. All users are registered with the Kerberos server. Kerberos server share a secret key with each server. All servers are registered with the Kerberos server

Kerberos Realms and Multiple Kerberi Kerberos server in each interoperating realm shares a secret key with server in the other realm. Two Kerberos server are registered with each other.

Kerberos 4 Overview Stallings Fig 14.1. Discuss in relation to Table 14.1 which details message exchanges.

Kerberos Realm Set of managed nodes that share the same Kerberos database Kerberos database resides on the Kerberos master computer system Kerberos principal A service or user name An instance name A realm name

Kerberos server in each interoperating realm shares a secret key with the server in the other realm

Kerberos Realms a Kerberos environment consists of: a Kerberos server a number of clients, all registered with server application servers, sharing keys with server this is termed a realm typically a single administrative domain if have multiple realms, their Kerberos servers must share keys and trust

C – AS: IDC || IDtgs || TS1 AS – C: EKc [Kc,tgs || IDtgs || TS2 || Lifetime2 || Tickettgs] C – TGS: IDtgsrem || Tickettgs || AuthenticatorC TGS – C: EKc,tgs [ Kc,tgsrem || IDtgsrem || TS4 || Tickettgsrem C – TGSrem: IDvrem || Tickettgsrem || AuthenticatorC TGSrem – C: EKc,tgsrem [Kc,vrem || IDvrem || TS6 || Ticketvrem] C – Vrem: Ticketvrem || AuthenticatorC

Kerberos Version 5 developed in mid 1990’s provides improvements over v4 addresses environmental shortcomings and technical deficiencies specified as Internet standard RFC 1510

Difference between V4 & V5 The limitations of V4 in two areas Environmental shortcomings Technical deficiencies To address the limitations of V4, V5 is designed

Environmental shortcomings Encryption system dependence Internet protocol dependence Message byte ordering Ticket lifetime Authentication forwarding Interrealm authentication

Encryption System Dependence Version 4 requires the use of DES. Export restriction on DES as well as doubts about the strength of DES were thus of concern. In version 5, ciphertext is tagged with an encryption type identifier so that any encryption technique may be used. Encryption keys are tagged with a type and a length, allowing the same key to be used in different algorithms and allowing the specification of different variations on a given algorithm.

Internet Protocol Dependence Version 4 requires the use of Internet Protocol (IP) addresses. Other address types, such as the ISO network address, are not accommodated. Version 5 network addresses are tagged with type and length, allowing any network address type to be used.

Message Byte Ordering In version 4, the sender of a message employs a byte ordering of its own choosing and tags the message to indicate least significant byte in lowest address or most significant byte in lowest address. This techniques works but does not follow established conventions. In version 5, all message structures are defined using Abstract Syntax Notation One (ASN.1) and Basic Encoding Rules (BER), which provide an unambiguous byte ordering.

Ticket Lifetime Lifetime values in version 4 are encoded in an 8-bit quantity in units of five minutes. Thus, the maximum lifetime that can be expressed is 28x 5 = 1280 minutes, or a little over 21 hours. This may be inadequate for some applications (e.g., a long-running simulation that requires valid Kerberos credentials throughout execution). In version 5, tickets include an explicit start time and end time, allowing tickets with arbitrary lifetimes.

Authentication Forwarding Version 4 does not allow credentials issued to one client to be forwarded to some other host and used by some other client. This capability would enable a client to access a server and have that server access another server on behalf of the client. For example, a client issues a request to a print server that then accesses the client's file from a file server, using the client's credentials for access. Version 5 provides this capability.

Interrealm Authentication In version 4, interoperability among N realms requires on the order of N2 Kerberos-to-Kerberos relationships, as described earlier. Version 5 supports a method that requires fewer relationships, as described shortly.

Technical deficiencies Double encryption PCBC encryption Session keys Password attacks

PCBC Encryption Encryption in version 4 makes use of a nonstandard mode of DES known as Propagating Cipher Block Chaining (PCBC). It has been demonstrated that this mode is vulnerable to an attack involving the interchange of ciphertext blocks [KOHL89]. PCBC was intended to provide an integrity check as part of the encryption operation. Version 5 provides explicit integrity mechanisms, allowing the standard CBC mode to be used for encryption. In particular, a checksum or hash code is attached to the message prior to encryption using CBC

Session Keys Each ticket includes a session key that is used by the client to encrypt the authenticator sent to the service associated with that ticket. In addition, the session key may subsequently be used by the client and the server to protect messages passed during that session. However, because the same ticket may be used repeatedly to gain service from a particular server, there is the risk that an opponent will replay messages from an old session to the client or the server. In version 5, it is possible for a client and server to negotiate a sub-session key, which is to be used only for that one connection. A new access by the client would result in the use of a new sub-session key.

Password Attacks Both versions are vulnerable to a password attack. The message from the AS to the client includes material encrypted with a key based on the client's password. An opponent can capture this message and attempt to decrypt it by trying various passwords. If the result of a test decryption is of the proper form, then the opponent has discovered the client's password and may subsequently use it to gain authentication credentials from Kerberos. This is the same type of password attack with the same kinds of countermeasures being applicable. Version 5 does provide a mechanism known as preauthentication, which should make password attacks more difficult, but it does not prevent them.