Access Control
Abu Sayed Md. Mostafizur Rahaman
Professor
Department of Computer Science and Engineering
Jahangirnagar University
Access Control
Two parts to access control…
Authentication: Are you who you say you are?
o Determine whether access is allowed or not
o Authenticate human to machine
o Or, possibly, machine to machine
Authorization: Are you allowed to do that?
o Once you have access, what can you do?
o Enforces limits on actions
Note: “access control” often used as synonym for authorization
Chapter 7: Authentication
Are You Who You Say You Are?
Authenticatea human to a machine?
Can be based on…
o Something you know
For example, a password
o Something you have
For example, a smartcard
o Something you are
For example, your fingerprint
Something You Know
Passwords
Lots of things act as passwords!
o PIN
o Social security number
o Mother’s maiden name
o Date of birth
o Name of your pet, etc.
Why Passwords?
Why is “something you know” more popular
than “something you have” and “something
you are”?
Cost: passwords are free
Convenience: easier for the system admin to
reset password than to issue a new smartcard
Trouble with Passwords
“Passwords are one of the biggest practical problems facing security
engineers today.”
“Humans are incapable of securely storing high-quality
cryptographic keys, and they have unacceptable speed and accuracy
when performing cryptographic operations. (They are also large,
expensive to maintain, difficult to manage, and they pollute the
environment. It is astonishing that these devices continue to be
manufactured and deployed.)”
Keys vs Passwords
Crypto
Passwords
keys Passwords are 8
Key size is 64 bits characters, and 256
Then 264 keys different characters
Then 2568 = 264 pwds
Choose a key at random…
Users do not select
…then attacker must try about 2 63 keys passwords at random
Attacker has far less than
263 pwds to try
(dictionary attack)
Good and Bad Passwords
Bad passwords
o frank Good Passwords?
o Fido o jfIej,43j-EmmL+y
o Password o 09864376537263
o incorrect
o P0kem0N
o Pikachu
o o FSa7Yago
102560
o o 0nceuP0nAt1m8
AustinStamp
o PokeGCTall150
Password Experiment
Three groups of users each group advised to select passwords
as follows
o Group A: At least 6 chars, 1 non-letter
winner o Group B: Password based on passphrase
o Group C: 8 random characters
Results
o Group A: About 30% of pwds easy to crack
o Group B: About 10% cracked
Passwords easy to remember
o Group C: About 10% cracked
Passwords hard to remember
Password Experiment
User compliance hard to achieve
In each case, 1/3rd did not comply
o And about 1/3rd of those easy to crack!
Assigned passwords sometimes best
If passwords not assigned, best advice is…
o Choose passwords based on passphrase
o Administrator should use pwd cracking tool to test for weak pwds
Require periodic password changes?
Attacks on Passwords
Attacker could…
o Target one particular account
o Target any account on system
o Target any account on any system
o Attempt denial of service (DoS) attack
Common attack path
o Outsider normal user administrator
o May only require one weak password!
Password Retry
Suppose the system locks after 3 bad passwords. How long should it
lock?
o 5 seconds
o 5 minutes
o Until SA restores service
Five second is insufficient to deter an automated attack. If it takes
more than five seconds for Trudy to make three password guesses
for every user on the system, then she could simply cycle through all
accounts, making three guesses on each.
Password Verification?
Bad idea to store passwords in a file
But we need to verify passwords
Solution? Hash passwords
o Store y = h(password)
o Can verify entered password by hashing
o If Trudy obtains the password file, she does not (directly) obtain
passwords
But Trudy can try a forward search
o Guess x and check whether y = h(x)
Dictionary Attack
Trudy pre-computes h(x) for all x in a dictionary of common
passwords
Suppose Trudy gets access to password file containing hashed
passwords
o She only needs to compare hashes to her pre-computed dictionary
o After one-time work of computing hashes in dictionary, actual attack is
trivial
Can we prevent this forward search attack? Or at least make it more
difficult?
Salt
Hash password with salt. A salt serves a similar purpose as an
initialization vector
Choose random salt s and compute
y = h(password, s)
and store (s,y) in the password file
Note that the salt s is not secret
o Analogous to IV
Still easy to verify salted password
But lots more work for Trudy
o Why? salts
Password Cracking: Do the Math
Assumptions:
Pwds are 8 chars, 128 choices per character
o Then 1288 = 256 possible passwords
There is a password file with 210 pwds
Attacker has dictionary of 220 common pwds
Probability 1/4 that password is in dictionary
Work is measured by number of hashes
Password Cracking: Case I
Attack 1 specific password without using a dictionary
o E.g., administrator’s password
o Must try 256/2 = 255 on average
o Like exhaustive key search
Does salt help in this case?
Password Cracking: Case II
Attack 1 specific password with dictionary
With salt
o Expected work: 1/4 (219) + 3/4 (255) ≈ 254.6
o In practice, try all pwds in dictionary…
o …then work is at most 220 and probability of success is 1/4
What if no salt is used?
o One-time work to compute dictionary: 220
o Expected work is of same order as above
o But with precomputed dictionary hashes, the “in practice” attack is
essentially free…
Password Cracking: Case III
Any of 1024 pwds in file, without dictionary
o Assume all 210 passwords are distinct
o Need 255 comparisons before expect to find pwd
If no salt is used
o Each computed hash yields 210 comparisons
o So expected work (hashes) is 255/210 = 245
If salt is used
o Expected work is 255
o Each comparison requires a hash computation
Password Cracking: Case IV
Any of 1024 pwds in file, with dictionary
o Prob. one or more pwd in dict.: 1 – (3/4)1024 ≈ 1
o So, we ignore case where no pwd is in dictionary
If salt is used, expected work less than 222
o See book, or slide notes for details
o Work ≈ size of dictionary / P(pwd in dictionary)
What if no salt is used?
o If dictionary hashes not precomputed, work is about 219/210 = 29
Other Password Issues
Too many passwords to remember
o Results in password reuse
o Why is this a problem?
Who suffers from bad password?
o Login password vs ATM PIN
Failure to change default passwords
Social engineering
Error logs may contain “almost” passwords
Bugs, keystroke logging, spyware, etc.
Passwords
The bottom line…
Password attacks are too easy
o Often, one weak password will break security
o Users choose bad passwords
o Social engineering attacks, etc.
Trudy has (almost) all of the advantages
All of the math favors bad guys
Passwords are a BIG security problem
o And will continue to be a problem
Password Cracking Tools
Popular password cracking tools
o Password Crackers
o Password Portal
o L0phtCrack and LC4 (Windows)
o John the Ripper (Unix)
Admins should use these tools to test for weak passwords since
attackers will
Good articles on password cracking
o Passwords - Conerstone of Computer Security
o Passwords revealed by sweet deal
Exercise
Derive two passwords from the passphrase “Gentlemen do
not read other gentlemen’s mail.”
List two passphrases, and, for each of these, give three
passwords derived from the passphrase.
What passphrase might the password PokeGCTall150 have
been derived from?
Derive two passwords from the passphrase “Gentlemen do
not read other gentlemen’s mail.”
Password 1:
9dnR09!M
Explanation:
Gentlemen (9) do not (dn) read (R) other(0) 9(gentlemen)’s (!) M(mail).
Password 2:
5mendn0tR05men-M
Explanation: Gentle (5) men (men) do (d) not (n0t) read (R) other (0)
Gentle (5) men (men) (-) M (Mail).
Derive two passwords from the passphrase “Gentlemen do
not read other gentlemen’s mail.”
Password1:
ay0Wy0Sy0A-
Explanation:
Are (a) you (y0) who (W) you (y0) say(S) you (y0) are (A) (-)
Password1:
A3W3Sy0A-
Explanation:
are (a) you (3) who (W) you (3) say (S) you (y0) are (A) (-)
What passphrase might the password PokeGCTall150 have
been derived from?
The password phrase can be “Person (P) or (o) kid (k) end
(e) Good (G) Cat (C) Tall (Tall).
Therefore, the password phrase for the given password is
“Person or kid end Good Cat Tall”.
Biometrics
Something You Are
Biometric
o “You are your key” Schneier
Examples
o Fingerprint
o Handwritten signature Are
o Facial recognition Have
Know
o Speech recognition
o Gait (walking) recognition
o “Digital doggie” (odor recognition)
o Many more!
Why Biometrics?
May be better than passwords
But, cheap and reliable biometrics needed
o Today, an active area of research
Biometrics are used in security today
o Thumbprint mouse
o Palm print for secure entry
o Fingerprint to unlock car door, etc.
But biometrics not really that popular
o Has not lived up to its promise/hype (yet?)
Ideal Biometric
Universal applies to (almost) everyone
o In reality, no biometric applies to everyone
Distinguishing distinguish with certainty
o In reality, cannot hope for 100% certainty
Permanent physical characteristic being measured never changes
o In reality, OK if it to remains valid for long time
Collectable easy to collect required data
o Depends on whether subjects are cooperative
Also, safe, user-friendly, and ???
Identification vs Authentication
Identification Who goes there?
o Compare one-to-many
o Example: FBI fingerprint database
Authentication Are you who you say you are?
o Compare one-to-one
o Example: Thumbprint mouse
Identification problem is more difficult
o More “random” matches since more comparisons
We are (mostly) interested in authentication
Enrollment vs Recognition
Enrollment phase
o Subject’s biometric info put into database
o Must carefully measure the required info
o OK if slow and repeated measurement needed
o Must be very precise
o May be a weak point in real-world use
Recognition phase
o Biometric detection, when used in practice
o Must be quick and simple
o But must be reasonably accurate
Cooperative Subjects?
Authentication cooperative subjects
Identification uncooperative subjects
For example, facial recognition
o Used in Las Vegas casinos to detect known cheaters (also, terrorists in
airports, etc.)
o Often, less than ideal enrollment conditions
o Subject will try to confuse recognition phase
Cooperative subject makes it much easier
o We are focused on authentication
o So, we can assume subjects are cooperative
Biometric Errors
Fraud rate versus insult rate
o Fraud Trudy mis-authenticated as Alice
o Insult Alice not authenticated as Alice
For any biometric, can decrease fraud or insult, but other one will
increase
For example
o 99% voiceprint match low fraud, high insult
o 30% voiceprint match high fraud, low insult
Equal error rate: rate where fraud == insult
o A way to compare different biometrics
Fingerprint History
1823 Professor Johannes Evangelist Purkinje discussed 9
fingerprint patterns
1856 Sir William Hershel used fingerprint (in India) on contracts
1880 Dr. Henry Faulds article in Nature about fingerprints for ID
1883 Mark Twain’s Life on the Mississippi (murderer ID’ed by
fingerprint)
Fingerprint History
1888 Sir Francis Galton developed classification system
o His system of “minutia” can be used today
o Also verified that fingerprints do not change
Some countries require fixed number of “points” (minutia) to match
in criminal cases
o In Britain, at least 15 points
o In US, no fixed number of points
Fingerprint Comparison
Examples of loops, whorls, and arches
Minutia extracted from these features
Loop (double) Whorl Arch
Fingerprint: Enrollment
Capture image of fingerprint
Enhance image
Identify “points”
Fingerprint:
Recognition
Extracted points are compared with
information stored in a database
Is it a statistical match?
Aside: Do identical twins’ fingerprints differ?
Hand Geometry
A popular biometric
Measures shape of hand
o Width of hand, fingers
o Length of fingers, etc.
Human hands not so unique
Hand geometry sufficient for
many situations
OK for authentication
Not useful for ID problem
Hand Geometry
Advantages
o Quick 1 minute for enrollment, 5 seconds for
recognition
o Hands are symmetric so what?
Disadvantages
o Cannot use on very young or very old
o Relatively high equal error rate
Iris Patterns
Iris pattern development is “chaotic”
Little or no genetic influence
Even for identical twins, uncorrelated
Pattern is stable through lifetime
Iris Recognition: History
1936 suggested by ophthalmologist
1980s James Bond film(s)
1986 first patent appeared
1994 John Daugman patents new-and-improved
technique
o Patents owned by Iridian Technologies
Iris Scan
Scanner locates iris
Take b/w photo
Use polar coordinates…
2-D wavelet transform
Get 256 byte iris code
Measuring Iris Similarity
Based on Hamming distance
Define d(x,y) to be
o # of non-match bits / # of bits compared
o d(0010,0101) = 3/4 and d(101111,101001) = 1/3
Compute d(x,y) on 2048-bit iris code
o Perfect match is d(x,y) = 0
o For same iris, expected distance is 0.08
o At random, expect distance of 0.50
o Accept iris scan as match if distance < 0.32
Iris Scan Error Rate
distance Fraud rate
0.29 1 in 1.31010
0.30 1 in 1.5109
0.31 1 in 1.8108
0.32 1 in 2.6107
0.33 1 in 4.0106
0.34 1 in 6.9105
0.35 1 in 1.3105
== equal error rate
distance
Attack on Iris Scan
Good photo of eye can be scanned
o Attacker could use photo of eye
Afghan woman was authenticated by
iris scan of old photo
o Story can be found here
To prevent attack, scanner could use
light to be sure it is a “live” iris
Equal Error Rate Comparison
Equal error rate (EER): fraud == insult rate
Fingerprint biometrics used in practice have EER ranging from
about 10-3 to as high as 5%
Hand geometry has EER of about 10-3
In theory, iris scan has EER of about 10-6
o Enrollment phase may be critical to accuracy
Most biometrics much worse than fingerprint!
Biometrics useful for authentication…
o …but for identification, not so impressive today
Biometrics: The Bottom Line
Biometrics are hard to forge
But attacker could
o Steal Alice’s thumb
o Photocopy Bob’s fingerprint, eye, etc.
o Subvert software, database, “trusted path” …
And how to revoke a “broken” biometric?
Biometrics are not foolproof
Biometric use is relatively limited today
That should change in the (near?) future
Something You Have
Something in your possession
Examples include following…
o Car key
o Laptop computer (or MAC address)
o Password generator (next)
o ATM card, smartcard, etc.
Password Generator
1. “I’m Alice”
3. PIN, R
2. R
4. h(K,R)
password
generator 5. h(K,R)
K Alice Bob, K
Alice receives random “challenge” R from Bob
Alice enters PIN and R in password generator
Password generator hashes symmetric key K with R
Alice sends “response” h(K,R) back to Bob
Bob verifies response
Note: Alice has pwd generator and knows PIN
2-factor Authentication
Requires any 2 out of 3 of
o Something you know
o Something you have
o Something you are
Examples
o ATM: Card and PIN
o Credit card: Card and signature
o Password generator: Device and PIN
o Smartcard with password/PIN
Single Sign-on
A hassle to enter password(s) repeatedly
o Alice would like to authenticate only once
o “Credentials” stay with Alice wherever she goes
o Subsequent authentications transparent to Alice
Kerberos a single sign-on protocol
Single sign-on for the Internet?
o Microsoft: Passport
o Everybody else: Liberty Alliance
o Security Assertion Markup Language (SAML)
Web Cookies
Cookie is provided by a Website and stored on user’s machine
Cookie indexes a database at Website
Cookies maintain state across sessions
o Web uses a stateless protocol: HTTP
o Cookies also maintain state within a session
Sorta like a single sign-on for a website
o But, very, very weak form of authentication
Cookies also create privacy concerns