CH03 Authentication BAYAN
CH03 Authentication BAYAN
User Authentication
NIST SP 800-63-3 (Digital Authentication
Guideline, October 2016) defines digital user
authentication as:
Assurance
• There are Level
three
separate Potential
concepts: impact
Areas of
risk
Assurance Level
credential that
refers to his or her Level 3
• High confidence in the asserted
identity The degree of confidence
that the individual who
identity's validity
Level 2: Some confidence in the asserted identity’s validity. Level 2 credentials are appropriate for a wide range of
business with the public where organizations require an initial identity assertion (the details of which are verified
independently prior to any action). At this level, some sort of secure authentication protocol needs to be used, together
with one of the means of authentication summarized previously and discussed in subsequent sections.
Level 3: High confidence in the asserted identity’s validity. This level is appropriate to enable clients or employees to
access restricted services of high value but not the highest value. An example for which this level is appropriate:
• A patent attorney electronically submits confidential patent information to the U.S. Patent and Trademark Office.
Improper disclosure would give competitors a competitive advantage. Techniques that would need to be used at
this level require more than one factor of authentication; that is, at least two independent authentication
techniques must be used.
Level 4: Very high confidence in the asserted identity’s validity. This level is appropriate to enable clients or employees
to access restricted services of very high value or for which improper access is very harmful. For example, a law
enforcement official accesses a law enforcement database containing criminal records. Unauthorized access could
raise privacy issues and/or compromise investigations. Typically, level 4 authentication requires the use of multiple
factors as well as in-person registration.
Potential Impact
• FIPS 199 defines three levels of potential impact on
organizations or individuals should there be a breach
of security:
– Low
• An authentication error could be expected to have a limited
adverse effect on organizational operations, organizational assets,
or individuals
– Moderate
• An authentication error could be expected to have a serious
adverse effect
– High
• An authentication error could be expected to have a severe or
catastrophic adverse effect
Combined Severity Scale
• The table indicates that if the potential impact is low, an assurance level of 1 is
adequate. If the potential impact is moderate, an assurance level of 2 or 3 should
be achieved. And if the potential impact is high, an assurance level of 4 should
be implemented.
• Similar analysis can be performed for the other categories shown in the table.
The analyst can then pick an assurance level such that it meets or exceeds the
requirements for assurance in each of the categories listed in the table. So, for
example, for a given system, if any of the impact categories has a potential
impact of high, or if the personal safety category has a potential impact of
moderate or high, then level 4 assurance should be implemented.
1. Password-Based Authentication
Something you know
Offline Password
guessing Workstation Electronic
dictionary against hijacking monitoring
attack single user
Exploiting
Specific Popular Exploiting
multiple
account password user
password
attack attack mistakes
use
Password Vulnerabilities
We can identify the following attack strategies:
• Offline dictionary attack: Typically, strong access controls are used to protect the system’s password file.
However, experience shows that determined hackers can frequently bypass such controls and gain access to the
file. The attacker obtains the system password file and compares the password hashes against hashes of
commonly used passwords. If a match is found, the attacker can gain access by that ID/password combination.
Countermeasures include controls to prevent unauthorized access to the password file, intrusion detection
measures to identify a compromise, and rapid reissuance of passwords should the password file be
compromised.
• Specific account attack: The attacker targets a specific account and submits password guesses until the
correct password is discovered. The standard countermeasure is an account lockout mechanism, which locks out
access to the account after a number of failed login attempts. Typical practice is no more than five access
attempts.
• Popular password attack: A variation of the preceding attack is to use a popular password and try it against
a wide range of user IDs. A user’s tendency is to choose a password that is easily remembered; this
unfortunately makes the password easy to guess. Countermeasures include policies to inhibit the selection by
users of common passwords and scanning the IP addresses of authentication requests and client cookies for
submission patterns.
Password Vulnerabilities
Password guessing against single user: The attacker attempts to gain knowledge about the account holder and system password
policies and uses that knowledge to guess the password. Countermeasures include training in and enforcement of password policies
that make passwords difficult to guess. Such policies address the secrecy, minimum length of the password, character set,
prohibition against using well-known user identifiers, and length of time before the password must be changed.
Workstation hijacking: The attacker waits until a logged-in workstation is unattended. The standard countermeasure is
automatically logging the workstation out after a period of inactivity . Intrusion detection schemes can be used to detect changes in
user behavior.
Exploiting user mistakes: If the system assigns a password, then the user is more likely to write it down because it is difficult to
remember. This situation creates the potential for an adversary to read the written password. A user may intentionally share a
password, to enable a colleague to share files, for example. Also, attackers are frequently successful in obtaining passwords by
using social engineering tactics that trick the user or an account manager into revealing a password. Many computer systems are
shipped with preconfigured passwords for system administrators. Unless these preconfigured passwords are changed, they are
easily guessed. Countermeasures include user training, intrusion detection, and simpler passwords combined with another
authentication mechanism.
Exploiting multiple password use. Attacks can also become much more effective or damaging if different network devices share
the same or a similar password for a given user. Countermeasures include a policy that forbids the same or similar password on
particular network devices.
Electronic monitoring: If a password is communicated across a network to log on to a remote system, it is vulnerable to
eavesdropping. Simple encryption will not fix this problem, because the encrypted password is, in effect, the password and can be
observed and reused by an adversary.
A widely used password The Use of Hashed Passwords When a user attempts to log on to a
UNIX system, the user provides an ID
security technique is the use of
hashed passwords and a salt and a password (Figure 3.3b). The
value. This scheme is found on operating system uses the ID to index
virtually all UNIX variants as into the password file and retrieve the
well as on a number of other plaintext salt and the encrypted password.
operating systems. The salt and user-supplied password are
used as input to the encryption routine. If
The following procedure is the result
employed (Figure 3.3a). To load matches the stored value, the password is
a new password into the accepted.
system, the user selects or is
assigned a password. This The salt serves three purposes:
password is combined with a
fixed-length salt value. In older • It prevents duplicate passwords from
implementations, this value is being visible in the password file. Even if
related to the time at which the two users choose the same password,
password is assigned to the those passwords will be assigned
user. Newer implementations different salt values. Hence, the hashed
use a pseudorandom or random passwords of the two users will differ.
number. The password and salt
serve as inputs to a hashing • It greatly increases the difficulty of
algorithm to produce a fixed- offline dictionary attacks. For a salt of
length hash code. The hash length b bits, the number of possible
algorithm is designed to be slow passwords is increased by a factor of 2 b,
to execute in order to thwart increasing the difficulty of guessing a
attacks. password in a dictionary attack.
The hashed password is then
stored, together with a plaintext • It becomes nearly impossible to find out
copy of the salt, in the password whether a person with passwords on
file for the corresponding user two or more systems has used the same
ID. The hashed password password on all of them.
method has been shown to be
secure against a variety of
cryptanalytic attacks.
The Use of Hashed Passwords
• To see the second point, consider the way that an offline dictionary attack would work.
The attacker obtains a copy of the password file. Suppose first that the salt is not used.
The attacker’s goal is to guess a single password. To that end, the attacker submits a large
number of likely passwords to the hashing function. If any of the guesses matches one of
the hashes in the file, then the attacker has found a password that is in the file. But faced
with the UNIX scheme, the attacker must take each guess and submit it to the hash
function once for each salt value in the dictionary file, multiplying the number of guesses
that must be checked.
Make
available
only to
Vulnerabilities
privileged
users
• Password checker
• Compile a large dictionary of passwords not to use. When a user selects a password, the
system checks to make sure that it is not on the disapproved list
• -ve: space to store large and time: will be large to search large dictionary
• Bloom filter
– Used to build a table based on hash values
– Check desired password against this table
2. Token Based Authentication
Something you have
Objects that a user possesses for the purpose of user authentication are called
tokens.
• Electronic interface
o A smart card or other token requires an electronic interface to communicate
with a compatible reader/writer
o Contact (insert in card reader with a direct connection) and contactless
interfaces (requires only close proximity to a reader)
Smart Tokens
The purpose of a smart token is to provide a means for user authentication.
The authentication protocols used with smart tokens are classified into
three categories:
1. Static Protocol
• the user authenticates himself or herself to the token and then the token
authenticates the user to the computer.
2. Dynamic password generator Protocol
• The token generates a unique password periodically (e.g., every minute). This
password is then entered into the computer system for authentication, either
manually by the user or electronically via the token.
• The token and the computer system must be initialized and kept synchronized so
that the computer knows the password that is current for this token .
3. Challenge-response Protocol
• The computer system generates a challenge, such as a random string of numbers. The
smart token generates a response based on the challenge. For example, public-key
cryptography could be used and the token could encrypt the challenge string with the
token’s private key.
2.1 Smart Cards
• The Most important category of smart token is the smart card which:
o Has the appearance of a credit card
o Has an electronic interface
o May use any of the smart token protocols
• The Smart Card Contains:
o An entire microprocessor
• Processor
• Memory
• I/O ports
o Some versions incorporate a special co-processing circuit for cryptographic operation to
speed the task of encoding and decoding messages or generating digital signatures to
validate the information transferred.
• A smart card typically include three types of memory:
o Read-only memory (ROM)
• Stores data that does not change during the card’s life (such as: card number, holder name)
o Electrically erasable programmable ROM (EEPROM)
• Holds application data and programs (such as protocol that card execute, any data that may
vary within time, in a telephone card, time remaining of a talk)
o Random access memory (RAM)
• Holds temporary data generated when applications are executed
3. Biometric Authentication
Something You are
• 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:
o Facial characteristics
o Fingerprints
o Hand geometry
o Retinal pattern
o Iris
o Signature
o Voice
The system must determine how closely a presented biometric
characteristic matches a stored characteristic
Enrolment: Similar to assign a pswd
to a suer
Table 3.5
Client attacks are those in which an adversary attempts to achieve user authentication without access to the
remote host or to the intervening communications path. The adversary attempts to masquerade as a legitimate
user.
For a password- based system, the adversary may attempt to guess the likely user password.
Multiple guesses may be made. At the extreme, the adversary sequences through all possible passwords in an
exhaustive attempt to succeed.
One way to thwart such an attack is to select a password that is both lengthy and unpredictable. In effect, such a
password has large entropy; that is, many bits are required to represent the password. Another countermeasure
is to limit the number of attempts that can be made in a given time period from a given source.
A token can generate a high-entropy passcode from a low-entropy PIN or password, thwarting exhaustive
searches. The adversary may be able to guess or acquire the PIN or password but must additionally acquire the
physical token to succeed.
Host attacks are directed at the user file at the host where passwords, token passcodes, or biometric templates
are stored. Section 3.2 discusses the security considerations with respect to passwords.
For tokens, there is the additional defense of using one-time passcodes, so that passcodes are not stored in a
host passcode file. Biometric features of a user are difficult to secure because they are physical features of the
user. For a static feature, biometric device authentication adds a measure of protection. For a dynamic feature, a
challenge-response protocol enhances security.
Security Issue for User Authentication