The State of Modern Password Cracking



Similar documents
Windows passwords security

Protecting against modern password cracking

SENSE Security overview 2014

Security+ Guide to Network Security Fundamentals, Fourth Edition. Chapter 10 Authentication and Account Management

Your Password Complexity Requirements are Worthless. Rick Redman KoreLogic

Password Manager with 3-Step Authentication System

Better PHP Security Learning from Adobe. Bill PHP Security: Adobe Hack

Pass-the-Hash. Solution Brief

The City of New York

Security Awareness For Server Administrators. State of Illinois Central Management Services Security and Compliance Solutions

How to break in. Tecniche avanzate di pen testing in ambito Web Application, Internal Network and Social Engineering

FIPS Non Proprietary Security Policy: Kingston Technology DataTraveler DT4000 Series USB Flash Drive

CAPITAL UNIVERSITY PASSWORD POLICY

Dashlane Security Whitepaper

The Password Problem Will Only Get Worse

Hacking Database for Owning your Data

PaymentNet Federal Card Solutions Cardholder FAQs

Steve Gibson Revolutionizing Website Login and Authentication with SQRL SQRL

e-governance Password Management Guidelines Draft 0.1

HP ProtectTools Windows Mobile

Thick Client Application Security

Windows Attack - Gain Enterprise Admin Privileges in 5 Minutes

Presentation for : The New England Board of Higher Education. Hot Topics in IT Security and Data Privacy

Sitefinity Security and Best Practices

WHITE PAPER AUGUST Preventing Security Breaches by Eliminating the Need to Transmit and Store Passwords

Passwords the server side

RSA Authentication Manager 7.1 Security Best Practices Guide. Version 2

NESCO/NESCOR Common TFE Analysis: CIP-007 R5.3 Password Complexity

Members of the UK cyber security forum. Soteria Health Check. A Cyber Security Health Check for SAP systems

Using Foundstone CookieDigger to Analyze Web Session Management

Speeding up GPU-based password cracking

Enhancing Organizational Security Through the Use of Virtual Smart Cards

Where every interaction matters.

Privileged. Account Management. Accounts Discovery, Password Protection & Management. Overview. Privileged. Accounts Discovery

Administrative Improvements. Administrative Improvements. Scoping Guidance. Clarifications for Segmentation

MySQL Security: Best Practices

Cyber Exploits: Improving Defenses Against Penetration Attempts

Server Security. Contents. Is Rumpus Secure? 2. Use Care When Creating User Accounts 2. Managing Passwords 3. Watch Out For Aliases 4

8/17/2010. Over 90% of all compromised merchants are PCI level 4 (small) merchants or merchants with less than 1 million transactions per year

Securing Password Storage Increasing Resistance to Brute Force Attacks

Web Application Security

Application Security Testing. Generic Test Strategy

Secure Password Managers and Military-Grade Encryption on Smartphones: Oh, Really?

Compliance Guide ISO Compliance Guide. September Contents. Introduction 1. Detailed Controls Mapping 2.

PROTECTING SYSTEMS AND DATA PASSWORD ADVICE

Smithsonian Enterprises

Password Cracking Beyond Brute-Force

Real World Healthcare Security Exposures. Brian Selfridge, Partner, Meditology Services

Franchise Data Compromise Trends and Cardholder. December, 2010

Pass-the-Hash II: Admin s Revenge. Skip Duckwall & Chris Campbell

Project: Simulated Encrypted File System (SEFS)

This presentation has been modified from its original version. It has been modified to fit your screen.

BASELINE SECURITY TEST PLAN FOR EDUCATIONAL WEB AND MOBILE APPLICATIONS

RSA Authentication Manager 7.1 Security Best Practices Guide. Version 5

A Guide For Reviewers. A Guide For Reviewers

Securing Data on Microsoft SQL Server 2012

Five Steps to Improve Internal Network Security. Chattanooga ISSA

Is Drupal secure? A high-level perspective on web vulnerabilities, Drupal s solutions, and how to maintain site security

User Identification and Authentication Concepts

A state-of-the-art password strength analysis demonstrator

Top Web Application Security Issues. Daniel Ramsbrock, CISSP, GSSP

Enterprise Application Security Workshop Series

FORBIDDEN - Ethical Hacking Workshop Duration

Penetration Testing Report Client: Business Solutions June 15 th 2015

Common Cyber Threats. Common cyber threats include:

Kentico CMS security facts

Ensuring the security of your mobile business intelligence

Database Application Security Models and Policies

Passing PCI Compliance How to Address the Application Security Mandates

CSC Network Security. User Authentication Basics. Authentication and Identity. What is identity? Authentication: verify a user s identity

Strong Authentication: Enabling Efficiency and Maximizing Security in Your Microsoft Environment

MS-55096: Securing Data on Microsoft SQL Server 2012

FINAL DoIT v.4 PAYMENT CARD INDUSTRY DATA SECURITY STANDARDS APPLICATION DEVELOPMENT AND MAINTENANCE PROCEDURES

Simplifying Your Approach. Password Guidance

Loophole+ with Ethical Hacking and Penetration Testing

BUILDING AN OFFENSIVE SECURITY PROGRAM BUILDING AN OFFENSIVE SECURITY PROGRAM

Criteria for web application security check. Version

THE PENNSYLVANIA STATE UNIVERSITY OFFICE OF HUMAN RESOURCES PASSWORD USAGE POLICY

Cloud and Security (Cloud hacked via Cloud) Lukas Grunwald

Passcape Software. DPAPI flaw. Vulnerability of DPAPI data protection in Win2K, Win2K3, Windows Server 2008, and Windows Server 2012

Guideline on Access Control

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 7 Access Control Fundamentals

Question Name C 1.1 Do all users and administrators have a unique ID and password? Yes

Security Awareness For Website Administrators. State of Illinois Central Management Services Security and Compliance Solutions

Secure Passwords Through Enhanced Hashing

High Security Online Backup. A Cyphertite White Paper February, Cloud-Based Backup Storage Threat Models

PCI Self-Assessment: PCI DSS 3.0

Our Key Security Features Are:

SecureDoc Disk Encryption Cryptographic Engine

PLATFORM ENCRYPTlON ARCHlTECTURE. How to protect sensitive data without locking up business functionality.

Sichere Software- Entwicklung für Java Entwickler

That Point of Sale is a PoS

Authentication. Computer Security. Authentication of People. High Quality Key. process of reliably verifying identity verification techniques

Service Desk R11.2 Upgrade Procedure - Resetting USD passwords and unlocking accounts in etrust Web Admin

PASSWORD MANAGEMENT. February The Government of the Hong Kong Special Administrative Region

CompTIA Mobile App Security+ Certification Exam (ios Edition) Live exam IOS-001 Beta Exam IO1-001

Electronic Questionnaires for Investigations Processing (e-qip)

SECURITY DOCUMENT. BetterTranslationTechnology


How We're Getting Creamed

Transcription:

SESSION ID: PDAC-W05 The State of Modern Password Cracking Christopher Camejo Director of Threat and Vulnerability Analysis NTT Com Security @0x434a

Presentation Overview Password Hashing 101 Getting Hashes Basic Cracking GPU Cracking Statistical Analysis Advanced Hashing and Cracking Making Trouble Recommendations 2

Password Hashing 101

Password Hashing 101 administrator ******** Log In trustno1 5979150da68d8b9d074751590c7896ed trustno2 0ab15acb4711103a7ffa24e485f4f03c 4

Adding Some Salt No Salt trustno1 trustno1 Hash Hash 5979150da68d8b9d074751590c7896ed 5979150da68d8b9d074751590c7896ed Salt q89f236h trustno1 Hash 18af5d264d8dabd39498990fadf9ec34 q89f236h ohfq3w84 trustno1 Hash a40e7ee72045e2b8d6b25673fda3b724 ohfq3w84 5

Getting Hashes

Stealing Hashes Compromise a Host Local Caches Network Sniffing Application Vulnerabilities SQL Injection File Inclusion Leaked Code Hardcoded Client Passwords Backdoor Hashes 7

Indecent Exposure Search GitHub for abc.com password Warehouse.define do warehouse :User do login "admin@abc.com" name "" access "super" email "admin@abc.com" password "$2a$08$Y.JcIVvVQMk4UiToFFlLSObWeHYIT2zHdJrhYsgjdZdW7ZzByioh6" reset_token nil end end 8

Basic Password Cracking

Entropy (lack thereof) Standard keyboard: Reasonable password length: Possible combinations: Time to crack @ 200 million KPS: 95 characters 10 characters 60,510,648,114,517,000,000 9,587 years 10

Powers of 2 Time to crack @ 200 million keys per second Length Lowercase Letters Lowercase Alphanumeric Mixed Case Alphanumeric All characters 6 character 1.7 seconds 11.2 seconds 4.9 minutes 1.1 hours secret 7 characters 41.8 seconds 6.8 minutes 5 hours 4.1 days 8 characters 18.1 minutes 4.1 hours 1.9 weeks 1.1 years Secret123! 9 characters 7.9 hours 0.9 weeks 2.2 years 1.1 centuries 10 characters 1.3 weeks 31.1 weeks 1.4 centuries 9.6 millennia 11

Entropy (lack thereof) OED Entries: Our English file Our Crack file CEWL 291,500 entries @200 million/sec = 0.0015 seconds 394,748 entries @200 million/sec = 0.0020 seconds 148,903,320 entries @200 million/sec = 0.75 seconds Spiders web sites and adds unique terms it finds to the dictionary file 12

GPU Cracking

The Speed Problem 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c fab862c0c10fe5103dd17c36e34fbc8e 190a6fde97189ed5be05402451b0519b b7e6ab52e52380f13a5eca1452e801db 14

The Bottleneck Solution 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 3dbe00a167653a1aaee01d93e77e730e 0e976d4541c8b231ec26e2c522e841aa 0b23c6524e8f4d91afc91b60c786931c 190a6fde97189ed5be05402451b0519b fab862c0c10fe5103dd17c36e34fbc8e b7e6ab52e52380f13a5eca1452e801db 15

Hashcat Rules Masks CPU and GPU cracking Free/Open Source Modify dictionary words Selective brute force 16

More Power Model Intel Xeon E5-2620 v3; $400 ea. Model Nvidia GeForce GTX Titan X; $1,000 ea. Cores 6@2.4GHz x 2 CPUs = 12 cores Cores 3,072@1GHz x 8 GPUs= 24,576 cores MD5 205 million/sec MD5 132 billion/sec Crack 10 characters 9,353 years Crack 10 characters 15 years 17

Statistical Analysis

PCI Compliance Time to 7 characters alphanumeric Time to 10 characters alphanumeric Req 8.2.3: 7 characters Alphanumeric MD5 5 mins MD5 3 days Req 8.2.4: Change <90 days SHA512 6 mins SHA512 9 days 19

Analyzing leaked passwords Breached in 2009: 14.3 million plaintext passwords leaked Password Length Password Complexity 2% 17% 13% 14% 17% 15% 20% <6 chars 6 chars 7 chars 8 chars 9 chars 10 chars >10 chars 17% 42% 16% 25% Numeric Lowercase Lowercase and numeric Other 20

Smarter Analysis 16% 19% 28% 37% LD Pattern: 1-10 characters alphanumeric Recovered: 71% All lowercase or all numbers Lowercase with last 1-4 characters numeric 1-10 characters using pattern Recovered: 61% All Numbers All Letters Letters then Numbers Other MD5: 3 days SHA512: 9 days MD5: 6h23m SHA512: 17h41m 21

Breaking NTLM for fun and profit Old Windows domain authentication system Uses very weak hashes Hashes are everywhere Keys to the Kingdom Other security fails besides cracking 22

Crack and Analyze 8,930/15,902 stolen NTLM hashes (< 9 chars) Password Length Password Complexity 44% 0% 5% 10% 41% <6 chars 6 chars 7 chars 8 chars >8 chars 20% 33% 47% Mixed case and numeric Lowercase and numeric Other 23

Recurring Themes Variations on Company name Variations on P@5$w0rd Likely IT defaults that never got changed A pattern emerges Uppercase in the first position If at all Special character before the number(s) If at all Numbers at the end 1-4 of them The rest is lowercase Hello!123 24

Live Fire - Patterns 15,902 NTLM hashes stolen in penetration tests Fast Method Recovered Time All to 7 chars 15% 10 mins ULSD 8 chars 12% 1 min ULSD 9 chars 5% 12 mins LD 10 chars 2% 44 mins Total 35% ~1 hour Thorough Method Recovered Time All to 8 chars 56% 17 hours ULSD 9 chars 5% 12 mins ULSD 10 chars 4% 6 hours LD to 11 chars 1% 19 hours Total 67% ~41 hours 25

Live Fire Adding Dictionaries 15,902 NTLM hashes stolen in penetration tests Method Recovered Time 149 million dictionary words with Best64 rule 24.6% 53s 149 million dictionary words with d3ad0ne rule 44.1% 5m Fast (<1 hour) Recovered No dictionary 35.0% With dictionary 47.7% Thorough (<2 days) Recovered No dictionary 67% With dictionary 73.9% 26

Advanced Hashing and Cracking

Rainbow Tables (Horribly Oversimplified) Start aaaaaa bbbbbb cccccc dddddd eeeeee ffffff End abcabc kitten secret sesame random archer 5979150da68d8b9d074751590c7896ed secret secret trustno1 28

Better Hashing Key Derivation Functions (KDFs) Password Salt Work Factor Salt Hash x 10,000 Hash-based Message Authentication Codes (HMACs) Password Salt Salt Hash Private Key 29

Making Trouble

Making Trouble Access or escalate privileges on a target network Impersonate a user for fraud Publicly post them to embarrass a target Add them to cracking dictionary 31

Recommendations

Keep Hashes Safe Strong SDLC for custom apps Lock down Windows security configuration Use admin credentials only when necessary Penetration test to find weaknesses 33

Strong Password Policy Enforce password requirements Change <90 days 12+ characters Crack your own passwords All character types Support Prohibit re-use Pattern checks? Awareness of phishing and re-use 34

Use Appropriate Crypto DON T WRITE YOUR OWN!!! EVER!!! Cryptographically sound random number generator Long and cryptographically strong salt unique to each credential Use a KDF or HMAC instead of a plain hash KDFs: HMACS: PBKDF2, scrypt, bcrypt Update Work Factors as appropriate Use a strong key Protect the key 35

When it really needs to be secure Something You Know PIN Password Something You Have Token Card Certificate File 36

Don t Muck It Up Broken authentication and session management Password reset procedures Leaking plaintext passwords Users with the same password on every site Users who fall for phishing Malware and keyloggers 37

Wrapping Up

Apply this knowledge Next week you should: Change YOUR password to something long, complex, and unique to each service Do some Google searches for your own company s code and passwords (e.g. GitHub) In the first three months following this presentation you should: Implement a better password policy and enforce it Look for incorrect salt usage, use of plain hashes, and weak crypto, and unnecessary backwards-compatibility settings Within six months you should: Disable as much backwards compatibility and outdated crypto as possible Use salted KDF or HMACs for all password authentication Implement 2-factor or other password alternatives where appropriate 39

Contact Details chris.camejo@nttcomsecurity.com - @0x434a 40