Computer Security DD2395 http://www.csc.kth.se/utbildning/kth/kurser/DD2395/dasak10/ Fall 2010 Sonja Buchegger buc@kth.se Lecture 3 User Authentication KTH DD2395 Sonja Buchegger 1
User Authentication KTH DD2395 Sonja Buchegger 2
User Authentication  fundamental security building block - basis of access control & user accountability  is the process of verifying an identity claimed by or for a system entity  has two steps: - identification - specify identifier - verification - bind entity (person) and identifier  distinct from message authentication KTH DD2395 Sonja Buchegger 3
Means of User Authentication  four means of authenticating user's identity  based one something the individual - knows - e.g. password, PIN - possesses - e.g. key, token, smartcard - is (static biometrics) - e.g. fingerprint, retina - does (dynamic biometrics) - e.g. voice, sign  can use alone or combined  all can provide user authentication  all have issues KTH DD2395 Sonja Buchegger 4
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 KTH DD2395 Sonja Buchegger 5
Password Vulnerabilities  offline dictionary attack  specific account attack  popular password attack  password guessing against single user  workstation hijacking  exploiting user mistakes  exploiting multiple password use  electronic monitoring KTH DD2395 Sonja Buchegger 6
Countermeasures  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 KTH DD2395 Sonja Buchegger 7
Use of Hashed Passwords KTH DD2395 Sonja Buchegger 8
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 - 0 value repeatedly encrypted 25 times - output translated to 11 character sequence  now regarded as woefully insecure - e.g. supercomputer, 50 million tests, 80 min  sometimes still used for compatibility KTH DD2395 Sonja Buchegger 9
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 hash algorithm called Bcrypt - uses 128-bit salt to create 192-bit hash value KTH DD2395 Sonja Buchegger 10
Password Cracking  dictionary attacks - try each word then obvious variants in large dictionary against hash in password file  rainbow table attacks - precompute tables of hash values for all salts - a mammoth table of hash values - e.g. 1.4GB table cracks 99.9% of alphanumeric Windows passwords in 13.8 secs - not feasible if larger salt values used KTH DD2395 Sonja Buchegger 11
Password Choices  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! KTH DD2395 Sonja Buchegger 12
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 file  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 KTH DD2395 Sonja Buchegger 13
Using Better Passwords  clearly have problems with passwords  goal to eliminate guessable passwords  whilst still easy for user to remember  techniques: - user education - computer-generated passwords - reactive password checking - proactive password checking KTH DD2395 Sonja Buchegger 14
Proactive Password Checking  rule enforcement plus user advice, e.g. - 8+ chars, upper/lower/numeric/punctuation - may not suffice  password cracker - 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 KTH DD2395 Sonja Buchegger 15
Token Authentication  object user possesses to authenticate, e.g. - embossed card - magnetic stripe card - memory card - smartcard KTH DD2395 Sonja Buchegger 16
Memory Card  store but do not process data  magnetic stripe card, e.g. bank card  electronic memory card  used alone for physical access  with password/PIN for computer use  drawbacks of memory cards include: - need special reader - loss of token issues - user dissatisfaction KTH DD2395 Sonja Buchegger 17
Smartcard  credit-card like  has own processor, memory, I/O ports - wired or wireless access by reader - may have crypto co-processor - ROM, EEPROM, RAM memory  executes protocol to authenticate with reader/ computer  also have USB dongles KTH DD2395 Sonja Buchegger 18
Biometric Authentication  authenticate user based on one of their physical characteristics KTH DD2395 Sonja Buchegger 19
Operation of a Biometric System KTH DD2395 Sonja Buchegger 20
Biometric Accuracy  never get identical templates  problems of false match / false non-match KTH DD2395 Sonja Buchegger 21
Biometric Accuracy  can plot characteristic curve  pick threshold balancing error rates KTH DD2395 Sonja Buchegger 22
Remote User Authentication  authentication over network more complex - problems of eavesdropping, replay  generally use challenge-response - user sends identity - host responds with random number - 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 KTH DD2395 Sonja Buchegger 23
Authentication Security Issues  client attacks  host attacks  eavesdropping  replay  trojan horse  denial-of-service KTH DD2395 Sonja Buchegger 24
Practical Application KTH DD2395 Sonja Buchegger 25
Case Study: ATM Security KTH DD2395 Sonja Buchegger 26
Summary  introduced user authentication - using passwords - using tokens - using biometrics  remote user authentication issues  example application and case study KTH DD2395 Sonja Buchegger 27
Recommend
More recommend