Authentication II - PKI based, comparisons

Authentication Mechanisms:
A Myriad of Options and Opportunities
Andrew Lindell
aladdIn.com
Chief Cryptographer
Assistant Professor
Aladdin Knowledge Systems
Bar-Ilan University
Background
Authentication is a basic cryptographic task
• Due to its importance, there is an abundance of different
solutions and different models
–
–
–
–
Human memory (passwords)
Hardware devices
Online servers
Biometrics
aladdin.com
–
–
–
–
Logon
Authentication to applications
Authentication to websites
Authentication for authorization
Choosing an Authentication Mechanism
• In order to make an informed decision
– It is necessary to understand the security ramifications of
each choice (this requires an understanding of how they work)
– It is necessary to weigh up the risks and benefits of the
different options
• Not all applications need the highest security
– An Internet newspaper service (even with paid subscription)
does not require smartcard-based authentication
• Not all mechanisms are comparable
– One mechanism may be excellent assuming a trusted
computer, but be very poor otherwise
– Another mechanism may be “reasonable” on
both a trusted or untrusted computer
– Which is better?
aladdin.com
Where is the User in the Equation
• Users are often considered to be the enemy
– They are the often the weakest link in the security chain
– They don’t choose good passwords and don’t make efforts to
keep them secret
– They don’t follow security policy
• Why?
– Reason 1 – education: they often don’t feel that they are the risk
(who would target them?)
– Reason 2 – frustration: how many passwords can be tolerated?
• My university account, my work account, my smartcard, my building
code, my car code, 2 PINs for ATM cards, 2 Internet banking
passwords, my computer at home, countless other Internet
passwords
• Users are often expected to do the impossible
aladdin.com
This Talk
•
We will present a list of key decision factors to be
considered when choosing an authentication
mechanism
– Security factors
– Other factors (cost, ease of deployment etc.)
•
We will then consider two mechanisms in order to
demonstrate an analysis based on these factors
– Single sign-on (4 variants)
– Smartcard (logon, laptop protection,
web authentication)
– (Plain passwords, one-time passwords
and biometrics appear at the end of
the talk…)
aladdin.com
Decision Factors – Security
Security factors
• Vulnerability to attacks
– Requires an in-depth understanding of the mechanism and
threats
• Multiple factors of authentication
– Typically a yes/no answer
• Protection from phishing attacks
– Has become more and more important
• Effect of use on an untrusted local machine
– This factor is often ignored
• Usability as a security issue
– See more next…
aladdin.com
Usability as a Security Issue
• Usability is typically viewed as an issue of human
comfort, but this is not the case
• Example – fingerprint-protected access to a building
– Due to high security needs
• Access to a building is protected by a fingerprint reader
• The reader is calibrated to accept very few false positives
• Tailgating is strictly forbidden
– The result:
• Users have to try multiple times to enter
• A line typically forms at peak hours
• Due to overall user frustration, tailgating is common – as is
opening the door to users (who can claim that they can’t get their
fingerprint to be accepted)
aladdin.com
Usability as a Security Issue
• Another classic example of usability = security
–
–
–
–
–
–
–
Administrator forces high-quality passwords
Users don’t change their password
Administrator forces frequent password change as well
Users change their password immediately back
Administrator forces password to be different from 15 previous
Users make a series of passwords: pwd001!, pwd002!,…
Administrator forces users to take a random password r%D3y)u
– User writes the password on a piece of paper and
leaves it on their desk
• Yes this still happens today!!!
aladdin.com
Usability as a Security Issue
• Successful security products must factor usability in
• When analyzing a new product/method, the question of
user convenience needs to rank very high
• How can we improve in this area?
– Help users minimize the number of devices they carry
• If you issue a smartcard or other device, incorporate the proximity
inside (this also ensures that they don’t forget their device at their
desk)
• If users need flash drives, incorporate this as well
– Provide users with added personal benefit
• If the security product contains a password management system, let
the user use it for their personal passwords as well
aladdin.com
Decision Factors – Others
Other factors
• Ease and cost of deployment
– Does it require (expensive) hardware devices
– Does it require modifying existing applications and infrastructure
• Ease of management, including recovery
– What happens when a user forgets/loses something
– How easy is it to add and revoke users
– How easy is it to update a user’s information
• Applicability
– Can it be used to protect a laptop?
– Does it need the user to be online?
• Usability
aladdin.com
Single Sign-On
The basic idea
• The user remembers a single password
• The single password unlocks multiple passwords
belonging to the user
******
aladdin.com
Single Sign-On Models
•
Online: user authenticates to the
•
server with a password, the server
authenticates for the user to the
application
authenticates to the server with a
password-protected smartcard
and the server authenticates to
the application
******
•
Smartcard: user authenticates
to a smartcard that contains all of
the user’s passwords
Online-smartcard: user
******
•
Software: the user’s passwords
are encrypted under its single
password and stored on disk
******
*******
aladdin.com
Single Sign-On – How it Works
Online single sign-on
• User authenticates to a server:
– With smartcards, the user authenticates to the smartcard and
then public-key operations are used to authenticate to the server
(e.g., SSL with client authentication)
– With passwords, the user sends her password to the server
over a secured SSL channel
• After authenticating the user, the server carries out the
logon procedure to the application for the user (again,
over a secured channel)
• The user’s password to the application is never revealed
******
aladdin.com
Single Sign-On – How it Works
Smartcard-based single sign-on
• The user’s passwords to applications and websites are
stored on the user’s smartcard
• The user authenticates to the smartcard, after which the
user password to the application is read to the PC and
automatically filled into the logon page of the application
aladdin.com
Single Sign-On – How it Works
Software-only single sign-on
• The user’s passwords to applications and websites are
stored on the user’s machine (or flash disk)
– The passwords etc. are encrypted by the user’s single password
• The user inputs its password which is used to decrypt
the application passwords, after which the user
password to the application is automatically filled into the
logon page of the application
aladdin.com
Single Sign-On – Security Factors
Vulnerability to attacks
• Software:
– Vulnerable to offline dictionary attacks on password file
• Given the encrypted passwords (and profiles), can guess the user
password and attempt to decrypt
• This is very effective: millions of passwords can be checked per
second
– If stored on flash disk for portability, vulnerable to theft
• All modes:
– No offline dictionary attacks on application passwords
• Can use very long passwords for applications, logon to laptop, file
encryption and so on
aladdin.com
Single Sign-On – Security Factors
Multiple factors of authentication
• Online SSO with smartcard authentication:
– Yes
• Online SSO with password authentication:
– No
• Smartcard-based SSO:
– Yes
• Software-only SSO:
– No
aladdin.com
Single Sign-On – Security Factors
Protection from phishing attacks
• Online SSO with smartcard authentication:
– Yes, as long as done correctly
– SSL with PKI-client authentication provides full protection against
phishing (even man-in-the-middle)
• We show why this is the case later on
• Online SSO with password authentication:
– The connection to the server may be vulnerable to phishing
– Even passive (standard) phishing can catch the user’s password
that is used to authenticate to the SSO server
• Smartcard and software SSO:
– Good protection (phisher needs to fool software, not the user)
– Software can check URL and other factors
aladdin.com
Single Sign-On – Security Factors
Effect of Use on Untrusted Machine
• Online SSO with smartcard authentication:
– Resident malware can access user’s accounts while the user is
logged in – this is inherent in all SSO solutions
– Nothing else is compromised
– This is optimal!
• Online SSO with password and software SSO:
– Resident malware obtains user’s password and full access (for
online SSO, until password is changed)
• Smartcard SSO:
– User’s passwords can be stolen by resident malware
– Effect can be limited by changing them regularly, or by having
the smartcard authenticate directly
aladdin.com
Single Sign-On – Security Factors
Usability as a security issue
• Online SSO (smartcard and password):
– Requires the user to be online
– Only applicable where online SSO works and so user still needs
to remember many passwords
– For smartcards: requires device as well as above
• Smartcard SSO:
– Requires carrying a device
– Provides great usability because all user’s password woes are
solved (even at home)
• Software SSO
– Without a device, lack of portability
– With a device, identical to smartcard SSO (on this issue)
aladdin.com
Single Sign-On – Other Factors
Ease and cost of deployment
• Online SSO (smartcard and password):
– Requires online server
– Requires modification of applications to work with the server
– For smartcards: requires a device as well as above
• Smartcard SSO:
– Requires a device
– All applications can remain unchanged; very easy deployment
• Software SSO
– Cheap, trivial to deploy
aladdin.com
Single Sign-On – Other Factors
Ease of management, including recovery
• With smartcards:
– Needs smartcard management
• Without smartcards:
– Only a single password needed so less helpdesk calls for
forgotten passwords
– Can be devastating in the case of a lost password (without
backup)
aladdin.com
Single Sign-On – Other Factors
Applicability
• Online SSO (smartcards and passwords)
– Needs the user to be online
– Can only work with some applications
• Smartcard and software SSO
– Can be used for any application where passwords are used
– No modification needed
aladdin.com
Summary – SSO
Online SSO with smartcard authentication
• Strongest security
– Best against phishing and use on untrusted machine (although latter is
still a problem)
•
Weak on other factors
– Limited applicability, costly deployment
Smartcard SSO
• Good security
– A little weaker on an untrusted machine, otherwise strong
•
Strong on other factors
– Best applicability, reasonable cost, easy deployment, great usability
Online SSO with password authentication
• Reasonable security and weak in other factors
Software SSO
• Weak security, great in other factors (except recovery)
aladdin.com
Smartcard Authentication
• A smartcard is used in the authentication process
– Typically, this involves a PKI and smartcard public-key
operations
• Applications
– Web authentication: SSL with client authentication
• User signs on SSL handshake messages to prove its identity
– Network authentication
• Smartcard logon
– Laptop protection
• Directly use smartcard to encrypt files as well
• Key observation
– PKI-based authentication is always stronger than passwords!
• The secret key never leaves the smartcard
• The secret key cannot be guessed with any reasonable probability
aladdin.com
SSL (Secure Socket Layer)
• Two phases
– Handshake protocol: set up a secret key
between the client and server
– Record layer: communicate securely using
the secret key
• The client is certain of the server’s identity
• The server learns the client identity “later”
– Client and server authentication:
• Both client and server learn each other’s
identity
aladdin.com
Server
Time
• Modes of handshake
– Server authentication:
Client
SSL (Secure Socket Layer)
• Client authentication:
– The client signs on all of the messages of the
handshake protocol
– The server verifies the signature (using the
public-key obtained from the client’s certificate)
– Only the legitimate client can sign
aladdin.com
Client
Server
Time
• Server authentication:
– The client encrypts a random value under the
server’s public-key (obtained from the server’s
digital certificate)
– Only the legitimate server can extract that value
– The server computes a cryptographic function
(HMAC) using the key
– Only the legitimate server can do this
Phishing Attacks
• In a phishing attack, a user is fooled into visiting a rogue
site that impersonates the real one
• There are two types of phishing attacks
– Passive attacks: a user goes to a website, following an email
for example, and gives up his or her password
– Active (man-in-the-middle) phishing: a user goes to a website
that actively impersonates the target website and acts as a
bridge between the user and site
• Smartcard authentication and passive
phishing
– The user gives up no authentication
information to the site and so nothing
is lost
aladdin.com
Smartcard Authentication and Active Phishing
• Can the attacker obtain a valid SSL session with the
server, with the client’s “help”
– The client receives the attacker’s certificate (otherwise the
attacker won’t learn the secret value sent by the client)
– The attacker can try to get the client to sign the SSL messages
• Key observation:
– The client signs on the server certificate as well!
– In this attack, the “server certificate” is actually the attacker’s
– Conclusion: the server will not accept the client authentication
aladdin.com
Smartcards – Security Factors
• Vulnerability to attacks
– Highly resilient
• Multiple factors of authentication
– Can (and should) be used in combination with a password
• Protection from phishing attacks
– Strong protection (with SSL, it’s resilient to all such attacks)
• Effect of use on untrusted local machine
– No damage (only smartcard password is stolen, but it’s useless
without the smartcard)
• Usability as a security issue
– Requires a device (downside)
– Can remember a short PIN rather than a long password
aladdin.com
Smartcards – Other Factors
• Ease and cost of deployment
– Requires user devices (cost plus physical deployment)
– Requires a server to manage server-side authentication
– Requires changing interface for authentication
• Ease of management, including recovery
– Loss of device needs to be taken care of
• Applicability
– Can be easily used for all SSL web authentication and network
logon
– Has many other applications (e.g., laptop protection)
• Usability
– Requires carrying a device
• Summary: best security, excellent for untrusted
machines, wide applicability
aladdin.com
Summary
• All authentication methods require user education
• User cooperation is improved when they “like” the
method
• What about devices?
– Users don’t always like carrying devices
– This can be solved by providing additional functionality to the
one device
• Proximity for entering the building
• Built-in flash drive
aladdin.com
Summary
• Different devices fair differently in different scenarios
• Security factors to consider are
–
–
–
–
–
Vulnerability to attacks
Multiple factors of authentication
Protection from phishing
Effect of use on an untrusted machine
Usability
• Other factors to consider are
– Ease and cost of deployment
– Ease of management
– Applicability
aladdin.com
Summary
• Single sign-on provides an excellent solution, but should
be used only on trusted machines
– Smartcard-based gives wide applicability and easy deployment
• Smartcard PKI-based authentication is by the far the
best from a security perspective, but is limited in
applicability
– Should be used wherever possible
• There is a distinct advantage to devices that can work in
multiple modes
aladdin.com
An Ideal Suite
• An ideal setup for obtaining high security in an
organization
– Smartcard logon is used to logon to local computers within the
organization, for connecting to the VPN, and for web
authentication (where possible)
– Single sign-on is used for authenticating to applications and
websites when at work (or when working from a computer owned
and protected by the organization)
– One-time passwords are used for authenticating to the
organization over the web for email access and the like
(especially from untrusted computers)
• It is possible to use smartcard-based single sign-on and
have one device do all of the above (and more)
aladdin.com
Legal Notice
© Copyright 2007 Aladdin Knowledge Systems Ltd. All rights reserved.
Aladdin, Aladdin Knowledge Systems, the Aladdin Knowledge Systems logo, eToken and eSafe are trademarks
of Aladdin Knowledge Systems Ltd. covered by patents www.aladdin.com/patents; other patents pending.
You may not copy, reproduce (or the like), or use in any other way whatsoever, whether directly or indirectly, any
of the materials represented and/or disclosed herein without the express written consent of Aladdin.
Some of the information contained herein may be proprietary information of Aladdin or third parties and all text,
images, graphics, trademarks, service marks, logos, trade names and other materials which are part of this
communication are subject to intellectual property rights of Aladdin or third parties. The information herein is
provided “as is” without any warranty, express or implied (by statute or otherwise), of any kind whatsoever.
Aladdin does not undertake any obligation to update the information herein and it does not assume responsibility
for errors or omissions.
a l a d d Ii n . c o m
Thank You
aladdin.com
Password-Only Authentication
• This is the simplest and most well-known method
– For this reason, I will focus on one issue that is often ignored
– I will ignore the all-important discussion on password quality etc.
• There are two main attacks on password-based
authentication
– Online attacks
– Offline dictionary attacks
aladdin.com
Attacks on Password Authentication
Online attack
• Try to authenticate multiple times by just guessing the
password (the most basic attack)
– Applicability
• Any password-based authentication mechanism
• Very easy to implement
– Countermeasures
• Retry counter
• Increasing delays
– Note: countermeasures are not as simple as they look
• Retry counter makes for an easy denial of service attack
• Increasing delays is better but can be annoying
• Neither presents an “across the board” attack
aladdin.com
Online Guessing Attacks
• Should we be concerned about online guessing attacks?
– With a reasonable delay, it takes a very long time to guess even
mediocre passwords
• Nevertheless…
– Some users use terrible passwords (the passwords admin,
login, pass, passwd, password are very popular)
– Sometimes an attacker doesn’t care which user is compromised
• Even a low-level user can provide a foot in the door
• For subscription services, it doesn’t matter which user is broken into
• Can online attacks be prevented or slowed down?
– In most cases, an automatic agent carries out the attack
– CAPTCHAs can be used to prevent these attacks
aladdin.com
CAPTCHA
• The aim: Force a human to be involved in the
authentication process
– Mass online guessing attacks are all carried out by computers
who continually attempt login with new passwords
• Use a problem that is easy for a human but hard for a
computer
– One such problem is distorted text recognition
aladdin.com
CAPTCHA Example
In the spaces below, type three (3) different English words appearing in the picture above.
BEAUTIFUL
STEM
QUIET
Submit
aladdin.com
CAPTCHA Pros and Cons
• A good CAPTCHA prevents automated widespread
password guessing
– A bit annoying for the user, but is reasonable (at least it doesn’t
require remembering anything)
– As with everything, there is a tradeoff between making the task
easy for a human, without making it too easy for a computer
– CAPTCHAs can be made easier or harder, depending on what is
needed
aladdin.com
Using CAPTCHAs
When should CAPTCHAs be used?
• Highly recommended for pages used infrequently
– E.g., automatic website for password recovery (e.g., based on
personal question only the user should know)
• After a number of incorrect password guesses, a
CAPTCHA can be presented
• When a system detects an “across-the-board attack”, it
can use CAPTCHAs to stop it
– This inconveniences users, but is OK if it doesn’t happen too
often
aladdin.com
Attacks on Password Authentication
Offline dictionary attack
• Given some function of the password (e.g., a hash or
encrypted file), guess the password, recompute the
function and compare
• Typically very effective (can check millions per second)
– Applicability
• Any mechanism that allows an attacker to obtain a function of the
password
– CHAP: attacker receives <challenge, H(pwd,challenge)>
– Password logon: password file contains H(pwd)
– File encryption using a password as a key: ENCpwd(file)
– There exist effective tools; e.g., L0phtCrack
– Countermeasures
• Use repeated hashing and salt to slow down attack
• Use a long truly random password (unrealistic)
aladdin.com
Password-Based Encryption Example
aladdin.com
Using Passwords
An important rule:
• Passwords should never be used when offline dictionary
attacks can be carried out
–
–
–
–
Encrypting files
Protecting laptop (logon + file encryption)
CHAP
Bluetooth 2.0 pairing protocol
• In some cases offline dictionary attacks cannot be carried
out and the use of passwords may be reasonable
– Authentication to smartcards
– Web authentication over SSL
aladdin.com
Password Authentication – Security Factors
• Vulnerability to attacks
– Severe vulnerability to offline dictionary attacks
– Severe problem due to use of weak passwords
• Multiple factors of authentication
– NA
• Protection from phishing attacks
– None – extremely vulnerable
• Effect of use on an untrusted local machine
– A stolen password can be used undetected
• Usability as a security issue
– The need to remember many passwords is a usability issue with
severe security ramifications
aladdin.com
Password Authentication – Other Factors
• Ease and cost of deployment
– Very cheap
– Easiest deployment
• Ease of management, including recovery
– The cost of forgotten passwords can be very high if a help desk is
needed to recover from a forgotten password
– Otherwise, easy management
• Applicability
– Highest
• Usability
– Excellent for few passwords, but today with the abundance of
passwords, usability is low and user frustration is high
•
Summary: low security and usability, wide applicability and easy
deployment
aladdin.com
One-Time Passwords (OTP)
• The basic idea
– Users are provided with a device that outputs a different
password “each time”
• Software-only OTPs are much less secure
– Each password is valid only once, so:
• Stealing a password after it has been used is inconsequential
• Stealing a password before it has been used constitutes limited
damage
aladdin.com
One-Time Passwords
• How are the passwords generated
– A secret cryptographic key is stored in the device
– A unique value is “encrypted” each time with the key (using a
standardized algorithm like AES or HMAC)
– The unique value can be the current time (time-based) or an
index that is incremented each time a button is pressed
(sequence-based)
• Randomness of the one-time passwords
– When properly implemented (using AES or HMAC), it is
infeasible to predict future passwords from previous ones!
aladdin.com
One-Time Passwords – Security Factors
• Vulnerability to attacks
– Stealing one-time passwords is hard to do (need access to
device) and provides very limited damage
• Multiple factors of authentication
– Yes (can require PIN as well as one-time password)
• Protection from phishing attacks
– No direct protection, but the damage is limited to a single access
(mediocre protection)
• Effect of use on untrusted local machine
– Damage is limited to a single access (this is optimal!)
• Usability as a security issue
– Requires a device (downside)
– Can remember a short PIN rather than a long password
aladdin.com
One-Time Passwords – Other Factors
• Ease and cost of deployment
– Requires devices (cost plus physical deployment)
– Requires a server to manage server-side authentication
– Application/web interface remains unchanged
• Ease of management, including recovery
– Users need to remember only a single password, so less password
resets are necessary
– Loss of device needs to be taken care of
• Applicability
– Can be used for applications and websites that use passwords, but
requires some change on the server side
– Cannot be used to encrypt files and is problematic for laptop logon
• Usability
– Very good
•
Summary: good security, excellent for untrusted machines,
reasonable applicability
aladdin.com
Biometrics
Authentication using human identifying factors
• Fingerprints
• Well accepted methodology
• Long-used in law enforcement
• Hand prints
• More complete picture than fingerprint
• Retina patterns
• Unique but difficult and invasive
• Requires a powerful scan
• Iris patterns
• Not so unique (but somewhat so)
• Voice recognition
• Can be fooled by recording someone’s voice
• Face recognition
• Still difficult today and requires human intervention
aladdin.com
Fingerprints – What’s the Problem?
• Fingerprints have been used for decades in law
enforcement and are considered very reliable
• What’s the difference here?
– In law enforcement a
person compares the
fingerprints
– In biometric authentication, the comparison is
carried out by a machine
aladdin.com
– In law enforcement a
match is only a match
when it is very close
– In biometric authentication, regular users must
almost always succeed, so
reasonable matches must
also be accepted
Biometrics – the Ultimate Problem
• False positives
– Allow an unauthorized user in
• False negatives
– Deny access to authorized users
• For biometric authentication to work, both false positives
and negatives must be low
– This is very difficult for computer automated verification
aladdin.com
Fingerprints – A Deeper Study
• To understand the difficulties of biometrics, we will study
fingerprint authentication in greater detail
• Fingerprint authentication is secure if we can be sure
that there is a person standing behind the fingerprint
– This may seem obvious, but it’s not
– People leave their fingerprints everywhere – what stops
someone picking up a user’s fingerprint and using it?
• Reader reliability
– The reader must ensure that a person stands behind the
fingerprint (use texture, temperature, moisture etc.)
– The computer receiving the print must be sure that it
comes from the reader (need reader authentication)
aladdin.com
Attacks on Fingerprint Authentication
• Physical attacks on fingerprint-based authentication
– In March 2005, car thieves chopped off the finger of a car-owner
in order to bypass the car’s fingerprint recognition system
– The car was an expensive Mercedes and had an immobilizer
that could not be bypassed
– It’s best to be able to bypass the system when necessary!
• Fault attacks on fingerprint-based authentication
– These attacks rely on faults in the reader
– Example:
• Spray some material on the reader surface that makes the present
fingerprint image stand out
• Press a smooth finger (or something else) on the reader
• Some readers accept this as the valid print already there
aladdin.com
Attacks on Fingerprint Authentication
• Cloning attacks: construct a clone of someone’s finger
– This is possible because people leave their fingerprints
everywhere
Gelatin Liquid
Drip the liquid
onto the mold
Put this
mold into a
refrigerator to
cool, and then
peel carefully
– Works on a large number of readers
aladdin.com
Fingerprint Security
When Should Fingerprints be Used?
• For mild security needs, they can be excellent
– Keep children out of your account and out of inappropriate web
accounts
• They can be used as an additional factor of
authentication together with a password
• If a person is present next to the reader (like a reader
that is used to enter a building that is guarded at all
times), then cloning attacks are very difficult
aladdin.com
Fingerprints – Security Factors
• Vulnerability to attacks
– Vulnerable to cloning attacks (other attacks also exist)
• Multiple factors of authentication
– Can (and should) be used in combination with a password
• Protection from phishing attacks
– NA
• Effect of use on untrusted local machine
– NA
• Usability as a security issue
– Requires a device (downside)
– Can remember a short PIN rather than a long password
aladdin.com
Fingerprints – Other Factors
• Ease and cost of deployment
– Requires devices (cost plus physical deployment)
– Requires a server to manage server-side authentication
– Requires changing interface for authentication
• Ease of management, including recovery
– Users need to remember only a single password, so less
password resets are necessary
– Loss of device needs to be taken care of
• Applicability
– In principle, can be used widely, but difficult to do so
• Usability
– Very good, as long as false negatives are low
• Summary: medium security
aladdin.com