ECE454/CS594 Computer and Network Security

Slides:



Advertisements
Similar presentations
AP STUDY SESSION 2.
Advertisements

1
ISA 662 Internet Security Protocols Kerberos Prof. Ravi Sandhu.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
Nick Feamster CS 6262 Spring 2009
1 Hyades Command Routing Message flow and data translation.
1 Pretty Good Privacy (PGP) Security for Electronic .
PUBLIC KEY CRYPTOSYSTEMS Symmetric Cryptosystems 6/05/2014 | pag. 2.
Block Cipher Modes of Operation and Stream Ciphers
ECE454/CS594 Computer and Network Security
PP Test Review Sections 6-1 to 6-6
AUTHENTICATION AND KEY DISTRIBUTION
COEN 350 Kerberos.
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
11-1 ©2007 Raj JainCSE571SWashington University in St. Louis Kerberos V5 Raj Jain Washington University in Saint Louis Saint Louis, MO 63130
Chapter 10 Real world security protocols
KERBEROS LtCdr Samit Mehra (05IT 6018).
Authentication Applications
1 Authentication Applications Ola Flygt Växjö University, Sweden
Chapter 14 – Authentication Applications
Kerberos and X.509 Fourth Edition by William Stallings
CSCE 815 Network Security Lecture 10 KerberosX.509 February 13, 2003.
KERBEROS
IT 221: Introduction to Information Security Principles Lecture 8:Authentication Applications For Educational Purposes Only Revised: October 20, 2002.
SCSC 455 Computer Security
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
Key Management. Shared Key Exchange Problem How do Alice and Bob exchange a shared secret? Offline – Doesnt scale Using public key cryptography (possible)
Key distribution and certification In the case of public key encryption model the authenticity of the public key of each partner in the communication must.
Kerberos 1 Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530–520 BC. From Italy (?).
Network Security: Kerberos Tuomas Aura. 2 Outline Kerberos authentication Kerberos in Windows domains.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
Analyzing Genes and Genomes
Essential Cell Biology
PSSA Preparation.
Essential Cell Biology
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
30.1 Chapter 30 Cryptography Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP Protocol Suite 1 Chapter 18 Upon completion you will be able to: Remote Login: Telnet Understand how TELNET works Understand the role of NVT in.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
AUTHENTICATION APPLICATIONS - Chapter 14 Kerberos X.509 Directory Authentication (S/MIME)
1 Lecture 12: Kerberos terms and configuration phases –logging to network –accessing remote server replicated KDC multiple realms message privacy and integrity.
Kerberos Jean-Anne Fitzpatrick Jennifer English. What is Kerberos? Network authentication protocol Developed at MIT in the mid 1980s Available as open.
1 Authentication Applications Digital Signatures Security Concerns X.509 Authentication Service Kerberos Based on slides by Dr. Lawrie Brown of the Australian.
CS470, A.SelcukKerberos1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
CMSC 414 Computer and Network Security Lecture 22 Jonathan Katz.
Part Two Network Security Applications Chapter 4 Key Distribution and User Authentication.
Information Security Depart. of Computer Science and Engineering 刘胜利 ( Liu Shengli) Tel:
Authentication Applications Unit 6. Kerberos In Greek and Roman mythology, is a multi-headed (usually three-headed) dog, or "hellhound” with a serpent's.
Kerberos Named after a mythological three-headed dog that guards the underworld of Hades, Kerberos is a network authentication protocol that was designed.
Key Management. Given a computer network with n hosts, for each host to be able to communicate with any other host would seem to require as many as n*(n-1)
1 Network Security Lecture 7 Overview of Authentication Systems Waleed Ejaz
Chapter 4 - Kerberos Network Security and Management Fall Dr. Faisal Kakar Office:
AUTHENTICATION APPLICATIONS - Chapter 14 Kerberos X.509 Directory Authentication (S/MIME)
1 Kerberos n Part of project Athena (MIT). n Trusted 3rd party authentication scheme. n Assumes that hosts are not trustworthy. n Requires that each client.
Dr. Nermi hamza.  A user may gain access to a particular workstation and pretend to be another user operating from that workstation.  A user may eavesdrop.
1 Cryptography CSS 329 Lecture 12: Kerberos. 2 Lecture Outline Kerberos - Overview - V4 - V5.
CS 378 Kerberos Vitaly Shmatikov.
Kerberos Part of project Athena (MIT).
Presentation transcript:

ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011

Kerberos V4 Tickets and ticket-granting tickets Configuration Replicated KDCs Realms and interrealm authentication Encryption for integrity only/privacy and integrity Message formats

Many-to-Many Authentication ? Servers Users How do users prove their identities when requesting services from servers on the network? Naïve solution: every server knows every user’s password: - insecure: compromise of any server will compromise all users - inefficient: a user must contact every server to change password

Using Trusted Third Party Knows all users’ and servers’ passwords User requests ticket for some service; proves his identity Servers User receives ticket Ticket is used to access desired network service User Trusted authentication service on the network: knows all passwords, can grant access to any server convenient, but also the single point of failure requires high level of physical security

Kerberos Network authentication protocol Provides strong authentication for client/server applications, using secret-key cryptography A user types in a password and logs into a workstation. On behalf of the user, the workstation authenticates and accesses resources seamlessly Developed at MIT Kerberos V4 and V5 are widely deployed KDC: a database of <principal, key> and a library of subroutines

Configuration Kerberos server: KDC Each principal has its master key, KAlice, shared with KDC - human user: key is derived from password - machine: key is pre-configured KDC has a master key, KKDC, known only by itself, to encrypt user master keys and ticket-granting tickets KDC keeps a database of <principal, key>, where “key” for each user is encrypted by KKDC Based on secret-key cryptography: DES, V5 theoretically can use other encryption algorithms

Session Keys For login sessions Should we use the master key KAlice (long-term key)? Use KAlice at the beginning of each session to negotiate a session key SA - eavesdropping - database reading - password guessing: online, offline (dictionary attack)

Ticket-Granting Ticket (TGT) Recall: ticket TGT: KKDC{Alice, SA, expiration time,…}, for assigning the session key Obtaining a TGT

Obtaining Services from A Remote Node After obtaining TGT, the credential for Alice… Step 1: Alice uses TGT to obtain a ticket Step 2: Alice uses ticket to log into remote node

Step 1: Obtaining A Ticket to Bob

Step 2: Accessing Bob

Overview of Kerberos

Replicated KDCs Purposes: Multiple KDCs Updating KDC database - Prevent single point failure - Prevent performance bottleneck Multiple KDCs - One master copy for read/write - Multiple replicas for read only - All having the same database and the same master key Updating KDC database - KDC’s database is transferred in clear - Privacy: keys are stored as ciphertext encrypted by KKDC - Integrity: a cryptographic hash of the database file and a timestamp

Realms To scale to a large network including multiple administrations, the principals are divided into realms. Each realm has its own KDC. The KDCs of other realms are treated as resources (principals) of a local realm.

Interrealm Authentication Kerberos V4 does not allow authentication through a chain of KDCs: a rogue KDC can impersonate other realms Kerberos V5 does: hierarchy of realms

Interrealm Authentication (2)

Key Version Numbers If Bob changes his master key, Alice’s ticket for Bob will be invalidated without Alice knowing it Solution: Each key has a version number. Old keys are maintained for a period of time. Different keys are identified by their version numbers. Tickets are sent together with the key version numbers.

Other Uses of Kerberos Besides authentication… Integrity only: perform an undocumented arithmetic based on mod 2^63 – 1 on the message concatenated with the session key, which results in a checksum. Send the message with the checksum Privacy and integrity

Privacy and Integrity Plaintext Cipher Block Chaining (PCBC) - Modify any cipher block will garble the rest of the message - Put recognizable data at the end of a message - Does not prevent swapping attack (why?)

Message Types AS_REQ TGS_REQ AS_REP (also TGS_REP) AP_REQ AP REP AS_REQ_MUTUAL AS_ERR AP_ERR PRIV SAFE

Use of AS_REQ Obtaining a TGT

AS_REQ

Use of TGS_REQ Obtaining a ticket to remote server Bob

TGS_REQ

AS_REP and TGS_REP

AS_REP and TGS_REP

AS_ERR

Tickets

Authenticators

Credentials

Use of AP_REQ and AP_REP Accessing the remote server Bob

AP_REQ

AP_REP and Encrypted Data PRIV AP_REP is application specific, when mutual authentication is needed, it takes the format of encrypted data PRIV Decrypted Data

SAFE: Integrity-Checked Data

AP_ERR

Kerberos V4 vs. V5 Encryption system: V4 requires DES, V5 can use any Internet protocol: V4 requires IP, V5 can use other types Message byte ordering: V4 uses B BIT, all message structures are defined using Abstract Syntax Notation One (ASN.1) and Basic Encoding Rules (BER) in V5 providing unambiguous byte ordering Ticket lifetime: 21 hours in V4 (encoded in a 1-octet quantity), V5 tickets include explicit start and end time allowing arbitrary lifetimes

Kerberos V4 vs. V5 (Cont’d) Authentication forwarding/delegation: V4 does not allow and V5 allows Interrealm authentication: no chaining in V4 (N realms require O(N2) Kerberos-to-Kerberos relationships), V5 supports KDC hierarchy Session keys: negotiation of subsession keys is supported in V5 for different sessions of the same service type Privacy + integrity: V4 uses PCBC, V5 uses explicit integrity mechanisms (e.g., hash) with CBC encryption Password attacks: both versions are vulnerable

Exercises (1) [Kaufman] 13.5: With CBC, if one ciphertext block is lost, how many plaintext blocks are lost? With PCBC, why do things get back in sync if cn and cn+1 are switched? How about if a ciphertext block is lost? How about if ciphertext block n is switched with ciphertext block n+2? How about any permutation of the first n blocks?

Exercises (1): Answer [Kaufman] 13.5: In CBC decryption, each ciphertext block affects two plaintext blocks, one through decryption and one through XOR. In PCBC decryption, each ciphertext block affects the corresponding plaintext block by XORing its decryption, while it affects all following plaintext blocks by XORing the XOR of it and its decryption. Thus, a set of ciphertext blocks affects the following plaintext blocks in a manner independent of the order of ciphertext blocks within the set—the effect is just an XOR of the XOR of all the ciphertext blocks and their decryptions.

Exercises (2) [Kaufman] 14.4: Design a different method of Bob authenticating Alice when Bob does not remember his own master key, which places the work on Bob instead of Alice. In other words, Alice will act as if Bob was an ordinary civilized thing that does not remember its own master key, and Bob interacts appropriately with the KDC so that Alice will be unaware that Bob didn't know his own master key.

Exercises (2): Answer [Kaufman] 14.4: We assume that Bob has a valid TGT and still remembers the session key SB. With the cooperation of the KDC, Bob can still decrypt messages encrypted with his master key, and thus authenticate Alice as follows. Bob gets the KDC to decrypt a message encrypted with his master key by sending the encrypted message and his TGT (which contains Bob’s name and the session key encrypted with the KDC’s master key) to the KDC. The KDC (which knows Bob’s master key) decrypts the message and sends it back to Bob encrypted with the session key. Since Bob knows the session key, he can now decrypt the message.

Exercises (3) Alice wants to send Bob a large data file containing confidential data. She wants to make sure the file cannot be modified undetected during transmission. All Alice and Bob have is their public/private key pair PUBA/PRVA and PUBB/PRVB, respectively. Show how Alice will construct the message to be transmitted in a secure and efficient way. Show also how Bob will extract the data file from the received message. You can draw diagrams or write down the message construction/extraction using notations.

Exercises (3): Answer

Reading Assignment [Kaufman] Chapter 13