fast lean and accurate modeling password guessability
play

Fast, Lean, and Accurate: Modeling Password Guessability Using - PowerPoint PPT Presentation

Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks William Melicher , Blase Ur, Sean Segreti, Saranga Komanduri, Lujo Bauer, Nicolas Christin, Lorrie Faith Cranor Guessing Methods 2 Guessing Methods John the


  1. Fast, Lean, and Accurate: Modeling Password Guessability Using Neural Networks William Melicher , Blase Ur, Sean Segreti, Saranga Komanduri, Lujo Bauer, Nicolas Christin, Lorrie Faith Cranor

  2. Guessing Methods 2

  3. Guessing Methods ● John the Ripper ● Hashcat 3

  4. Guessing Methods ● John the Ripper Dictionary word + Rules ● Hashcat 4

  5. Guessing Methods ● John the Ripper Dictionary word + Rules + append 2 digits password ● Hashcat 5

  6. Guessing Methods ● John the Ripper Dictionary word + Rules + append 2 digits password ● Hashcat password11 password12 ... 6

  7. Guessing Methods ● John the Ripper ● Hashcat ● Markov Models 7

  8. Guessing Methods ● John the Ripper p a s s ● Hashcat e t ● Markov Models ... 8

  9. Guessing Methods ● John the Ripper ● Hashcat ● Markov Models ● PCFGs 9

  10. Guessing Methods ● John the Ripper ● Hashcat L8D2 L6S2 ... ● Markov Models monkey!! password12 qwerty.. password11 ● PCFGs ... ... 10

  11. Guessing Methods ● John the Ripper ● Hashcat ● Markov Models ● PCFGs 11

  12. Can we guess more accurately? Quicker? With fewer resources? 13

  13. Our Approach: Neural Networks Hello = Здравствуйте Handwriting Recognition → Handwriting recognition 14

  14. Outline: Guessing with Neural Networks ● How to guess passwords with neural networks ● Password guesser design ● Comparison to other guessing methods ● Real-time, in-browser feedback with neural networks 15

  15. Generating Passwords 16

  16. Generating Passwords o or maybe 0 or O or ... passw 17

  17. Generating Passwords Next char is: A: 3% B: 1% C: 0.6% passw … O: 55% … Z: 0.01% 0: 20% 1: ... 18

  18. Generating Passwords “” Prob: 100% 19

  19. Generating Passwords Next char is: A: 3% B: 2% C: 5% “” … Prob: 100% O: 2% … Z: 0.2% 0: 1% 1: … END: 2% 20

  20. Generating Passwords Next char is: A: 3% B: 2% C: 5% “” … Prob: 100% O: 2% … Z: 0.2% 0: 1% 1: … END: 2% 21

  21. Generating Passwords Next char is: A: 3% B: 2% C: 5% “” … Prob: 100% O: 2% … Z: 0.2% 0: 1% 1: … END: 2% 22

  22. Generating Passwords “C” Prob: 5% 23

  23. Generating Passwords Next char is: A: 10% B: 1% C: 4% “C” … O: 8% Prob: 5% … Z: 0.02% 0: 3% 1: … END: 6% 24

  24. Generating Passwords Next char is: A: 10% B: 1% C: 4% “C” … O: 8% Prob: 5% … Z: 0.02% 0: 3% 1: … END: 6% 25

  25. Generating Passwords Next char is: A: 3% B: 10% C: 7% “CA” … O: 1% Prob: 0.5% … Z: 0.03% 0: 2% 1: … END: 12% 26

  26. Generating Passwords Next char is: A: 3% B: 10% C: 7% “CAB” … O: 1% Prob: 0.05% … Z: 0.03% 0: 2% 1: … END: 3% 27

  27. Generating Passwords Next char is: A: 4% B: 3% C: 1% “CAB” … O: 2% Prob: 0.05% … Z: 0.01% 0: 4% 1: … END: 12% 28

  28. Generating Passwords Next char is: A: 4% B: 3% C: 1% “CAB” … O: 2% Prob: 0.05% … Z: 0.01% 0: 4% 1: … END: 12% 29

  29. Generating Passwords “CAB” Prob: 0.006% 30

  30. Generating Passwords CAB - 0.006% CAC - 0.0042% ADD1 - 0.002% CODE - 0.0013% ... 31

  31. Generating Passwords Must be longer than CAB - 0.006% 3 characters CAC - 0.0042% ADD1 - 0.002% CODE - 0.0013% ... 32

  32. Password Policies: 1class8 1 character class and 8 characters minimum password123 12345678 monkey99 33

  33. Password Policies: 4class8 4 character classes and 8 characters minimum Pa$$w0rd !Qaz2wsx Jvj24601! 34

  34. Password Policies: 1class16 1 character class and 16 characters minimum 123456789123456789 qwertyuiop123456 Monika1234567890 35

  35. Password Policies: 3class12 3 character class and 12 characters minimum llamalove123 Mypassword#3 N@rut0_r0ck5 36

  36. Outline: Guessing with Neural Networks ● How to guess passwords with neural networks ● Password guesser design ● Comparison to other guessing methods ● Real-time, in-browser feedback with neural networks 37

  37. Design Space 38

  38. Design Space ● Model size 3MB - Browser 60MB - Limited by GPU 39

  39. Design Space ● Model size 1class8 network ● Transference learning Transfer knowledge 3class12 network 40

  40. Design Space ● Model size Natural language? ● Transference learning ● Training data Varying training sets? 41

  41. Design Space ● Model size ● Transference learning ● Training data ● Model architecture ● Alphabet size ● Password context 42

  42. Testing Methodology ● Approach: measure # guessed passwords ● Training data: leaked password sets ● Testing data ○ MTurk study passwords: 1class8, 4class8, 1class16, 3class12 ○ Real passwords: 000webhost password leak ● Use Monte-Carlo to estimate guess numbers (Dell’Amico and Filippone CCS ‘15) 43

  43. Tuning Training 44

  44. 45

  45. 46

  46. 47

  47. More accurate guessing 48

  48. More accurate guessing 49

  49. Transference Learning → More Accurate 15% → 22% 50

  50. Natural Language Doesn’t Help 51

  51. Model Size: Larger Is More Accurate 52

  52. Model Size: Larger Is More Accurate 53

  53. Model Size: Larger Is More Accurate 54

  54. Sometimes Model Size: Larger Is More Accurate 55

  55. Comparison to Other Approaches 56

  56. 1class8: Comparison 57

  57. 1class8: Neural Networks Guess Better 58

  58. 1class8: Neural Networks Guess Better 59

  59. 4class8: Neural Networks Guess Better 60

  60. 3class12: Neural Networks Guess Better 61

  61. 3class12: Neural Networks Guess Better 30% → 45% 62

  62. Password feedback: 63

  63. Current password feedback: Quick or accurate 64

  64. Accurate Guessing Methods 100s MB to GBs! 65

  65. Accurate Guessing Methods 100s MB to GBs! 66

  66. Accurate Guessing Methods 100s MB to GBs! Neural networks: 60MB, 3MB 67

  67. Accurate Guessing Methods ? Neural networks: 60MB, 3MB 68

  68. Accurate Guessing Methods Hours to days! 69

  69. Can neural networks give real-time feedback? 70

  70. Ideal Meter Targets ● Small: < 1MB ● Fast: < 0.1 sec ● JavaScript ● Accurate 71

  71. Making Meters Small ● Start with small version of neural network ● Quantize parameters of model ● Compress with existing lossless compression methods 850KB < 1MB 72

  72. Making Meters Fast ● Pre-compute inexact mapping from prob → guess number ● Cache intermediate results ● Run on separate thread 17 ms < 0.1 sec 73

  73. Meter Accuracy 74

  74. Meter Accuracy 75

  75. Meter Accuracy 76

  76. Meter Accuracy 77

  77. Modeling Passwords Using Neural Networks ● Neural networks guess passwords accurately ● Can be made small and fast for client-side feedback github.com/cupslab William Melicher , Blase Ur, Sean M. Segreti, Saranga Komanduri, Lujo Bauer, Nicolas Christin, Lorrie Faith Cranor 78

Recommend


More recommend