Chapter 3
Chapter 3
User Authentication
RFC 2828
RFC 2828 defines user
authentication as:
“The process of verifying an identity claimed by
or for a system entity.”
Authentication Process
fundamental building identification step
presenting an
block and primary identifier to the
line of defense security system
verification step
basis for access presenting or
generating
control and user authentication
accountability information that
corroborates the
binding between
the entity and
the identifier
User
Authentication
the four means of
authenticating user identity
are based on:
somethin somethin somethin somethin
g the g the g the g the
individual individual individual individual
knows possesses is (static does
• password, (token) biometric (dynamic
PIN, • smartcard, s) biometric
answers to electronic • fingerprint s)
prearrange keycard, , retina, • voice
d physical face pattern,
questions key
handwritin
g, typing
rhythm
Password
Authentication
widely used line of defense against
intruders
user provides name/login and password
system compares password with the one
stored for that specified login
the user ID:
determines that the user is authorized to
access the system
determines the user’s privileges
is used in discretionary access control
Password
Vulnerabilities
passwor
offline d electron
guessin workstati
dictiona ic
g on
ry against hijacking monitori
attack single ng
user
exploiti
specific popular exploitin ng
account password g user multiple
attack attack mistakes passwor
d use
Countermeasures
controls to prevent unauthorized access to
password file
intrusion detection measures
rapid reissuance of compromised passwords
account lockout mechanisms
policies to inhibit users from selecting
common passwords
training in and enforcement of password
policies
automatic workstation logout
Use of
Hashed
Passwor
ds
UNIX Implementation
original scheme
• up to eight printable
characters in length
• 12-bit salt used to modify DES
encryption into a one-way hash
function
• zero value repeatedly
encrypted 25 times
• output translated to 11
character sequence
now regarded as
inadequate
• still often required for
compatibility with existing
account management software
or multivendor environments
Improved
Implementations
OpenBSD uses
Blowfish block
cipher based hash
algorithm called
Bcrypt
• most secure version of
much stronger Unix hash/salt scheme
• uses 128-bit salt to
hash/salt schemes create 192-bit hash
available for Unix value
recommended
hash function is
based on MD5
• salt of up to 48-bits
• password length is
unlimited
• produces 128-bit hash
• uses an inner loop with
1000 iterations to
achieve slowdown
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
Table 3.1
Observed Password Lengths
Table 3.2
Passwords
Cracked
from a
Sample Set
of 13,797
Accounts
*Computed as the number of
matches divided by the search
size. The more words that need
to be tested for a match, the
lower the cost/benefit ratio.
Password File Access
Control
can block offline guessing attacks by
denying access to encrypted passwords
make
available
only to
vulnerabilities
privileged
users
weakness accident users
shadow sniff
in the OS with with access
password password
that permissio same from
file s in
allows ns password backup
• a separate network
access to making it on other media
file from the traffic
user IDs the file readable systems
where the
hashed
passwords
are kept
Password Selection Techniques
user education
users can be told the importance of using hard to guess passwords and can be provided with guidelines
for selecting strong passwords
computer generated passwords
users have trouble remembering them
reactive password checking
system periodically runs its own password cracker to find guessable passwords
proactive password checking
user is allowed to select their own password, goal is to eliminate guessable passwords while
however the system checks to see if the password allowing the user to select a password that is
is allowable, and if not, rejects it memorable
Proactive Password
Checking
rule
password enforcement
cracker • specific rules
• compile a large that passwords
dictionary of must adhere to
passwords not
to use
Bloom filter
• used to build a
table based on
dictionary using
hashes
• check desired
password
against this
table
Table 3.3
Types of Cards Used as Tokens
Memory Cards
can store but do not process data
the most common is the magnetic stripe card
can include an internal electronic memory
can be used alone for physical access
hotel room
ATM
provides significantly greater security when
combined with a password or PIN
drawbacks of memory cards include:
requires a special reader
loss of token
user dissatisfaction
Smartcard
physical characteristics:
include an embedded microprocessor
a smart token that looks like a bank card
can look like calculators, keys, small portable
objects
interface:
manual interfaces include a keypad and display
for interaction
electronic interfaces communicate with a
compatible reader/writer
authentication protocol:
classified into three categories: static, dynamic
Figure 3.3
Smart Card Dimensions
The smart card chip is embedded into the
plastic card and is not visible. The dimensions
conform to ISO standard 7816-2.
Figure 3.4
Communication
Initialization
between
a Smart Card and a
Reader
Figure 3.4 Communication Initialization
between a Smart Card and a Reader
Source: Based on [TUNS06].
Biometric
Authentication
attempts to authenticate an individual based
on unique physical characteristics
based on pattern recognition
is technically complex and expensive when
compared to passwords and tokens
physical characteristics used include:
facial characteristics
fingerprints
hand geometry
retinal pattern
iris
signature
Figure 3.5
Cost Versus Accuracy
Figure 3.6
Operation
of a
Biometric
System
Figure 3.6 A Generic Biometric System Enrollment creates an
association between a user and the user’s biometric characteristics.
Depending on the application, user authentication either involves verifying
that a claimed user is the actual user or identifying an unknown user.
Biometric Accuracy
Biometric Measurement
Operating
Characteristic Curves
Actual Biometric Measurement Operating Characteristic Curve s
Remote User
Authentication
authentication over a network, the Internet,
or a communications link is more complex
additional security threats such as:
eavesdropping, capturing a password, replaying
an authentication sequence that has been
observed
generally rely on some form of a challenge-
response protocol to counter threats
Figure 3.10a
Password Protocol
user transmits identity
to remote host
host generates a
random number
(nonce)
nonce is returned to
the user
host stores a hash
code of the password
Example of a function in which the
challenge-response password hash is one
protocol of the arguments
use of a random
number helps defend
Figure 3.10b
Token Protocol
user transmits
identity to the remote
host
host returns a
random number and
identifiers
token either stores a
static passcode or
generates a one-time
random passcode Example of a
user activates
token protocol
passcode by entering
a password
password is shared
Figure 3.10c
Static Biometric Protocol
user transmits an ID to
the host
host responds with a
random number and
the identifier for an
encryption
client system controls
biometric device on
user side
host decrypts
Example of a
incoming message and
static biometric compares these to
protocol locally stored values
host provides
authentication by
Figure 3.10d
Dynamic Biometric Protocol
host provides a random
sequence and a random
number as a challenge Example of a
sequence challenge is a dynamic biometric
sequence of numbers, protocol
characters, or words
user at client end must
then vocalize, type, or
write the sequence to
generate a biometric
signal
the client side encrypts
the biometric signal
and the random number
host decrypts message
and generates a
Table 3.4
Potential Attacks,
Susceptible
Authenticators,
and Typical
Defenses
eavesdropping
adversary
attempts to learn
the password by
denial-of- some sort of
attack that host attacks
service involves the directed at the
physical proximity user file at the
attempts to of user and host where
disable a user adversary passwords, token
authentication passcodes, or
biometric
service by flooding
the service with
numerous
Authenticat templates are
stored
authentication
attempts
ion
Trojan horse
Security
an
application or
Issues replay
adversary
physical device client attacks repeats a
masquerades as adversary previously
an authentic attempts to captured user
application or achieve user response
device for the authentication
purpose of without access to
capturing a user the remote host
password, or the
passcode, or intervening
biometric communications
path
Practical
Application:
Iris Biometric
System
Case Study:
ATM Security
Problems
Summary
four means of authenticating password selection strategies
a user’s identity user education
something the individual computer generated passwords
knows reactive password checking
something the individual proactive password checking
possesses Bloom filter
something the individual is
something the individual token based authentication
does memory cards
vulnerability of passwords smart cards
offline dictionary attack biometric authentication
specific account attack remote user authentication
popular password attack password protocol
password guessing against token protocol
single user static biometric protocol
workstation hijacking dynamic biometric protocol
exploiting user mistakes
exploiting multiple password
use
electronic monitoring
hashed password and salt
value