Computer Security and Privacy (CS642)
User Authentication
Earlence Fernandes earlence@cs.wisc.edu
User Authentication Earlence Fernandes earlence@cs.wisc.edu Admin - - PowerPoint PPT Presentation
Computer Security and Privacy (CS642) User Authentication Earlence Fernandes earlence@cs.wisc.edu Admin Homework 1 is out: start doing it Talk to TAs to figure out any setup issues You may discuss high- level ideas but DONT
Computer Security and Privacy (CS642)
Earlence Fernandes earlence@cs.wisc.edu
3
What you know What you are What you have
Passwords, PINs, passphrases, life questions Fingerprints, iris scan, hand geometry, heartbeat Smartcard, email, mobile phone, RSA keys,
5
Inception of passwords … and password breached Massive password leaks
Watchword (~100 BC) Time- sharing system (1961) First password breach (1962) Unix Crypt (salted pw) (1974) Password Cracking (1980s) Morris- Thompson (1979) Yahoo (~3bn) (2013 & 2014) RockYou leak (32mn) (2009) BreachCompilation (1.4bn) (2018)
Dictionary-based attacks
Bcrypt
(1999)
Scrypt
(2016)
Bob
6
Register passw92
Okay
Username Password Bob
passw92
Username Password Bob
passw92
Bob
7
passw92 Login passw92 passw92 ?
Success
Username Password Bob
passw92
Bob
8
Login passw92
Success
passive adversary
adversary (smash-and- grab adv.)
Impersonation attack
Attacker’s Goal:
9
an account: query budget (q)
10
11
12
Username Password Bob
passw92
Alice
SecurePass
Hugh
Hugh12
Rahul
passw92
Sujay
$uj@y
Username Password Bob 17c92aa7c53529c Alice aa6860ecf06be Hugh d4e9761f93739d Rahul 17c92aa7c53529c Sujay 13369d0403c711
Hash Jus ust t hashing is is not
password
michael abc123 123123 letmein football monkey dragon 111111 12345 loveyou 1234567890 qwerty 1234567 password 123456
Popularity
13 0acf4539a1 e99a18c428 4297f44b13 0d107d09f5 37b4e2d829 d0763edaa9 8621ffdbc5 96e7921896 827ccb0eea f74a10e1d6 e807f1fcf8 d8578edf84 fcea920f74 5f4dcc3b5a e10adc3949
Frequency in the database
Matching Problem
From previous password leaks
14
15
h = H(pw + sa) h = H(pw + sa + pepper)
16
Username Salt Password Bob 70af7d6c23 4699ce4e7b1dac7d Alice 17a7dc97de 74418729b9f206e7 Hugh 6d7d52cba3 22fa3a5288aa1bb5 Rahul 2ef7d06331 1b34a1b436fc21da Sujay 884948ef85 1fc13443a0b77b0b
Per user random values A global value stored separately from the database
65db2ad3f98db40 Pepper:
If pepper is long and not stolen, brute-force cracking is not possible
password files that get leaked
EACH password entry
17
18
123456 password 12345 1234567890 letmein loveyou password1 qwerty qwerty1 Password hereyougo michael something random Hash all possible passwords of certain length and see if the hash output matches with the hash value present in the database
2.7 billion records
~1 Giga SHA hashes/sec / GPU (=10^9 hashes/sec)
alpha-numeric passwords? (526/109 < 20 sec)
19
import hashlib hashlib.pbkdf2_hmac? Docstring: pbkdf2_hmac(hash_name, password, salt, iterations, dklen=None) -> key
20
No need to worry how to concatenate the salt Remember HMAC ? e.g., 1,000,000
21
hashlib.scrypt? Signature: hashlib.scrypt(password, salt, …, maxmem, dklen=64)
much memory
22
Specify how much memory is required to compute the hash
24
25
25 93 207
Florencio & Herley '07 Dashlane '15 Estimate '20
26
and many more…
27
Store all passwords in the password manager and encrypt using the master password.
28
29
Login passw92
Bob
Login passw92
facebook.com google.com
Bob
passw92 Login
30
[Verizon data breach report, 2018]
31
What you know What you have
1. Stops automated password guessing attacks (including credential stuffing attacks) 2. Protect against remote attacker/online adversary; Study suggests stops ~90% of attacks But, usability burden!
https://krebsonsecurity.com/ tag/sim-swapping/
secret
33
3 6
37
Biometric Fingerprint Architecture for Home Security System, Siswanto et al., 2016
38
Physiological
Face print Iris code Fingerprint DNA Hand geometry Ear geometry Body temperature Heartbeat
Behavioral
Keystroke dynamics Signature Voice print Gait
39
https://www.cse.msu.edu/~rossarun/pubs/RossBioIntro_CSVT2004.pdf
Nothing about secrecy?
points
40
Source: http://onin.com/fp/fphistory.html
41
42
Image acquisition Image processing Minutiae extraction 𝑔 = { 𝑦1, 𝑧1, 𝜄1 , (𝑦2, 𝑧2, 𝜄2), … (𝑦𝑜, 𝑧𝑜, 𝜄𝑜)} Store 𝑔 in the database with the username (𝑣) Optical, Capacitive, Ultrasound sensors to read fingerprint
43
probe
template
44
45
be matched with other fingerprints in a dataset.
46
47
48
Passwords are
hundreds of accounts
Bio iometrics
Use hard-tokens: what you have type authentication
50
Registration Login
Source: https://fidoalliance.org/how-fido-works/
Fast Identity Online
51
What you know What you are What you have
(confidence is low)
Problem
, user- agent, mouse movement, maybe browser fingerprinting
52
53