Unit 4: User Authentication
EECS710: Information Security
Professor Hossein Saiedian
Fall 2014
overview
• Electronic user authentication principles
• Password-based authentication
• Token-based authentication
• Biometric authentication
• Remote user authentication
• Security issues for user authentication
• Practical application: an iris biometric system
• Case stury: security problems for ATM systems
User Authentication
• Fundamental security building block
– basis of access control & user accountability
• The process of verifying an identity claimed by or
for a system entity
• Two steps:
– identification: specify identifier
– verification: bind entity (person) and identifier
• Distinct from message authentication (when
communicating parties are concerned with the integrity of the exchanges
messages)
A model for electronic user
authentication
• the process of establishing confidence in user identity
that are electronically presented
– User applies to registration authority (RA) and becomes a
subscriber of a credential service provider (CSP)
– RA is a trusted entity
– The CSP exchanges with the subscriber
– The credential (a data structure) binds an identity to a
token possessed by the subscriber
– Claimant: the party to be authenticated
– Verifier: the party verifying
– The verifier passes an assertion about the subscriber to
the relaying party (PR)
A model for electronic user
authentication
Means of user authentication
Four general means of authenticating a user's
identity are
• Individual knows: Includes a password, a
personal identification number (PIN), or answers
to a prearranged set of questions.
• Individual possesses: Includes electronic
keycards, smart cards, and physical keys. Also
known as a token.
• Individual is (static biometrics): Includes
recognition by fingerprint, retina, and face.
• Individual does (dynamic biometrics): Examples
include recognition by voice pattern, handwriting
characteristics, and typing rhythm.
• can use alone or combined
• all can provide user authentication & have issues.
Risk assessment for user
authentication
• Assurance level: the degree of certainty that a
user has presented a credential that refers to
his/her identity
– Level 1: little confidence (an online forum)
– Level 2: some confidence (professional organizations)
– Level 3: High confidence (patent office applicants)
– Level 4: Very high confidence (employees accessing
restricted/sensitive services)
• Potential impact: low, moderate, impact
Risk assessment for user authentication
Assurance Level Impact Profiles
Potential Impact Categories for Authentication Errors 1 2 3 4
Inconvenience, distress, or damage to standing or reputation Low Mod Mod High
Financial loss or organization liability Low Mod Mod High
Harm to organization programs or interests None Low Mod High
Unauthorized release of sensitive information None Low Mod High
Mod/
Personal safety None None Low
High
Civil or criminal violations None Low Mod High
Password authentication
• Widely used user authentication method
– user provides name/login and password
– system compares password with that saved for
specified login
• Authenticates ID of user logging and
– that the user is authorized to access system
– determines the user’s privileges
– is used in discretionary access control
Password vulnerabilities
• offline dictionary attack
• specific account attack (user john)
• popular password attack (against a wide range of
IDs)
• password guessing against single user (w/ previous
knowledge about the user)
• workstation hijacking
• exploiting user mistakes
• exploiting multiple password use
• electronic monitoring
Countermeasures for password
vulnerability
• stop unauthorized access to password file
• intrusion detection measures
• account lockout mechanisms
• policies against using common passwords but
rather hard to guess passwords
• training & enforcement of policies
• automatic workstation logout
• encrypted network links
Countermeasures for password
vulnerability
• It is worthwhile to study/research password
and password vulnerabilities
– Most common
– Still the most efficient
Attack Strategies
1. Offline dictionary attack:
• A hacker gain access to the system password file.
• Compares the password hashes against hashes of commonly used
passwords.
2. Specific account attack:
• Attacker targets a specific account &submits password guesses until the
correct password is discovered.
3. Popular password attack / Against single user:
• The attacker chooses a popular password and tries it.
• Attacker attempts to gain knowledge about the account holder and
system password policies and uses that knowledge to guess the password.
4. Workstation hijacking:
The attacker waits until a logged-in workstation is unattended.
5. Exploiting user mistakes:
• User is more likely to write it down passwords, because it is difficult to
remember.
6. Exploiting multiple password use.
• Similar password for a many applications
7. Electronic monitoring:
• If a password is communicated across a network to log on to a remote
system, it is vulnerable to eavesdropping.
Use of hashed
passwords
Why a salt value?
• Prevents duplicate passwords from being
visible in the password file
• Increases the difficulty of offline dictionary
attacks
• Nearly impossible to tell if a person used
the same password on multiple systems
UNIX Implementation
• Original scheme
– 8 character password form 56-bit key
– 12-bit salt used to modify DES encryption into a
one-way hash function
– output translated to 11 character sequence
• Now regarded as woefully insecure
– e.g. supercomputer, 50 million tests, 80 min
• Sometimes still used for compatibility
Improved implementations
• Have other, stronger, hash/salt variants
• Many systems now use MD5
– with 48-bit salt
– password length is unlimited
– is hashed with 1000 times inner loop
– produces 128-bit hash
• OpenBSD uses Blowfish block cipher based
and hash algorithm called Bcrypt
– uses 128-bit salt to create 192-bit hash value
Password Cracking
• Dictionary attacks
– Develop a large dictionary of possible passwords and
try each against the password file
– Each password must be hashed using each salt value
and then compared to stored hash values
• Rainbow table attacks
– Pre-compute tables of hash values for all salts
– A mammoth table of hash values
– Can be countered by using a sufficiently large salt
value and a sufficiently large hash length
– not feasible if larger salt values used
Password choices/concerns
• users may pick short passwords
– e.g. 3% were 3 chars or less, easily guessed
– system can reject choices that are too short
• users may pick guessable passwords
– so crackers use lists of likely passwords
– e.g. one study of 14000 encrypted passwords
guessed nearly 1/4 of them
– would take about 1 hour on fastest systems to
compute all variants, and only need 1 break!
Another case study
• An analysis of passwords used by 25,000
students
• Over 10% recovered after 10^10 guesses
Password File Access Control
• Can block offline guessing attacks by denying
access to encrypted passwords
– make available only to privileged users
– often using a separate shadow password (for su
only)
• Still have vulnerabilities
– exploit O/S bug
– accident with permissions making it readable
– users with same password on other systems
– access from unprotected backup media
– sniff passwords in unprotected network traffic
Using Better Passwords
• Clearly have problems with passwords
• Goal to eliminate guessable passwords
– Still easy for user to remember
• Techniques
– user education
– computer-generated passwords
– reactive password checking (periodic checking)
– proactive password checking (at the time of
selection)
1. User education:
• Users can be told the importance of using hard-to-guess passwords.
• Provide users with guidelines for selecting strong passwords.
• Can be problematic when have a large user population.
• Because many users will simply ignore the guidelines.
2.computer-generated passwords
Poor acceptance by users.
• Random in nature, users will not remember.
3. Reactive password checking:
• System periodically runs its own password cracker to find guessable
passwords.
• The system cancels any passwords that are guessed and notifies the
user.
• Can be costly in resources to implement.
4. Proactive password checking:
• User selects own password which the system then checks to see if it is
allowable and, if not, rejects it.
Proactive Password Checking
• Rule enforcement plus user advice, e.g.
– 8+ chars, upper/lower/numeric/punctuation
– may not suffice
• Password cracker
– list of bad passwords
– time and space issues
• Markov Model
– generates guessable passwords
– hence reject any password it might generate
• Bloom Filter
– use to build table based on dictionary using hashes
– check desired password against this table
Token-based authentication
• Object user possesses to authenticate, e.g.
– memory card (magnetic stripe)
– smartcard
Memory Card
• store but do not process data
• magnetic stripe card, e.g. bank card
• electronic memory card
• used alone for physical access (e.g., hotel
rooms)
• some with password/PIN (e.g., ATMs)
• Drawbacks of memory cards include:
– need special reader
– loss of token issues
– user dissatisfaction (OK for ATM, not OK for
computer access)
Smartcard/Embosed
• credit-card like
• has own processor, memory, I/O ports
– ROM, EEPROM, RAM memory
• executes protocol to authenticate with reader/computer
– static: similar to memory cards
– dynamic: passwords created every minute; entered
manually by user or electronically
– challenge-response: computer creates a random
number; smart card provides its hash (similar to PK)
• also have USB dongles
Electronic identify cards
• An important application of smart cards
• A national e-identity (eID)
• Serves the same purpose as other national ID
cards (e.g., a driver’s licence)
– Can provide stronger proof of identity
– A German card
• Personal data, Document number, Card access number (six
digit random number), Machine readable zone (MRZ): the
password
• Uses: ePass (government use), eID (general use), eSign (can
have private key and certificate)
User authentication with eID
Biometric authentication
• Authenticate user based on one of their
physical characteristics:
– facial
– fingerprint
– hand geometry
– retinal pattern
– Iris pattern
– signature
– voice
Operation of a
biometric
system
Verification is analogous to
user login via a smart card
and a PIN
Identification is biometric info
but no IDs; system compares
with stored templates
Biometric Accuracy
• The system generates a matching score (a number) that quantifies
similarity between the input and the stored template
• Concerns: sensor noise and detection inaccuracy
• Problems of false match/false non-match
Remote User Authentication
• Authentication over network more complex
– Problems of eavesdropping, replay
• Generally use challenge-response
– user sends identity
– host responds with random number r
– user computes f(r,h(P)) and sends back
– host compares value from user with own
computed value, if match user authenticated
• Protects against a number of attacks
Protocol for a password
verification
• Similar approach
for token and
biometric
verification
Authentication Security Issues
• Client attacks: attacker attempts to achieve
user authentication without access to the
remote host
– Masquerade as a legitimate user (e.g., guess the
password or try all passwords)
– Countermeasure: strong passwords; limit number
of attempts
Authentication Security Issues
• Host attacks: attacker attacks the host where
passwords/passcodes are stored
– Countermeasure: hashing, protect password
databases
Authentication Security Issues
• Eavesdropping: attacker attempts to learn
passwords by observing the user, finding
written passwords, keylogging
– Countermeasures
• diligence to keep passwords
• multifactor authentication
• admin revoke compromised passwords
Authentication Security Issues
• Replay: attacker repeats a previously captured
user response
– Countermeasure
• Challenge-response
• 1-time passcodes
Authentication Security Issues
• eavesdropping
• replay
• trojan horse
Authentication Security Issues
• Trojan horse: an application or physical device
masquerades as an authentic application or
device
– Countermeasure: authentication of the client within a
trusted security environment
• Denial of service: attacker attempts to disable a
user authentication service (via flooding)
– Countermeasure: a multifactor authentication with a
token
Practical Application
Summary
• Introduced user authentication
– using passwords
– using tokens
– using biometrics
• Remote user authentication issues
• Example application and case study