Authentication systems. Authentication methodologies. User authentication. Antonio Lioy - Politecnico di Torino (1995-2009) 1.



Similar documents
Authentication systems

CSC Network Security. User Authentication Basics. Authentication and Identity. What is identity? Authentication: verify a user s identity

How To Use Kerberos

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

Authentication Applications

Introduction to Computer Security

Authentication Applications

Authentication Application

Authentication Types. Password-based Authentication. Off-Line Password Guessing

2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries

TOPIC HIERARCHY. Distributed Environment. Security. Kerberos

Authentication. Computer Security. Authentication of People. High Quality Key. process of reliably verifying identity verification techniques

Kerberos: An Authentication Service for Computer Networks by Clifford Neuman and Theodore Ts o. Presented by: Smitha Sundareswaran Chi Tsong Su

CS 356 Lecture 28 Internet Authentication. Spring 2013

Network Security 1. Module 4 Trust and Identity Technology. Ola Lundh ola.lundh@edu.falkenberg.se

Implementing a Kerberos Single Sign-on Infrastructure

Chapter 15 User Authentication

Overview Windows NT 4.0 Security Cryptography SSL CryptoAPI SSPI, Certificate Server, Authenticode Firewall & Proxy Server IIS Security IE Security

Kerberos. Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, BC. From Italy (?).

Internet Banking Two-Factor Authentication using Smartphones

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

Cryptography and Network Security

Security+ Guide to Network Security Fundamentals, Third Edition Chapter 8 Authentication

A brief on Two-Factor Authentication

Network Security 1 Module 4 Trust and Identity Technology

Secure Remote Password (SRP) Authentication

Information Security Basic Concepts

Common Pitfalls in Cryptography for Software Developers. OWASP AppSec Israel July The OWASP Foundation

OPC UA vs OPC Classic

Certification Authority. The X.509 standard, PKI and electronic documents. X.509 certificates. X.509 version 3. Critical extensions.

Introducing etoken. What is etoken?

Understanding the Cisco VPN Client

Two-Factor Solutions Choosing the Right One"

Dashlane Security Whitepaper

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

RSA SecurID Ready Implementation Guide

Network Security Protocols

RSA SecurID Software Token 1.0 for Android Administrator s Guide

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

Chapter 4 Virtual Private Networking

Kerberos. Guilin Wang. School of Computer Science, University of Birmingham

CERTIFICATE-BASED SINGLE SIGN-ON MECHANISM FOR MULTI-PLATFORM DISTRIBUTED SYSTEMS Magyari Attila*, Genge Bela**, Haller Piroska**

Scenario. Roadmap. ! The simplified architecture! The complete architecture Pre-authentication Delegation. Realms

4.2: Kerberos Kerberos V4 Kerberos V5. Chapter 5: Security Concepts for Networks. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

Electronic mail security. MHS (Message Handling System)

The Security Behind Sticky Password

ProtectID. for Financial Services

FileCloud Security FAQ

Applying Cryptography as a Service to Mobile Applications

Two-Factor Authentication

Apache Milagro (incubating) An Introduction ApacheCon North America

Kerberos and Active Directory symmetric cryptography in practice COSC412

Hitachi ID Password Manager Telephony Integration

Citrix MetaFrame XP Security Standards and Deployment Scenarios

Module: Authentication. Professor Trent Jaeger Fall CSE543 - Introduction to Computer and Network Security

Biometrics, Tokens, & Public Key Certificates

Mobile OTPK Technology for Online Digital Signatures. Dec 15, 2015

HOBCOM and HOBLink J-Term

Check Point FW-1/VPN-1 NG/FP3

Kerberos. Login via Password. Keys in Kerberos

Endpoint Security VPN for Windows 32-bit/64-bit

Kerberos on z/os. Active Directory On Windows Server William Mosley z/os NAS Development. December Interaction with.

Cryptography and Network Security Digital Signature

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

Endpoint Security Client for Mac

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

MIGRATION GUIDE. Authentication Server

Research Article. Research of network payment system based on multi-factor authentication

Enhancing Web Application Security

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Sync Security and Privacy Brief

2-FACTOR AUTHENTICATION WITH OPENLDAP, OATH-HOTP AND YUBIKEY. Axel Hoffmann

NetIQ Advanced Authentication Framework

Chapter 16: Authentication in Distributed System

ipad in Business Security

Chapter 8 Security. IC322 Fall Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

Entrust IdentityGuard

White Paper 2 Factor + 2 Way Authentication to Criminal Justice Information Services. Table of Contents. 1. Two Factor and CJIS

Smart Card- An Alternative to Password Authentication By Ahmad Ismadi Yazid B. Sukaimi

Kerberos-Based Authentication for OpenStack Cloud Infrastructure as a Service

Two-Factor Authentication

Client Server Registration Protocol

A Feasible and Cost Effective Two-Factor Authentication for Online Transactions

Network Security Standards. Key distribution Kerberos SSL/TLS

Catapult PCI Compliance

Advanced Authentication

Transcription:

Authentication systems Antonio Lioy < lioy @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Authentication methodologies can be based on different factors ( 1/2/3-factors authentication ): something I know goofy! (e.g. a password) something I have (e.g. magnetic card) something I am (e.g. my fingerprint) multiple different mechanisms can be combined to achieve identification User authentication UID : f (S UID ) authentication request UID proof request proof = F (S UID ) user (UID) secret (S UID ) 1

Password-based authentication secret = the user password (client) create and transmit proof F = I (the identity function) i.e. proof = password (cleartext!) () verify the proof: case #1: f = I (the identity function) knows all passwords in cleartext (!) access control: proof = password? case #2: f = one-way hash (that is a digest) knows the passwords' digests, H UID access control: f(proof) = H UID? Password (reusable) authentication request UID user (UID) UID : f (P UID ) password request P UID secret (P UID ) pro: Password-based authentication simple for the user if she has to remember just one password cons: user-side password storage (post-it!) i!) password guessable (my son s name!) password readable during transmission -side password storage the must know in cleartext the password or its unprotected digest (dictionary attack) 2

Password suggestions to reduce the associated risks: alphabetic characters (uppercase + lowercase) + digits + special characters long (at least 8 characters) never use dictionary words frequently changed (but not too frequently!) don t use them :-) use of at least one password (or PIN or access code di or...) unavoidable unless we use biometric techniques Storing the password NEVER in cleartext! encrypted password? then the must know the key in cleartext store a digest of the password but beware of the dictionary attack: let HP be the hash of a password for (each Word in Dictionary) do if ( hash(word) = HP) then write ( found!, Word) may be made faster by using a rainbow table we must therefore insert an unexpected variation, usually named salt Using the salt in storing passwords for each user UID: create / ask the pwd generate a random salt (should contain rarely used or control characters) compute HP = hash ( pwd salt ) store the triples { UID, HP, salt UID } additionally we have different HP for users having the same pwd makes the dictionary attack nearly impossible (included those based on rainbow tables) 3

(Symmetric) challenge-response systems a challenge (typically a random number) is sent to the user...... who replies with the solution after a computation involving the shared secret and the challenge the must know the secret in clear often R is a hash function (can t be encryption) UID user challenge response = R (challenge, S UID ) { UID : S UID } S UID Mutual authentication with symmetric challenge (v1) A C B Alice enc (K AB, C B ) C A Bob enc (K AB, C A ) Mutual authentication with symmetric challenge (v2) A, C A Alice C B, enc (K AB, C A ) Bob enc (K AB, C B ) 4

(Asymmetric) challenge-response systems a random number R is encrypted with the user's public key...... and the users replies by sending R in clear thanks to its knowledge of the private key cert (Lioy, KpubLioy) user challenge = E (R, KpubLioy) acceptable users response = R private key Risks with asymmetric challenges trust in the issuer CA of the user cert check of the name constraint on trusted CAs unwilling RSA signature possible: if R=digest(document)... and dthe sends Ri in clear and ask kitb back encrypted with user s private key... then the user has unwillingly signed the document!!! Password (one-time) authentication request UID user (UID) request of password no. 48 UID : S UID P48 = p ( 48, S UID )? P48 UID P50 UID P49 UID P48 UID P47 UID P46 UID... 5

One-Time Passwords (OTP) original idea: Bell Labs the S/KEY system public-domain implementation commercial implementations with automatic hardware generators (authenticator) OTP provisioning to the users on stupid or insecure workstation: paper sheet of pre-computed passwords hardware authenticator (crypto token) on intelligent and secure workstation : automatically ti computed by an ad-hoc application eventual integration into the communication sw (e.g. telnet client) or hw (e.g. modem) The S/KEY system (I) RFC-1760 the user generates a secret S (the seed) the user computes N one-time passwords: P 1 = h (S) P 2 = h(p) 1 = h(h(s)) h(s) )... the user initializes the authentication with the last generated password (e.g. P 100 ) 6

The S/KEY system (II) the prompts for the passwords in reverse sequence: S: P99? C: X S: if h (X) = P100 then access allowed + X is stored in this way the doesn t need to know the client s secret RFC-1760 uses MD4 (other choices possible) public-domain implementation for Unix, MS-DOS, Windows, MacOs S/KEY password generation the user inserts a pass phrase (PP) at least 8 char long the PP is concatenated with a seed provided by the a 64 bit quantity is extracted from the MD4 hash (by XORing the first / third 32 bit groups and the second / fourth groups) S/KEY passwords 64 bit passwords are a compromise neither too long nor too short possible typing as a sequence of 6 short english words chosen from a dictionary of 2048 (e.g. "A", "ABE", "ACE", "ACT", "AD", "ADA") client and must share the same dictionary 7

OTP problems generally uncomfortable uncomfortable when used to access multiple password-based services (e.g. POP with periodic check of the mailbox) expensive when based on hw authenticators paper-based passwords cannot be used by a process but only by a human operator Problems of hw authenticators denial-of-service: deliberately wrong attempts to trigger account blocking social engineering: phone call to simulate loss of the authenticator and remotely initialize a new one Password (one-time token-based) authentication request UID user (UID) request of the 11:07 password UID : SUID P1107 UID P1107 = p ( 11:07, S UID )? 8

RSA SecurID invented and patented by Security Dynamics time-based synchronous OTP technique: P UID ( t ) = h ( S UID, t ) access code ( token-code ): 8 digits random, never repeats itself changes every 60 s maximum drift 15 s / year expires in 4 years based on proprietary and secret (!) hash algorithm SecurID: architecture the client sends in clear user, PIN, token-code (seed, time) based on user and PIN the verifies against three possible token-codes: TC -1, TC 0, TC +1 duress code: PIN to generate an alarm (useful for authentication under threat) wrong authentication attempts limited (default: 10) may have three different keys per device SecurID: hardware SecurID Card: classic device (credit-card size) SecurID PinPad: local PIN keying and then only user and token-code* are sent to the SecurID Key Fob: usable as a key fob SecurID modem: PCMCIA-II II V.34 modem with an internal token activated via sw by introducing the PIN 9

SecurID: software SoftID works as a SecurID PinPad but is a sw application automatic or manual transmission of the token-code problem: clock synchronization SecurID: architecture token OK? ACE token OK? ACE client OK! KO! ACE client TELNET DBMS user, PIN, TC user, TC* TELNET client SecurID (normal) DBMS client SecurID (pinpad) SecurID: client ACE/client manages the dialogue with the ACE/ encrypted channel sd_ftp for secure FTP available for: Unix Win32 Netware Macintosh TACACS 10

SecurID: ACE/: authentication with SecurID tokens monitor, audit and report GUI management interface authentication API SQL interface to access a DBMS (already) storing the user data large commercial support in security (e.g. firewall) and communication (e.g. comm. ) products available for Solaris, AIX, HP-UX, NT, 2000, XP CRYPTOCard challenge-response mechanism based on DES-CBC single product: RB-1 card 8 digits (hex, dec) LCD display user-replaceable battery (change every 3-4 years) to avoid inserting the challenge, can store the last one and automatically compute the next one for Unix and Windows (Radius, Tacacs+) CRYPTOcard: hardware 11

Authentication of human beings how can we be sure of interacting with a human being rathre than with a program (e.g. sensing a password stored in a file)? two solutions: CAPTCHA techniques (Completely Automated Public Turing test to tell Computers and Humans Apart) e.g. picture with images of distorted characters biometric techniques e.g. fingerprint Biometric systems measure of one biologic characteristics of the user main characteristics being used: fingerprint voice retinal scan iris scan useful to *locally* replace a PIN or a password Problems of biometric systems FAR = False Acceptance Rate FRR = False Rejection Rate FAR and FRR may be partly tuned but they heavily depend on the cost of the device variable biological characteristics: finger wound voice altered due to emotion retinal blood pattern altered due to alcohol or drug 12

FAR / FRR Problems of biometric systems psychological acceptance: Big Brother syndrome (=personal data collection) some technologies are intrusive and could harm lack of a standard API / SPI: high h development costs heavy dependence on single/few vendors API / SPI being developed: standard and unified based on CDSA API? SPI? middleware! APP1 APP2 API (Application Programming Interface) middleware (e.g. CDSA) SPI (Service Programming Interface) device / service no. 1 device / service no. 2 device / service no. 3 13

Kerberos authentication system based on a TTP (Trusted Third Party) invented as part of the MIT project Athena user password never transmitted but only used locally as cryptographic p (symmetric) key realm = Kerberos domain, that is the set of systems that use Kerberos as authentication system credential = user.instance@realm ticket Kerberos data structure to authenticate a client to a variable lifetime (V4: max 21 hours = 5 x 255) (V5: unlimited) encrypted with the DES key of the target bound to the IP address of the client bound to just one credential simple or mutual authentication Kerberos high-level view K UID, K TGS AS Authentication Server {TGT} TGT K S TGS Ticket Granting Server T s request client T s (application) 14

Kerberos: data formats (v4) TICKET -id client-idid client-address timestamp life K S,C KS AUTHENTICATOR client-id client-address timestamp K S,C TGT request C, TGS C A S { K C,TGS, { T C,TGS } K TGS } K C client Authentication Server Ticket request C s, { T C,TGS } K TGS, { A C } K C,TGS { { T C,S } K S, K C,S } K C,TGS T G S client Ticket Granting Server 15

Ticket use { T C,S } K S, { A C } K C,S C S { timestamp(a C ) + 1 } K C,S client (application) Kerberos versions MIT V4 (the original public one) MIT V5 (RFC-1510) not only DES extended ticket lifetime (begin-end) inter-realm authentication ti ti forwardable ticket extendable ticket OSF-DCE based on MIT V5 implemented as RPC rather than a message exchange protocol Kerberos: problems clock synchronization required: within a LAN it s useful anyway in WAN may originate problems Kryptoknight (alias IBM NetSP) doesn t require clock synchronization remote access needs cleartext password: encrypted channel or integration with OTP, symmetric or asymmetric challenge Kerberized dial-up modems 16

Kerberos: advantages single login to all Kerberized services K-POP, K-NFS, K-LPD K-telnet, K-ftp K-dbms the ticket t mechanism is ideally for intermittent itt t connections mobile computers ISDN, WiFi increasing commercial support (MS has adopted Kerberos* since Windows-2000 ) SSO (Single Sign-On) the user has a single credential to authenticate himself and access any service in the system fictitious SSO: client for automatic password synchronization / management (alias password wallet ) specific for some applications only integral SSO: multiapplication authentication techniques (e.g. asymmetric challenge, Kerberos) likely requires a change in the applications Interoperability OATH (www.openauthentication.org) interoperability of authentication systems based on OTP, symmetric or asymmetric challenge development of standards for the client- protocol and the data format on the client (draft RFC): HOTP (HMAC OTP, RFC-4226) challenge-response protocol bulk provisioning symmetric key container 17