Institute of Computer Technology - Vienna University of Technology. L96 - SSL, PGP, Kerberos



Similar documents
Managing and Securing Computer Networks. Guy Leduc. Chapter 4: Securing TCP. connections. connections. Chapter goals: security in practice:

Communication Systems SSL

Communication Systems 16 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009

Real-Time Communication Security: SSL/TLS. Guevara Noubir CSU610

Standards and Products. Computer Security. Kerberos. Kerberos

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Authentication applications Kerberos X.509 Authentication services E mail security IP security Web security

Authenticity of Public Keys

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

CSC Network Security

CSC 474 Information Systems Security

Overview. SSL Cryptography Overview CHAPTER 1

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

Chapter 17. Transport-Level Security

Outline. Transport Layer Security (TLS) Security Protocols (bmevihim132)

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol

Announcement. Final exam: Wed, June 9, 9:30-11:18 Scope: materials after RSA (but you need to know RSA) Open books, open notes. Calculators allowed.

Cryptography and Network Security

Web Security Considerations

Cryptography and Network Security

Introduction to Cryptography

Network Security [2] Plain text Encryption algorithm Public and private key pair Cipher text Decryption algorithm. See next slide

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

Key Management (Distribution and Certification) (1)

Chapter 4. Authentication Applications. COSC 490 Network Security Annie Lu 1

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL)

Transport Level Security

Electronic Mail Security. Security. is one of the most widely used and regarded network services currently message contents are not secure

Chapter 10. Network Security

Security. Friends and Enemies. Overview Plaintext Cryptography functions. Secret Key (DES) Symmetric Key

Chapter 8. Cryptography Symmetric-Key Algorithms. Digital Signatures Management of Public Keys Communication Security Authentication Protocols

Transport Layer Security Protocols

Cryptography and Network Security Chapter 15

Secure Socket Layer. Security Threat Classifications

4.1: Securing Applications Remote Login: Secure Shell (SSH) PEM/PGP. Chapter 5: Security Concepts for Networks

Cryptography and Network Security Sicurezza delle reti e dei sistemi informatici SSL/TSL

Secure Socket Layer (SSL) and Trnasport Layer Security (TLS)

Cryptography and Security

Communication Security for Applications

Module 8. Network Security. Version 2 CSE IIT, Kharagpur

Network Security Web Security and SSL/TLS. Angelos Keromytis Columbia University

Using etoken for SSL Web Authentication. SSL V3.0 Overview

Security Engineering Part III Network Security. Security Protocols (I): SSL/TLS

Elements of Security

SBClient SSL. Ehab AbuShmais

CS 393 Network Security. Nasir Memon Polytechnic University Module 11 Secure

: Network Security. Name of Staff: Anusha Linda Kostka Department : MSc SE/CT/IT

Network Security - Secure upper layer protocols - Background. Security. Question from last lecture: What s a birthday attack? Dr.

SSL Secure Socket Layer

Network Security Standards. Key distribution Kerberos SSL/TLS

SECURE SOCKETS LAYER (SSL)

Chapter 7 Transport-Level Security

As enterprises conduct more and more

Secure Socket Layer (SSL) and Transport Layer Security (TLS)

mod_ssl Cryptographic Techniques

Network Security Essentials Chapter 7

Lecture 7: Transport Level Security SSL/TLS. Course Admin

PGP from: Cryptography and Network Security

Overview of SSL. Outline. CSC/ECE 574 Computer and Network Security. Reminder: What Layer? Protocols. SSL Architecture

TLS and SRTP for Skype Connect. Technical Datasheet

Three attacks in SSL protocol and their solutions

How To Understand And Understand The Ssl Protocol ( And Its Security Features (Protocol)

The Secure Sockets Layer (SSL)

Client Server Registration Protocol

Lecture 9 - Network Security TDTS (ht1)

Web Security. Mahalingam Ramkumar

SSL Secure Socket Layer

Secure Sockets Layer

Savitribai Phule Pune University

Chapter 8. Network Security

Encryption, Data Integrity, Digital Certificates, and SSL. Developed by. Jerry Scott. SSL Primer-1-1

Security Protocols and Infrastructures. h_da, Winter Term 2011/2012

Network Security. Computer Networking Lecture 08. March 19, HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

Chapter 15 User Authentication

7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?

Authentication Applications

Secure Socket Layer. Carlo U. Nicola, SGI FHNW With extracts from publications of : William Stallings.

Secure Sockets Layer (SSL) / Transport Layer Security (TLS)

Authentication Application

Network Security Essentials Chapter 5

IT Networks & Security CERT Luncheon Series: Cryptography

Web Security (SSL) Tecniche di Sicurezza dei Sistemi 1

Chapter 6 Electronic Mail Security

EXAM questions for the course TTM Information Security May Part 1

SSL/TLS: The Ugly Truth

Is your data safe out there? -A white Paper on Online Security

Authentication Applications

TOPIC HIERARCHY. Distributed Environment. Security. Kerberos

Secure Socket Layer (TLS) Carlo U. Nicola, SGI FHNW With extracts from publications of : William Stallings.

How To Use Kerberos

Network Security Part II: Standards

What is network security?

Network Security Protocols

WEB Security & SET. Outline. Web Security Considerations. Web Security Considerations. Secure Socket Layer (SSL) and Transport Layer Security (TLS)

Chapter 16: Authentication in Distributed System

Overview SSL/TLS HTTPS SSH. TLS Protocol Architecture TLS Handshake Protocol TLS Record Protocol. SSH Protocol Architecture SSH Transport Protocol

Part III-b. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai Siemens AG 2001, ICN M NT

SSL: Secure Socket Layer

SSL Protect your users, start with yourself

Transcription:

SSL, PGP, Kerberos Secure Socket Layer (Web Security), Pretty Good Privacy (Email Security) and Authentication Agenda SSL PGP Kerberos SSL, PGP, Kerberos, v4.4 2 Page 96-1

SSL versus IPsec Application must be aware of new application programming interface Application can use standard application programming interface Application Application new API SSL TCP IP Lower Layers Application OS TCP IPsec IP Lower Layers standard API SSL, PGP, Kerberos, v4.4 3 SSL General Aspects 1 Runs on top TCP TCP included in OS timeout and retransmitting lost data done by TCP that makes SSL a little simpler therefore OS must not be changed New socket layer interface SSL instead TCP application must be adapted Originally developed by Netscape to protect WEB transactions between client and server version 3.0 or 3.1 is currently implemented in Web browsers SSL, PGP, Kerberos, v4.4 4 Page 96-2

SSL General Aspects 2 Web transaction security is based on SSL HTTPS means standard HTTP over SSL TCP port number 443 used HREF = https:// SSL protocols are activated in browser and server Although SSL is not restricted for usage in Web Browsers note: SSL can provide a secure connection to any application Web browsers are SSL s the most common application SSL, PGP, Kerberos, v4.4 5 SSL General Aspects 3 SSL idea was taken by IETF and further developed -> TLS Transport Layer Security RFC 2246 (TLS Protocol) RFC 2478 (Secure SMTP) RFC 2595 (IMAP, POP3) RFC 2712 (Kerberos Ciphersuite for TLS) RFC 2817 (HTTP 1.1) RFC 3268 (AES Ciphersuite for TLS) RFC 3546 (TLS Service Extensions) TLSv1.0 and SSLv3.0 are not interoperable TLS uses DH and DSS, SSL uses RSA TLSv1.0 = SSLv3.1 SSL, PGP, Kerberos, v4.4 6 Page 96-3

What SSL does? 1 Establishes a secure connection in 4 phases parameter negotiation between client and server session key generation method, authentication method and encryption algorithms to be used for data transfer phase mutual authentication of client and server note: client authentication may be optional session key building and activation of cipher suite integrity key and encryption key Secure connection can then be used for the actual data transfer protected by session keys build during establishment SSL, PGP, Kerberos, v4.4 7 What SSL does? 2 Data transfer protection mechanism integrity of data exchange by HMAC keyed-sha-1 keyed-md5 confidentiality (privacy) of data exchange by encryption DES-40 DES-CBC, 3DES-EDE, 3DES-CBC, RC4-40, RC4-128 SSL Session-ID allows to differentiate between a new session and a session to be resumed by caching session-id s usually not more than 24 hours lifetime SSL, PGP, Kerberos, v4.4 8 Page 96-4

What SSL does? 3 Four methods for session keys generation RSA shared secret S encrypted with public-key of partner Fixed DH key exchange fixed public-dh value contained in DC (certificate) session keys are based on the same base parameters Ephemeral DH key exchange (DHE) actual public-dh value signed with private-key of sender best protection because every session will have a completely different set of generated keys Anonymous DH key exchange basic DH key exchange without signatures and certificates no protection against man-in-the-middle-attack SSL, PGP, Kerberos, v4.4 9 SSL Protocols 1 SSL, PGP, Kerberos, v4.4 10 Page 96-5

SSL Protocols 2 SSL Record Protocol using the reliable octet stream service provided by TCP partitions these octet stream into records maximum 16384 bytes per record every record starts with a header (type/length) and is cryptographic protected integrity privacy four record types (content type field) handshake message (for connection setup and resume) change cipher spec (for activating new security parameter) alert (for error messages or notification of connection closure) user data SSL, PGP, Kerberos, v4.4 11 SSL Protocols 3 SSL Record Protocol sub protocol for three other protocols and application data transfer SSL Handshake Protocol for authentication and parameter negotiation methods and keys SSL Change Cipherspecification Protocol for signalling of a change of the cipher suite to be used SSL Alert Protocol for error signalling SSL, PGP, Kerberos, v4.4 12 Page 96-6

SSL Record Header SSL, PGP, Kerberos, v4.4 13 SSL in Action Message from Browser Fragmentation Part 1 Part 2.. Compression HMAC added by using integrity key Encrypt by encryption key SSL Record Header added SSL, PGP, Kerberos, v4.4 14 Page 96-7

Protocol Procedures Phase 1 - All Modes SSL client Handshake Protocol 1+2 client-hello V, S-ID = 0, CSP, t1, R A SSL server Alice server-hello V, S-ID = New#, CSC, t2, R B Bob Alice choose pre-master secret S and computes master secret K = f E (S, R A, R B ) V SSL version number S-ID Session-Identifier (0 for new session, if unequal 0 then resuming a former established session -> phase 2 and 3 are not used CSP cipher suite proposal of client CSC cipher suite chosen by server R A, R B random, number t1, t2 timestamps SSL, PGP, Kerberos, v4.4 15 Protocol Procedures Phase 2 - RSA Handshake Protocol cont. certificate DC (P B ) Alice certificate request *) Bob server-hello-done Alice verifies that she is talking to Bob by proofing the certificate DC = P B + f E (S Cert, P B ) Digital Certificate of Bob's Public Key P B and chain of certificates to reach a well-known root-ca (certification authority) if necessary *) message only present if server wants client authentication SSL, PGP, Kerberos, v4.4 16 Page 96-8

Protocol Procedures Phase 3 - RSA Handshake Protocol cont. certificate *) DC (P A ) Alice client-key-exchange f E (P B, S), f E (K, hash of msg s) Bob Alice sends S (pre-master secret) encrypted with Bob s public key. Hash of msg s encrypted with master-secret K both to prove that she knows the key and that tampering of the handshake message would be detected. Bob decrypts S, computes master secret K = f E (S, R A, R B ) and verifies that Alice really knows the secrets and communication was not tampered *) message only present if server wants client authentication SSL, PGP, Kerberos, v4.4 17 Protocol Procedures Phase 4 - All Modes Change Cipher Spec Protocol change cipher spec Alice finished Bob change cipher spec finished Alice and Bob now compute the necessary session keys for integrity and privacy aspects based on the exchanged master secret K and R A / R B change cipher spec messages activate these keys for usage by the SSL record protocol in order to encrypt data and to achieve data integrity SSL, PGP, Kerberos, v4.4 18 Page 96-9

Protocol Procedures Phase 2 - Fixed DH Handshake Protocol cont. certificate DC (g, p, g b ) Alice certificate request *) Bob server-done Alice verifies that she is talking to Bob by proofing the certificate DC = g, p, g b + f E (S Cert, g, p, g b ) Digital Certificate of Bob's Public DH values g b and g, p and chain of certificates to reach a well-known root-ca if necessary *) message only present if server wants client authentication SSL, PGP, Kerberos, v4.4 19 Protocol Procedures Phase 3 - Fixed DH Handshake Protocol cont. certificate *) DC (g a ) Alice client-key-exchange (g a ) Bob Alice and Bob compute fixed secret-key K = (g b ) a = (g a ) b *) message only present if server wants client authentication, client-key-exchange message is empty in this case DC = g a + f E (S Cert, g a ) Digital Certificate of Alice's Public DH value g a and chain of certificates to reach a well-known root-ca if necessary SSL, PGP, Kerberos, v4.4 20 Page 96-10

Protocol Procedures Phase 2 - Eph. DH Handshake Protocol cont. certificate DC (P B ) Alice certificate request Bob server-key-exchange f E (S B, g, p, g b ) = DS (g b ) server-done DC = P B + f E (S Cert, P B ) Digital Certificate of Bob's Public Key P B and chain of certificates to reach a well-known root-ca (certification authority) if necessary S B = Bob's private-key DS = Digital Signature -> (g, p and Public-DH value g b ) signed with Bob s private-key S B SSL, PGP, Kerberos, v4.4 21 Protocol Procedures Phase 3 - Eph. DH Handshake Protocol cont. certificate DC (P A ) Alice client-key-exchange f E (S A, g, p, g a ) = DS (g a ) Bob Alice and Bob compute a temporary (ephemeral) secret-key K = (g b ) a = (g a ) b DC = P A + f E (S Cert, P A ) Digital Certificate of Alice's Public Key P A and chain of certificates to reach a well-known root-ca (certification authority) if necessary S A = Alice's private-key DS = Digital Signature -> (g, p and Public-DH value g b ) signed with Bob s private-key S B SSL, PGP, Kerberos, v4.4 22 Page 96-11

Protocol Procedures Phase 2 Anony. DH Handshake Protocol cont. Alice server-key-exchange g, p, g b server-done Bob SSL, PGP, Kerberos, v4.4 23 Protocol Procedures Phase 3 - Anony. DH Handshake Protocol cont. Alice client-key-exchange (g a ) Bob Alice and Bob compute fixed secret-key K = (g b ) a = (g a ) b SSL, PGP, Kerberos, v4.4 24 Page 96-12

SSL in Web Browsers Preconfigured with public-keys of various trusted organisations (root CA) e.g. Verisign User may modify this list adding, deleting Server will sent a certificate which is checked against the list and verified if there is a matching entry If no match or no verification then Pop-up window will appear user should say what to do either to import to the list of trusted root CA s or cancel SSL, PGP, Kerberos, v4.4 25 Agenda SSL PGP Kerberos SSL, PGP, Kerberos, v4.4 26 Page 96-13

Pretty Good Privacy (PGP) PGP is a complete E-mail security package providing privacy, authentication, digital signature, compression in an easy to use form Designed by Phil Zimmermann roots in the 80 s first release 1991 1993 released for free private usage in the public domain US government investigation against Phil on breaking the US export rules patent problems (RSA and IDEA) SSL, PGP, Kerberos, v4.4 27 Pretty Good Privacy (PGP) Because of these problems several versions of PGP exist today PGP classic (described in this module) oldest and simplest version Open PGP (RFC 2440) GNU Privacy Guard (CPG) Free Software Foundation http://www.gnupg.org/ GNU Handbuch zum Schutz der Privatsphäre revocation of public keys is possible PGP product company PGP is now owned by Network Associates -> www.pgp.com, www.nai.com/default_pgp.asp -> www.pgpi.com (Freeware) SSL, PGP, Kerberos, v4.4 28 Page 96-14

What Does PGP? Encryption of files using a pass-phrase as key Create public/private key pairs Provide compression Provide Radix-64 encoding for mail friendly delivery Send/receive encrypted email Compute digital signatures Manage a public-key database, including certificates Certify public-keys (for others) Can use PGP Internet key servers SSL, PGP, Kerberos, v4.4 29 How PGP Privacy Works SSL, PGP, Kerberos, v4.4 30 Page 96-15

PGP Sender Side 1 (Authentication+Integrity) Plaintext Hash-Function (MD5) Message Digest Encrypted with Alice s private-key S A Digital Signature DS = f E (S A, Hash (Plaintext) ) SSL, PGP, Kerberos, v4.4 31 PGP Sender Side 2 (Privacy) Plaintext DS Compression (ZIP) Plaintext DS Encrypted with session key K M, (secret-key), generated for this message -> one-time key for IDEA Ciphertext K M RSA encrypted with Bob's public-key P B Ciphertext f E (P B,K M ) Radix Base 64 encoding to produce ASCII text Ciphertext f E (P B,K M ) message sent SSL, PGP, Kerberos, v4.4 32 Page 96-16

PGP Receiver Side 1 message received Ciphertext Radix Base 64 decoding f E (P B,K M ) Ciphertext f E (P B,K M ) K M RSA decrypted with Bob's private-key S B K M IDEA Decryption with session key K M Plaintext DS Decompression (unzip) Plaintext DS SSL, PGP, Kerberos, v4.4 33 PGP Receiver Side 2 (Identity + Integrity Check) Plaintext Message Digest Hash-Function DS DS RSA decrypted with Alice's public-key P A f E (P A,DS) compared if equal than ok SSL, PGP, Kerberos, v4.4 34 Page 96-17

PGP Message Format (Alice->Bob) Session Key Part Key-ID of recipient s Public-Key P B Session Key K M1 P B Signature Header Signature Part Timestamp Key-ID of sender s Public-Key P A Leading two bytes of MD Message Digest Message Header S A ZIP K M1 Base 64 Filename Message Part Message Creation Timestamp Data SSL, PGP, Kerberos, v4.4 35 PGP Message Format (Bob->Alice) Session Key Part Key-ID of recipient s Public-Key P A Session Key K M2 P A Signature Header Signature Part Timestamp Key-ID of sender s Public-Key P B Leading two bytes of MD Message Digest Message Header S B ZIP K M2 Base 64 Filename Message Part Message Creation Timestamp Data SSL, PGP, Kerberos, v4.4 36 Page 96-18

Performance / Security RSA (asymmetric, slow) is used only for 256 bits encryption of 128-bit MD5 as signature encryption of 128-bit IDEA-key as session-key IDEA (symmetric, fast) is used for bulk encryption PGP supports four RSA key lengths Casual (384 bits): can be broken easily today Commercial (512 bits): breakable by three letter organizations Military (1024 bits): not breakable by anyone on earth Alien (2048 bits): not breakable by anyone on other planets, either SSL, PGP, Kerberos, v4.4 37 Management of Keys After installing PGP on Alice's machine a RSA public/private key pair is generated Storage of keys public-key is stored on a data structure called public-key ring referenced by User-ID (Alice) and Key-ID (least significant 64 bits of public-key) private-key is stored on the private-key ring in encrypted form together with User-ID and copy of corresponding public-key Alice is asked for a corresponding pass-phrase in order to get access to (to decrypt) her private-key after the private-key is used it is immediately discarded from memory of the used machine SSL, PGP, Kerberos, v4.4 38 Page 96-19

Private-Key Protection Alice's pass-phrase is used to generate a 128-bit MD5 message digest which in turn is used as 128-bit IDEA key Private-Key is encrypted by IDEA algorithm with key based on the pass-phrase and then stored on the private-key ring Pass-phrase and IDEA key are then discarded to protect the private-key in case of breaking into Alice's computer Whenever Alice wants to sign a message she must again specify the pass-phrase in order to IDEA decrypt the private-key SSL, PGP, Kerberos, v4.4 39 Public-Key Ring Storage place for public-keys of all partners to which Alice wants to communicate using PGP even her own public-key is stored here in order to be given to partners on request SSL, PGP, Kerberos, v4.4 40 Page 96-20

Handling of Keys at the Receiver Side Bob's storage place for private-keys is his private-key ring If a message is received Bob must provide his pass-phrase to get access to his private-key Bob's private-key is then used to decrypt the IDEA onetime session key better would be the name message key because there is not anything like a session in PGP After IDEA decryption Bob will retrieve Alice s public-key from his public-key ring and verifies the signature of the message SSL, PGP, Kerberos, v4.4 41 Public-Key Management Originally decentralized, user-controlled approach some call it an anarchy against centralized PKI schemas level of trust is introduced each user decides which keys to trust each user decides which users to trust levels are none, partial and complete public-keys of others may be signed with own private-key signed public-keys (= certificate) from trusted users maybe again to be trusted Today PGP versions are interoperable with PKI infrastructure CA and X.509 SSL, PGP, Kerberos, v4.4 42 Page 96-21

How to get Public-Key Securely? The problem is the man-in-the-middle attack Therefore physically get the key on floppy disk or cdrom get and verify a key via telephone authentication based on voice recognition and then dictation of the key over phone get the key in an email generate a fingerprint of the received key call the partner and tell him to dictate the fingerprint over the phone, if the two fingerprints match, the key is certified get the key signed by a trusted person get the key from a key server and verify the fingerprint directly with the corresponding partner out-band get the key signed from a trusted key server SSL, PGP, Kerberos, v4.4 43 Other Email Security Techniques PEM (Privacy Enhanced Mail) developed in late 1980 s (RFC 1421-1424) same topics covered as PGP some differences keys are certified by X.509 certificates issued by CA rigid CA hierarchy starting at a single root nobody want to support this single root (political problem) at the end PEM approach collapsed finding no root SSL, PGP, Kerberos, v4.4 44 Page 96-22

Other Email Security Techniques S/MIME (Secure Multipurpose Internet Mail Extensions) next IETF approach but learning the lessons avoiding the rigid CA hierarchy of PEM RFC 2632-2634 (obsoleted) RFC 3850-3855 (actual) trust anchors instead single root user can have multiple so called trust anchors PGP type certifications are possible but only in 1:1 relation SSL, PGP, Kerberos, v4.4 45 Agenda SSL PGP Kerberos SSL, PGP, Kerberos, v4.4 46 Page 96-23

Introduction Kerberos (old): is the watchdog of Hades, whose duty it was to guard the entrance against whom or what does not clearly appear; Kerberos is known to have had three heads Kerberos (today): is an encryption-based security system that provides mutual authentication between the workstation users (clients) and the servers in a network environment in a secure way without having servers configured with tons of passwords (secrets) is an authentication and authorization system developed at the MIT for project Athena (1983) SSL, PGP, Kerberos, v4.4 47 Introduction Kerberos (today): cont. version 4 symmetric cryptography (uses DES-CBC) IP only RFC 1411 version 5 symmetric cryptography (uses modified DES-CBC) Plaintext Cipher Block Chaining (PCBC) public-key cryptography as well RFC 1510 ASN.1 syntax used in many real systems e.g. for Unix e.g. for Windows NT, Windows 2000 SSL, PGP, Kerberos, v4.4 48 Page 96-24

Requirements for Kerberos Secure protect against eavesdropping and impersonation (need user authentication) Reliable Kerberos must provide high degree of availability Transparent minimal user interaction required for security Scalable able to support large numbers of clients and servers in a distributed environment SSL, PGP, Kerberos, v4.4 49 Kerberos Structure A distributed Trusted Third Party (TTP) authentication schema users trusted an arbitrator (Kerberos server is the trusted arbitrate; like a KDC) assumes that normal servers are not trustworthy of course Kerberos server must be specially secured Two Kerberos server function involved Authentication Server (AS) Ticket Granting Server (TGS) Synchronized clocks AS, TGS, client (Alice) and server (Bob) SSL, PGP, Kerberos, v4.4 50 Page 96-25

Kerberos Procedures Overview SSL, PGP, Kerberos, v4.4 51 Kerberos Principles Each user shares a long-term secret-key with the AS derived by hashing a user-supplied pass-phrase users are clients and servers e.g. Alice as client and Bob as server Long-term secret-key pass-phrase is distributed (agreed) off-line hashed pass-phrase is entered at start of each session stored only very short on the client s workstation not sent over the insecure network pass-phrase is used for initial log-in of user to the client computer SSL, PGP, Kerberos, v4.4 52 Page 96-26

Kerberos Principles Authentication at the beginning of a network connection but not for the remainder of the session The AS uses the long long-term secret-key to set up a short-term shared secret-key with the TGS short-term means hours instead for days/months or years The TGS generates shared session-keys between entities Does not require client to enter password every time a service is requested service Passwords are never sent in clear SSL, PGP, Kerberos, v4.4 53 Kerberos Procedures Details 1 Client Alice logs into the public workstation and provide her username (Alice = A) -> M1 M1 = Authentication_Server_Request AS K A K TGS Alice (A) wants a TGS Ticket = TGT Master-Keys M2 = Authentication_Server_Reply f E (K A, K T for TGS, TGT = f E (K TGS, A, K T )) After receiving M2 Alice specifies her pass-phrase at the public workstation to generate K A in order to decrypt M2 (to get K T and TGT). Pass-phrase is then removed from the public workstation AS selects a short-term session-key K T and sent it encrypted with shared secret-key K A to Alice together with a so called Ticket Granting Ticket (TGT) TGT-Ticket itself contains short-term session-key K T, username A and Alice s network address encrypted with TGS shared secret-key K TGS SSL, PGP, Kerberos, v4.4 54 Page 96-27

Kerberos Procedures Details 2 Client (Alice) M2 = Authentication_Server_Reply Master-Keys TGS f E (K A, K T, TGT = f E (K TGS, A, K T )) K B K TGS M3 = TGS_Server_Request TGT, Alice (A) wants Bob (B), f E (K T, timestamp) f E (K T, B, K AB ), TB = f E (K B, A, K AB ) M4 = TGS_Server_Reply Alice provides TGT to TGS to proof that she really is Alice (only with her pass-phrase she was able to obtain TGT) and asks for a server ticket to Bob. Timestamp with K T encrypted for protecting against replay attack TGS selects a session-key K AB and sent it encrypted with short-term session-key K T to Alice together with a server ticket TB for Bob. TB contains lifetime of this ticket and network address of Alice SSL, PGP, Kerberos, v4.4 55 Kerberos Procedures Details 3 Client (Alice) M4 = TGS_Server_Reply f E (K T, B, K AB ), TB = f E (K B, A, K AB ) Bob M5 = Application_Request TB, f E (K AB, timestamp) f E (K AB, timestamp+1) M6 = Application_Reply Alice provides TB to Bob to proof that she really is Alice (only with her pass-phrase she was able to get an TGT and TB) and asks access to server Bob. Exchange of timestamp with K AB encrypted for proofing that Alice is really talking to Bob. Note: AS + TGS normally implemented in one machine -> KDC SSL, PGP, Kerberos, v4.4 56 Page 96-28

TGT + K T TB + K AB SSL, PGP, Kerberos, v4.4 57 Kerberos Pros Attacks which Kerberos prevents: Eavesdropping as all the data in the protocol is sent encrypted (or may be publicly known), any eavesdropper would not gain any information Imposture it is hard to imposture someone, the knowledge of the secret key is a proof of identity Man-in-the-middle only valid users can generate the needed output (especially to encrypt Alice s address) Replay Attacks due to the timestamps and the lifetime fields, it is impossible to resend any ticket (hence receiving authentication as someone else) SSL, PGP, Kerberos, v4.4 58 Page 96-29

Kerberos Cons Kerberos Limitations: not effective against password guessing attacks only protects S/W that s been modified to use it requires a trusted path for password entry does not provide authorization not a host-to-host protocol designed to authenticate a workstation end-user bad for time sharing machines & diskless workstations denial of service attacks not solved old authenticators may be stored for detecting later replay, at least during the lifetime of the ticket servers should store all tickets to prevent this, but can't always do so SSL, PGP, Kerberos, v4.4 59 Kerberos Cons Kerberos Limitations (cont.): authenticators rely upon synchronized and uncompromised clocks if a host is compromised, the clock can be compromised and replay is easy password guessing attacks may work attackers could collect tickets and try it... relies upon trustworthy clients and servers relies upon the security of the TGS and the Kerberos server requires Kerberos server to work (single point of failure) SSL, PGP, Kerberos, v4.4 60 Page 96-30

Kerberos Realms in Version 5 It is not scalable that the entire world will trust a single authentication server Therefore multiple realms each with its own AS and TGS In order to get a ticket for a server in a distant realm client asks his own TGS for a ticket accepted by the TGS in the distant realm If the distant TGS has registered with the local TGS (in the same way local servers do) a valid ticket for the distant realm can be given to the client SSL, PGP, Kerberos, v4.4 61 DES - PCBC in Version 5 m1 m2 m3 m4 m5 IV E E E E E c1 c2 c3 c4 c5 Encryption with Plaintext Cipher Block Chaining because DES-CBC alone cannot guarantee integrity of messages and Kerberos want to provide integrity assurance without depending on the application SSL, PGP, Kerberos, v4.4 62 Page 96-31