SlideShare a Scribd company logo
Passwords 
Changing times 
Two ways forward 
The Changing Landscape of Passwords 
Ryan Smith, Ph.D. 
Data Scientist 
August 18, 2014 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
De
nition 
A hash function is a 'one way' function that scrambles the input so 
that a) it's infeasible to guess the input from the output, and b) 
slight changes to the input have a large eect on the output. 
Input Hashed Output 
password 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 
Password 8be3c943b1609fbfc51aad666d0a04adf83c9d 
1234 7110eda4d09e062aa5e4a390b0a572ac0d2c0220 
DB+U44@5wK83g*6 df3c73999cc44aabbba6c7167cc8a846a7425f43 
Table: Hashes using the SHA-1 algorithm 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
De
nition 
A hash function is a 'one way' function that scrambles the input so 
that a) it's infeasible to guess the input from the output, and b) 
slight changes to the input have a large eect on the output. 
Input Hashed Output 
password 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 
Password 8be3c943b1609fbfc51aad666d0a04adf83c9d 
1234 7110eda4d09e062aa5e4a390b0a572ac0d2c0220 
DB+U44@5wK83g*6 df3c73999cc44aabbba6c7167cc8a846a7425f43 
Table: Hashes using the SHA-1 algorithm 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How do hash functions aect your life? 
Data integrity 
Bitcoin 
All password-based authentication 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How do hash functions aect your life? 
Data integrity 
Bitcoin 
All password-based authentication 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How do hash functions aect your life? 
Data integrity 
Bitcoin 
All password-based authentication 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How password authentication works 
1 User enters their password 
2 Server computes the hash of their password 
3 Server compares the hashed password to a master list 
[root@localhost ~]# cat /etc/shadow 
root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: 
bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: 
sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 
4 User is authenticated or denied. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How password authentication works 
1 User enters their password 
2 Server computes the hash of their password 
3 Server compares the hashed password to a master list 
[root@localhost ~]# cat /etc/shadow 
root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: 
bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: 
sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 
4 User is authenticated or denied. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How password authentication works 
1 User enters their password 
2 Server computes the hash of their password 
3 Server compares the hashed password to a master list 
[root@localhost ~]# cat /etc/shadow 
root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: 
bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: 
sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 
4 User is authenticated or denied. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
How password authentication works 
1 User enters their password 
2 Server computes the hash of their password 
3 Server compares the hashed password to a master list 
[root@localhost ~]# cat /etc/shadow 
root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: 
bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: 
sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 
4 User is authenticated or denied. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
... because that's where the money is 
How do attackers compromise password lists? 
SQL injection attacks 
Cross-site scripting 
Buer over
ows 
: : : 
Avoid single points of failure 
Password policies should assume that an attacker has access to the 
list of hashed master passwords. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
... because that's where the money is 
How do attackers compromise password lists? 
SQL injection attacks 
Cross-site scripting 
Buer over
ows 
: : : 
Avoid single points of failure 
Password policies should assume that an attacker has access to the 
list of hashed master passwords. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
Guess and check 
Example 
Suppose the hash of Laura's password is d83f445224a58355b13. 
Password Hash 
cat 3389fc855f142c3d40f 

uy e1e986bc62f6c988dd 
whiskers 8ae5f0c19282e29f203 
: : : : : : 
kitten42 d83f445224a58355b13 
We know that Laura's password was kitten42 
Danger 
These are not hypothetical attacks! John the Ripper and Hashcat 
are both widely available. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Hash Functions 
Defeating password authentication 
Guess and check 
Example 
Suppose the hash of Laura's password is d83f445224a58355b13. 
Password Hash 
cat 3389fc855f142c3d40f 

uy e1e986bc62f6c988dd 
whiskers 8ae5f0c19282e29f203 
: : : : : : 
kitten42 d83f445224a58355b13 
We know that Laura's password was kitten42 
Danger 
These are not hypothetical attacks! John the Ripper and Hashcat 
are both widely available. 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Enter the GPU 
The Cloud 
Order of magnitude comparisons 
De
nition 
Embarrassingly parallel problems scale perfectly with more 
processor power 
Device Cores NTLM hashes per second 
Intel Core i5 4 5-15 million attempts per second 
NVIDIA GTX 690 3072 12-14 billion of attempts per second 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Enter the GPU 
The Cloud 
Order of magnitude comparisons 
De
nition 
Embarrassingly parallel problems scale perfectly with more 
processor power 
Device Cores NTLM hashes per second 
Intel Core i5 4 5-15 million attempts per second 
NVIDIA GTX 690 3072 12-14 billion of attempts per second 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
Passwords 
Changing times 
Two ways forward 
Enter the GPU 
The Cloud 
GPU computing 
A cluster of 25 AMD Radeon 
HD6990s achieved: 
350 billion guesses per 
second using NTLM 
hashing, 
a complete search of all 
eight character passwords 
with uppercase, lower case, 
letters, digits, and symbols 
in six hours! 
Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords

More Related Content

What's hot

อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้องอาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
jiranut
 
ExpertsLiveEurope The New Era Of Endpoint Security
ExpertsLiveEurope The New Era Of Endpoint SecurityExpertsLiveEurope The New Era Of Endpoint Security
ExpertsLiveEurope The New Era Of Endpoint Security
Alexander Benoit
 
Stu r33 b (2)
Stu r33 b (2)Stu r33 b (2)
Stu r33 b (2)
SelectedPresentations
 
Python 3.3 チラ見
Python 3.3 チラ見Python 3.3 チラ見
Python 3.3 チラ見
Toru Furukawa
 
Iam r31 a (2)
Iam r31 a (2)Iam r31 a (2)
Iam r31 a (2)
SelectedPresentations
 
GraphQL, l'avenir du REST ?
GraphQL, l'avenir du REST ?GraphQL, l'avenir du REST ?
GraphQL, l'avenir du REST ?
Francois Zaninotto
 
07 application security fundamentals - part 2 - security mechanisms - data ...
07   application security fundamentals - part 2 - security mechanisms - data ...07   application security fundamentals - part 2 - security mechanisms - data ...
07 application security fundamentals - part 2 - security mechanisms - data ...
appsec
 

What's hot (7)

อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้องอาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
อาชญากรรมทางคอมพิวเตอร์และกฎหมายที่เกี่ยวข้อง
 
ExpertsLiveEurope The New Era Of Endpoint Security
ExpertsLiveEurope The New Era Of Endpoint SecurityExpertsLiveEurope The New Era Of Endpoint Security
ExpertsLiveEurope The New Era Of Endpoint Security
 
Stu r33 b (2)
Stu r33 b (2)Stu r33 b (2)
Stu r33 b (2)
 
Python 3.3 チラ見
Python 3.3 チラ見Python 3.3 チラ見
Python 3.3 チラ見
 
Iam r31 a (2)
Iam r31 a (2)Iam r31 a (2)
Iam r31 a (2)
 
GraphQL, l'avenir du REST ?
GraphQL, l'avenir du REST ?GraphQL, l'avenir du REST ?
GraphQL, l'avenir du REST ?
 
07 application security fundamentals - part 2 - security mechanisms - data ...
07   application security fundamentals - part 2 - security mechanisms - data ...07   application security fundamentals - part 2 - security mechanisms - data ...
07 application security fundamentals - part 2 - security mechanisms - data ...
 

Viewers also liked

Astec Australia - Mobile Underground Mining
Astec Australia - Mobile Underground MiningAstec Australia - Mobile Underground Mining
Astec Australia - Mobile Underground Mining
Astec Australia
 
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
Taboola
 
Cryptography With PHP
Cryptography With PHPCryptography With PHP
Cryptography With PHP
Mark Niebergall
 
Creating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login SystemCreating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login System
Azharul Haque Shohan
 
Pentesting iOS Applications
Pentesting iOS ApplicationsPentesting iOS Applications
Pentesting iOS Applications
jasonhaddix
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Tanel Poder
 
Risk management in banking sector project report mba finance
Risk management in banking sector project report mba financeRisk management in banking sector project report mba finance
Risk management in banking sector project report mba finance
Babasab Patil
 

Viewers also liked (7)

Astec Australia - Mobile Underground Mining
Astec Australia - Mobile Underground MiningAstec Australia - Mobile Underground Mining
Astec Australia - Mobile Underground Mining
 
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
Solving the Mobile Mystery: Tips for Achieving Your Content Goals on an Evolv...
 
Cryptography With PHP
Cryptography With PHPCryptography With PHP
Cryptography With PHP
 
Creating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login SystemCreating a Simple PHP and MySQL-Based Login System
Creating a Simple PHP and MySQL-Based Login System
 
Pentesting iOS Applications
Pentesting iOS ApplicationsPentesting iOS Applications
Pentesting iOS Applications
 
Troubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTroubleshooting Complex Performance issues - Oracle SEG$ contention
Troubleshooting Complex Performance issues - Oracle SEG$ contention
 
Risk management in banking sector project report mba finance
Risk management in banking sector project report mba financeRisk management in banking sector project report mba finance
Risk management in banking sector project report mba finance
 

Similar to PDX Tech Meetup - The changing landscape of passwords

Secure Software: Action, Comedy or Drama? (2017 edition)
Secure Software: Action, Comedy or Drama? (2017 edition)Secure Software: Action, Comedy or Drama? (2017 edition)
Secure Software: Action, Comedy or Drama? (2017 edition)
Peter Sabev
 
How to Use Cryptography Properly: Common Mistakes People Make When Using Cry...
How to Use Cryptography Properly:  Common Mistakes People Make When Using Cry...How to Use Cryptography Properly:  Common Mistakes People Make When Using Cry...
How to Use Cryptography Properly: Common Mistakes People Make When Using Cry...
All Things Open
 
Dreaming of IoCs Adding Time Context to Threat Intelligence
Dreaming of IoCs Adding Time Context to Threat IntelligenceDreaming of IoCs Adding Time Context to Threat Intelligence
Dreaming of IoCs Adding Time Context to Threat Intelligence
Priyanka Aash
 
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy BilykSecurity Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Nazar Tymoshyk, CEH, Ph.D.
 
Using Cryptography Properly in Applications
Using Cryptography Properly in ApplicationsUsing Cryptography Properly in Applications
Using Cryptography Properly in Applications
Great Wide Open
 
Password (in)security
Password (in)securityPassword (in)security
Password (in)security
Enrico Zimuel
 
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
RootedCON
 
Угадываем пароль за минуту
Угадываем пароль за минутуУгадываем пароль за минуту
Угадываем пароль за минуту
Positive Hack Days
 
High Secure Password Authentication System
High Secure Password Authentication SystemHigh Secure Password Authentication System
High Secure Password Authentication System
Akhil Nadh PC
 
Encryption: It's For More Than Just Passwords
Encryption: It's For More Than Just PasswordsEncryption: It's For More Than Just Passwords
Encryption: It's For More Than Just Passwords
John Congdon
 
Duplicates everywhere (Kiev)
Duplicates everywhere (Kiev)Duplicates everywhere (Kiev)
Duplicates everywhere (Kiev)
Alexey Grigorev
 
Django cryptography
Django cryptographyDjango cryptography
Django cryptography
Erik LaBianca
 
String Comparison Surprises: Did Postgres lose my data?
String Comparison Surprises: Did Postgres lose my data?String Comparison Surprises: Did Postgres lose my data?
String Comparison Surprises: Did Postgres lose my data?
Jeremy Schneider
 
LOGGING FOR FUN, AND PROFIT
LOGGING FOR FUN, AND PROFITLOGGING FOR FUN, AND PROFIT
LOGGING FOR FUN, AND PROFIT
Informatics Summit
 
Inspec one tool to rule them all
Inspec one tool to rule them allInspec one tool to rule them all
Inspec one tool to rule them all
Kimball Johnson
 
Improving password-based authentication
Improving password-based authenticationImproving password-based authentication
Improving password-based authentication
Frank Denis
 
Common Browser Hijacking Methods
Common Browser Hijacking MethodsCommon Browser Hijacking Methods
Common Browser Hijacking Methods
David Barroso
 
Defcon 20 stamp out hash corruption crack all the things
Defcon 20 stamp out hash corruption crack all the thingsDefcon 20 stamp out hash corruption crack all the things
Defcon 20 stamp out hash corruption crack all the things
claudijd
 
Passwords good badugly181212-2
Passwords good badugly181212-2Passwords good badugly181212-2
Passwords good badugly181212-2
Iftach Ian Amit
 
Defending Against Attacks With Rails
Defending Against Attacks With RailsDefending Against Attacks With Rails
Defending Against Attacks With Rails
Tony Amoyal
 

Similar to PDX Tech Meetup - The changing landscape of passwords (20)

Secure Software: Action, Comedy or Drama? (2017 edition)
Secure Software: Action, Comedy or Drama? (2017 edition)Secure Software: Action, Comedy or Drama? (2017 edition)
Secure Software: Action, Comedy or Drama? (2017 edition)
 
How to Use Cryptography Properly: Common Mistakes People Make When Using Cry...
How to Use Cryptography Properly:  Common Mistakes People Make When Using Cry...How to Use Cryptography Properly:  Common Mistakes People Make When Using Cry...
How to Use Cryptography Properly: Common Mistakes People Make When Using Cry...
 
Dreaming of IoCs Adding Time Context to Threat Intelligence
Dreaming of IoCs Adding Time Context to Threat IntelligenceDreaming of IoCs Adding Time Context to Threat Intelligence
Dreaming of IoCs Adding Time Context to Threat Intelligence
 
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy BilykSecurity Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
Security Hole #11 - Unusual security vulnerabilities - Yuriy Bilyk
 
Using Cryptography Properly in Applications
Using Cryptography Properly in ApplicationsUsing Cryptography Properly in Applications
Using Cryptography Properly in Applications
 
Password (in)security
Password (in)securityPassword (in)security
Password (in)security
 
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
Jose Selvi - Side-Channels Uncovered [rootedvlc2018]
 
Угадываем пароль за минуту
Угадываем пароль за минутуУгадываем пароль за минуту
Угадываем пароль за минуту
 
High Secure Password Authentication System
High Secure Password Authentication SystemHigh Secure Password Authentication System
High Secure Password Authentication System
 
Encryption: It's For More Than Just Passwords
Encryption: It's For More Than Just PasswordsEncryption: It's For More Than Just Passwords
Encryption: It's For More Than Just Passwords
 
Duplicates everywhere (Kiev)
Duplicates everywhere (Kiev)Duplicates everywhere (Kiev)
Duplicates everywhere (Kiev)
 
Django cryptography
Django cryptographyDjango cryptography
Django cryptography
 
String Comparison Surprises: Did Postgres lose my data?
String Comparison Surprises: Did Postgres lose my data?String Comparison Surprises: Did Postgres lose my data?
String Comparison Surprises: Did Postgres lose my data?
 
LOGGING FOR FUN, AND PROFIT
LOGGING FOR FUN, AND PROFITLOGGING FOR FUN, AND PROFIT
LOGGING FOR FUN, AND PROFIT
 
Inspec one tool to rule them all
Inspec one tool to rule them allInspec one tool to rule them all
Inspec one tool to rule them all
 
Improving password-based authentication
Improving password-based authenticationImproving password-based authentication
Improving password-based authentication
 
Common Browser Hijacking Methods
Common Browser Hijacking MethodsCommon Browser Hijacking Methods
Common Browser Hijacking Methods
 
Defcon 20 stamp out hash corruption crack all the things
Defcon 20 stamp out hash corruption crack all the thingsDefcon 20 stamp out hash corruption crack all the things
Defcon 20 stamp out hash corruption crack all the things
 
Passwords good badugly181212-2
Passwords good badugly181212-2Passwords good badugly181212-2
Passwords good badugly181212-2
 
Defending Against Attacks With Rails
Defending Against Attacks With RailsDefending Against Attacks With Rails
Defending Against Attacks With Rails
 

Recently uploaded

Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 

Recently uploaded (20)

Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 

PDX Tech Meetup - The changing landscape of passwords

  • 1. Passwords Changing times Two ways forward The Changing Landscape of Passwords Ryan Smith, Ph.D. Data Scientist August 18, 2014 Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 2. Passwords Changing times Two ways forward Hash Functions Defeating password authentication De
  • 3. nition A hash function is a 'one way' function that scrambles the input so that a) it's infeasible to guess the input from the output, and b) slight changes to the input have a large eect on the output. Input Hashed Output password 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 Password 8be3c943b1609fbfc51aad666d0a04adf83c9d 1234 7110eda4d09e062aa5e4a390b0a572ac0d2c0220 DB+U44@5wK83g*6 df3c73999cc44aabbba6c7167cc8a846a7425f43 Table: Hashes using the SHA-1 algorithm Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 4. Passwords Changing times Two ways forward Hash Functions Defeating password authentication De
  • 5. nition A hash function is a 'one way' function that scrambles the input so that a) it's infeasible to guess the input from the output, and b) slight changes to the input have a large eect on the output. Input Hashed Output password 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 Password 8be3c943b1609fbfc51aad666d0a04adf83c9d 1234 7110eda4d09e062aa5e4a390b0a572ac0d2c0220 DB+U44@5wK83g*6 df3c73999cc44aabbba6c7167cc8a846a7425f43 Table: Hashes using the SHA-1 algorithm Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 6. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How do hash functions aect your life? Data integrity Bitcoin All password-based authentication Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 7. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How do hash functions aect your life? Data integrity Bitcoin All password-based authentication Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 8. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How do hash functions aect your life? Data integrity Bitcoin All password-based authentication Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 9. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How password authentication works 1 User enters their password 2 Server computes the hash of their password 3 Server compares the hashed password to a master list [root@localhost ~]# cat /etc/shadow root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 4 User is authenticated or denied. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 10. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How password authentication works 1 User enters their password 2 Server computes the hash of their password 3 Server compares the hashed password to a master list [root@localhost ~]# cat /etc/shadow root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 4 User is authenticated or denied. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 11. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How password authentication works 1 User enters their password 2 Server computes the hash of their password 3 Server compares the hashed password to a master list [root@localhost ~]# cat /etc/shadow root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 4 User is authenticated or denied. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 12. Passwords Changing times Two ways forward Hash Functions Defeating password authentication How password authentication works 1 User enters their password 2 Server computes the hash of their password 3 Server compares the hashed password to a master list [root@localhost ~]# cat /etc/shadow root:$1$flVALfyK$ kJfaoYnsAm7/plT3.PCmJ/ :15816:0:99999:7::: bob:$1$MIyV9col$ Up9YON8Z.TI1x37xgFvuO0 :15804:0:99999:7::: sue:$1$0Iwvz7CA$ QOJLfOSJZuSLC19LSFxt1. :15810:0:99999:7 4 User is authenticated or denied. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 13. Passwords Changing times Two ways forward Hash Functions Defeating password authentication ... because that's where the money is How do attackers compromise password lists? SQL injection attacks Cross-site scripting Buer over ows : : : Avoid single points of failure Password policies should assume that an attacker has access to the list of hashed master passwords. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 14. Passwords Changing times Two ways forward Hash Functions Defeating password authentication ... because that's where the money is How do attackers compromise password lists? SQL injection attacks Cross-site scripting Buer over ows : : : Avoid single points of failure Password policies should assume that an attacker has access to the list of hashed master passwords. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 15. Passwords Changing times Two ways forward Hash Functions Defeating password authentication Guess and check Example Suppose the hash of Laura's password is d83f445224a58355b13. Password Hash cat 3389fc855f142c3d40f uy e1e986bc62f6c988dd whiskers 8ae5f0c19282e29f203 : : : : : : kitten42 d83f445224a58355b13 We know that Laura's password was kitten42 Danger These are not hypothetical attacks! John the Ripper and Hashcat are both widely available. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 16. Passwords Changing times Two ways forward Hash Functions Defeating password authentication Guess and check Example Suppose the hash of Laura's password is d83f445224a58355b13. Password Hash cat 3389fc855f142c3d40f uy e1e986bc62f6c988dd whiskers 8ae5f0c19282e29f203 : : : : : : kitten42 d83f445224a58355b13 We know that Laura's password was kitten42 Danger These are not hypothetical attacks! John the Ripper and Hashcat are both widely available. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 17. Passwords Changing times Two ways forward Enter the GPU The Cloud Order of magnitude comparisons De
  • 18. nition Embarrassingly parallel problems scale perfectly with more processor power Device Cores NTLM hashes per second Intel Core i5 4 5-15 million attempts per second NVIDIA GTX 690 3072 12-14 billion of attempts per second Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 19. Passwords Changing times Two ways forward Enter the GPU The Cloud Order of magnitude comparisons De
  • 20. nition Embarrassingly parallel problems scale perfectly with more processor power Device Cores NTLM hashes per second Intel Core i5 4 5-15 million attempts per second NVIDIA GTX 690 3072 12-14 billion of attempts per second Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 21. Passwords Changing times Two ways forward Enter the GPU The Cloud GPU computing A cluster of 25 AMD Radeon HD6990s achieved: 350 billion guesses per second using NTLM hashing, a complete search of all eight character passwords with uppercase, lower case, letters, digits, and symbols in six hours! Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 22. Passwords Changing times Two ways forward Enter the GPU The Cloud Remark Why run one GPU for 100 hours, when you could run 100 GPU's for one hour? Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 23. Passwords Changing times Two ways forward Repeated hash functions Third party authentication Repeated hash functions Apply a hash function more than once SHA1(SHA1(doge)) = SHA1(aa3cca7d : : :) = 59c77262 : : : This is not always such a bad idea, encrypted .dmg
  • 24. les on OS X use 250,000 iterations of SHA1. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 25. Passwords Changing times Two ways forward Repeated hash functions Third party authentication Repeated hash functions Apply a hash function more than once SHA1(SHA1(doge)) = SHA1(aa3cca7d : : :) = 59c77262 : : : This is not always such a bad idea, encrypted .dmg
  • 26. les on OS X use 250,000 iterations of SHA1. Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords
  • 27. Passwords Changing times Two ways forward Repeated hash functions Third party authentication Let someone else solve the problem for you Build your websites to use a third party authentication OpenID - Google, Yahoo, Twitter Facebook Connect OAuth 2.0 Ryan Smith, Ph.D. Data Scientist The Changing Landscape of Passwords