Measuring password strength by simulating password-cracking - - PowerPoint PPT Presentation

measuring password strength by
SMART_READER_LITE
LIVE PREVIEW

Measuring password strength by simulating password-cracking - - PowerPoint PPT Presentation

Guess again (and again and again): Measuring password strength by simulating password-cracking algorithms Saranga Komanduri Patrick Gage Kelley, Michelle L. Mazurek, Richard Shay, Tim Vidas, Lujo Bauer, Nicolas Christin, Lorrie Faith Cranor,


slide-1
SLIDE 1

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 1

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/

Guess again (and again and again): Measuring password strength by simulating password-cracking algorithms

Saranga Komanduri Patrick Gage Kelley, Michelle L. Mazurek, Richard Shay, Tim Vidas, Lujo Bauer, Nicolas Christin, Lorrie Faith Cranor, and Julio López

slide-2
SLIDE 2

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 2

Recent Data Breaches

Affected users

Gawker 1,300,000 Sony 25,000,000 Battlefield Heroes 550,000 Sega 1,300,000 Booz Allen Hamilton 90,000 Bloggtoppen 90,000 Valve 700,000

slide-3
SLIDE 3

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 3

“The passwords are stored encrypted, but with enough effort and depending on the quality of the password, they can be

  • cracked. This, I'm afraid, is a serious threat;

it means that anyone who uses the same email/password on other systems is now vulnerable to a malicious attacker using that information to access their account.”

Jeremy White, CEO of Codeweavers October 2011

slide-4
SLIDE 4

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 4

Threat Model

Offline Attack

  • Attacker has password file
  • Needs to guess passwords to crack them
slide-5
SLIDE 5

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 5

Threat Model

Offline Attack

  • Attacker has password file
  • Needs to guess passwords to crack them
  • Attacker can make many guesses
  • Smart guessing strategy
slide-6
SLIDE 6

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 6

Guessing Strategy

Dumb attacker aaaaaaaa aaaaaaab aaaaaaac aaaaaaad aaaaaaae … Smart attacker 123456789 password iloveyou princess 12345678 …

Smart attacker uses data to crack passwords more quickly

slide-7
SLIDE 7

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 7

Threat Model

Offline Attack

  • Attacker has password file
  • Needs to guess passwords to crack them
  • Attacker can make many guesses
  • Smart guessing strategy
slide-8
SLIDE 8

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 8

Password-composition Policies

  • Intended to make passwords harder to guess
slide-9
SLIDE 9

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 9

Password-composition Policies

slide-10
SLIDE 10
slide-11
SLIDE 11

Existing Guidance

slide-12
SLIDE 12

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 12

Existing Guidance

  • NIST guide not based on empirical evidence
  • No empirical data on user behavior
slide-13
SLIDE 13

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 13

Password-composition Policies

  • Users can struggle to create and remember

complex passwords [Zviran & Haga 1999, Procter et al.

2002, Yan et al. 2004, Vu et al. 2007, and many others…]

  • Security can suffer if usability is poor

[Sasse et al. 2001, and many others…]

slide-14
SLIDE 14

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 14

Contributions

  • Measured guessability across seven password-

composition policies

– Threat model: offline attack

  • Studied the impact of tuning and data selection
  • n policy evaluation
  • Compare security metrics across policies

– Correlate security with usability

slide-15
SLIDE 15

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 15

Policy Metrics

  • Guessability

– Measure of how easy it is to guess passwords

  • Estimated entropy [Our previous work 2010]

NIST “entropy” [NIST SP 800-63] Usability [CHI 2011]

– Login failures – Reported sentiment – Writing down

slide-16
SLIDE 16

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 16

Policy Metrics

  • Guessability

– Measure of how easy it is to guess passwords

  • Estimated entropy [Our previous work 2010]
  • NIST entropy [NIST SP 800-63]
  • Usability [Our previous work 2011]

– Login failures – Reported sentiment – Writing down

slide-17
SLIDE 17

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 17

Guessability

  • Measure of password strength

Stronger = less guessable

  • Guess number: The number of attempts

needed to guess a password

slide-18
SLIDE 18

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 18

Guessability

Bob’s password

iloveyou

Attacker’s guesses

1 123456789 2 password 3 iloveyou 4 princess …

slide-19
SLIDE 19

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 19

Guessability

Bob’s password

iloveyou

Attacker’s guesses

1 123456789 2 password 3 iloveyou 4 princess …

Guess number

3

slide-20
SLIDE 20

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 20

Measuring Guessability

password abcdefgh password17 aceofbase A long time hashed passwords password- guessing tool

Traditional approach: Run cracking tool

slide-21
SLIDE 21

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 21

Offline Attack Speed

Single-core CPU 1,500 130,000,000 2,200,000,000 Mid-level GPU 34,000,000,000 guesses/s sha512 guesses/day sha512 guesses/day md5 guesses/day md5

Source: John the Ripper Test Mode and Wiki (openwall.info)

slide-22
SLIDE 22

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 22

password: 2 abcdefgh: 19546 password17: 1.4106 aceofbase: 3104 jnfksl834df: never

Measuring Guessability

Our approach: Calculate guess numbers directly

password abcdefgh password17 aceofbase jnfksl834df plaintext passwords password- guessing calculator

slide-23
SLIDE 23

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 23

Threat Model

  • Offline attacker that can make a huge number
  • f guesses

– This paper: 50 trillion (5 x 1013) guesses on each password

  • 25,000 CPU days with MD5 hashes
slide-24
SLIDE 24

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 24

Selecting an Attacker

  • John the Ripper
  • Markov model [Narayanan and Shmatikov 2005]
  • Weir’s probabilistic context-free grammar [Weir

et al. 2009]

slide-25
SLIDE 25

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 25

Selecting an Attacker

  • John the Ripper
  • Markov model [Narayanan and Shmatikov 2005]
  • Weir’s probabilistic context-free grammar

– Performed best – Previous work found similar result [Weir et al. 2010,

Zhang et al. 2010]

slide-26
SLIDE 26

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 26

Training Data

  • Leaked datasets

– RockYou (32M passwords) – MySpace (47K passwords)

Dictionaries

– Openwall – Unix dictionary – Inflection list

Collected passwords

slide-27
SLIDE 27

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 27

Training Data

  • Leaked datasets

– RockYou (32M passwords) – MySpace (47K passwords)

  • Dictionaries

– Openwall (40M passwords) – Unix dictionary (235K words) – Inflection list (162K words)

  • Collected passwords (12K total passwords)
slide-28
SLIDE 28

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 28

Threat Model

  • Offline attacker that can make up to 50 trillion guesses
  • Order of guesses based on Weir’s algorithm

– Attacker learns from training data

  • Leaked data plus collected passwords
  • Attacker has limited knowledge of the target policy
slide-29
SLIDE 29

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 29

Data Collection

  • Mechanical Turk used for anonymous

recruitment and payment

– Enabled study of many participants

  • 1,000+ per condition

– Well-designed studies can produce high-quality data

[Burhmester et al. 2011]

– Workers prevented from participating multiple times – Payment: 55¢ + 70¢

slide-30
SLIDE 30

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 30

Study Design

  • Hypothetical email scenario for password

creation Steps:

  • 1. Create a password under a randomly assigned

condition

  • 2. Take a survey
  • 3. Recall password
  • 4. Return in two days
slide-31
SLIDE 31

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 31

Condition: Basic8

password

NIST estimate: 18 bits

slide-32
SLIDE 32

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 32

Condition: Dictionary8

sapsword

NIST estimate: 24 bits

slide-33
SLIDE 33

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 33

Condition: Comprehensive8

Sapsword1!

NIST estimate: 30 bits

slide-34
SLIDE 34

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 34

Condition: Basic16

passwordpassword

NIST estimate: 30 bits

slide-35
SLIDE 35

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 35

Condition: Blacklist x 3

  • Blacklists:

– Easy: 235K Unix dictionary – Medium: 40M entry cracking wordlist – Hard: 5B guesses from Weir

  • Only requirement is that candidate password

is not on a blacklist

NIST estimate: 24 bits

slide-36
SLIDE 36

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 36

Contributions

  • Measured guessability across seven password-

composition policies

– Threat model: offline attack

  • Studied the impact of tuning and test-set

selection on policy evaluation

  • Compare security metrics across policies

– Correlate security with usability

slide-37
SLIDE 37

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 37

Guessability Results – Basic8

slide-38
SLIDE 38

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 38

Guessability Results – Basic8

slide-39
SLIDE 39

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 39

Guessability Results – Basic8

slide-40
SLIDE 40

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 40

Guessability Results – Basic8

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-41
SLIDE 41

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 41

Guessability Results – Basic8

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-42
SLIDE 42

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 42

Guessability Results – Basic8

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-43
SLIDE 43

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 43

Guessability Results – Basic8

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-44
SLIDE 44

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 44

Guessability Results – Basic8

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-45
SLIDE 45

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 45

Guessability Results – Basic8

slide-46
SLIDE 46

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 46

Guessability Results

slide-47
SLIDE 47

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 47

Guessability Results

  • ne second
  • ne day

62 years

(one day with 25,000 cores)

slide-48
SLIDE 48

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 48

Guessability Results

Basic16 performs best (13%), basic8 is worst (60%)

slide-49
SLIDE 49

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 49

Guessability Results

slide-50
SLIDE 50

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 50

Guessability Results

slide-51
SLIDE 51

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 51

Contributions

  • Measured guessability across seven password-

composition policies

– Threat model: offline attack

  • Studied the impact of tuning and test-set

selection on policy evaluation

  • Compare security metrics across policies

– Correlate security with usability

slide-52
SLIDE 52

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 52

Increasing Training Data

slide-53
SLIDE 53

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 53

Increasing Training Data

# of guesses # of guesses

Basic8 does not benefit from additional data

slide-54
SLIDE 54

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 54

Increasing Training Data

# of guesses # of guesses

Target-policy passwords needed for complex policies

slide-55
SLIDE 55

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 55

Choosing the Right Test Data

Passwords created under weak policy Passwords valid under comprehensive8

Sapsword1! password 123456 qwerty letmein

slide-56
SLIDE 56

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 56

Choosing the Right Test Data

Passwords created under comprehensive8

Sapsword1! Sapsword1! password 123456 qwerty letmein

?

=

Passwords created under weak policy Passwords valid under comprehensive8

slide-57
SLIDE 57

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 57

Choosing the Right Test Data

Passwords created under the other six password-composition policies

Sapsword1! Sapsword1! password 123456 qwerty letmein

?

=

Passwords created under comprehensive8 comprehensive subset

slide-58
SLIDE 58

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 58

Choosing the Right Test Data

slide-59
SLIDE 59

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 59

Choosing the Right Test Data

Carefully choosing test passwords is critical when evaluating policies

slide-60
SLIDE 60

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 60

Contributions

  • Measured guessability across seven password-

composition policies

– Threat model: offline attack

  • Studied the impact of tuning and test-set

selection on policy evaluation

  • Compare security metrics across policies

– Correlate security with usability

slide-61
SLIDE 61

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 61

Comparing Metrics

slide-62
SLIDE 62

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 62

Comparing Metrics

slide-63
SLIDE 63

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 63

Comparing Metrics

slide-64
SLIDE 64

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 64

Comparing Metrics

slide-65
SLIDE 65

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 65

Comparing Metrics

slide-66
SLIDE 66

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 66

Comparing Metrics

slide-67
SLIDE 67

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 67

Comparing Metrics

slide-68
SLIDE 68

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 68

Comparing Metrics

slide-69
SLIDE 69

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 69

Usability - Basic16 & Comprehensive8

  • Basic16 is more usable [Our previous work 2011]

– Fewer participants wrote down password (50% vs. 33%) – Self-reported difficulty and annoyance was lower

Basic16 appears to be more secure and more usable than comprehensive8

slide-70
SLIDE 70

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 70

Conclusions

  • In some cases, more secure ≠ less usable
slide-71
SLIDE 71

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 71

Conclusions

  • In some cases, more secure ≠ less usable
  • Complex policies are tricky to analyze

– Need high-quality training data – Important to choose test data carefully

slide-72
SLIDE 72

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 72

Conclusions

  • In some cases, more secure ≠ less usable
  • Complex policies are tricky to analyze

– Need high-quality training data – Important to choose test data carefully

  • Existing guidance is not very helpful
slide-73
SLIDE 73

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 73

Cylab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/

slide-74
SLIDE 74

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 74

Questions?

slide-75
SLIDE 75

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 75

Existing Guidance

  • NIST guide not based on empirical evidence

– Provides a means of “scoring” password policies

NIST would like to obtain more data on the passwords users actually choose, but, where they have the data, system administrators are understandably reluctant to reveal password data to others. – [Burr 2006]

slide-76
SLIDE 76

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 76

Weir’s Algorithm

Presented at Oakland in 2009

  • Learns probabilities from training data
  • Generates new guesses based on likelihood
slide-77
SLIDE 77

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 77

Weir’s Algorithm [Weir et al. (Oakland) 2009]

Training data

pass#word Best!123

Learned Elements strings symbols digits

pass ⅓ # ½ 123 1 word ⅓ ! ½ best ⅓

structures

L4S1L4 ½ (UL3)S1D3 ½

slide-78
SLIDE 78

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 78

Weir’s Algorithm [Weir et al. (Oakland) 2009]

Guesses

Pass#123 ⅟12 Pass!123 ⅟12 Word#123 ⅟12 Word!123 ⅟12 Best#123 ⅟12 Best!123 ⅟12 pass#pass ⅟36 pass#word ⅟36 pass#best ⅟36 pass!pass ⅟36 pass!word ⅟36 …

Learned Elements strings symbols digits

pass ⅓ # ½ 123 1 word ⅓ ! ½ best ⅓

structures

L4S1L4 ½ (UL3)S1D3 ½

slide-79
SLIDE 79

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 79

Weir’s Algorithm [Weir et al. (Oakland) 2009]

Lookup Table

Pass#123 ⅟12 1 Pass!123 ⅟12 Word#123 ⅟12 Word!123 ⅟12 Best#123 ⅟12 Best!123 ⅟12 pass#pass ⅟36 7 pass#best ⅟36 Total guesses: 24 pass!best ⅟36 word#best ⅟36 word!best ⅟36

Learned Elements strings symbols digits

pass ⅓ # ½ 123 1 word ⅓ ! ½ best ⅓

structures

L4S1L4 ½ (UL3)S1D3 ½

slide-80
SLIDE 80

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 80

Basic8 frequencies

Five appeared twice Rest were unique N = 1000 12345678 1.3% Password 0.7% 123456789 0.6%

slide-81
SLIDE 81

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 81

Demographics

  • 1,000 participants per condition
  • 51% male, 47% female
  • Mean age: 29.8 years
  • No significant difference across conditions
  • 2,889 returned within three days of follow-up

email

slide-82
SLIDE 82

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 82

Imagine that your main email service provider has been attacked, and your account became

  • compromised. You need to create a new

password for your email account, since your old password may be known by the attackers. Because of the attack, your email service provider is also changing its password rules. Please follow the instructions below to create a new password for your email account. We will ask you to use this password in a few days to log in again so it is important that you remember your new password. Please take the steps you would normally take to remember your email password and protect this password as you normally would protect the password for your email account. Please behave as you would if this were your real password!

Hypothetical Email Scenario

slide-83
SLIDE 83

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 83

Comparing Metrics

slide-84
SLIDE 84

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 84

Basic16 vs Comprehensive8

  • Basic16 requires significantly fewer attempts

in password creation

– 53% vs 18% success on first attempt, p < 0.001 – 1.66 vs 3.35 attempts total, p < 0.001

  • Comprehensive8 participants had significantly

higher dropout rates

– 19% vs 25%, p < 0.001

slide-85
SLIDE 85

CyLab Usable Privacy and Security Laboratory http://cups.cs.cmu.edu/ 85