SlideShare a Scribd company logo
1
Many thanks (content & inspiration) to:
Jim Manico
OWASP Top 10 - 2013
Disable Browser Autocomplete
<form AUTOCOMPLETE="off">
<input AUTOCOMPLETE="off">
Only send passwords over HTTPS POST
Do not display passwords in browser
Input type=password
Store password based on need
Use a salt (de-duplication)
SCRYPT/PBKDF2 (slow, performance hit, easy)
HMAC (requires good key storage, tough)
[2][2]Password Defenses
1) Do not limit the type of characters or
length*
of user password
•) Limiting passwords to protect against
injection is doomed to failure
•) Use proper encoder and other defenses
described instead
Password Storage
Simple Most Common→
● Plaintext passwords
– Vulnerable to:
DB Dumps
Admins
Simple Most Common→
● Encoding != Hashing
– Many (mis)guides out there
Simple Most Common→
● Encryption is not good enough
– Reversible
– Many “beginner's guides” use such examples
– Avoiding giving the links here (out of context references!)
2) Use a Cryptographically strong
credential-specific salt
•) Protect ([salt] + [password]);
•) Use a 32 char / 64 char salt
(may depend on protection function)
•) Do not depend on hiding / splitting /
otherwise obscuring the salt
Password Storage
3) Impose difficult verification on attacker
ONLY
•) HMAC-SHA256 ([private key], [salt] + [password])
•) Protect the key as any private key
•) Store key outside the credential store (HSM?)
•) Improvement over (solely) salted schemes; relies on
proper key creation & management
Password Storage
4) Impose difficult verification on both
(impacts attacker more than defender)
•) pbkdf2([salt] + [password], c=10,000,000);
•) PBKDF2 when FIPS certification or
enterprise support on many platforms
required
•) Scrypt when resisting hardware accelerated
attacks is more important
Password Storage
Single Sign On Considerations
● Enterprise integration scenarios
– Highly recommended (secure it once)
● General principles
– Login screen must be served directly by the IdM system
– IdM system authenticates and issues “a token” (to client)
– IdM system maintains strong password policy
– Relying Parties (applications) receive token from client
– RPs verify token validity with IdM before starting a session
– RPs check authorization separately
Basic MFA Considerations
12
• Where do you send the token?
– Email (worst – yet, better than none!)
– SMS (ok)
– Mobile native app (good)
– Dedicated token (great)
– Printed Tokens (interesting)
• How do you handle thick clients?
– Email services, for example
– Dedicated and strong per-app passwords
Basic MFA Considerations
13
• How do you handle unavailable MFA devices?
– Printed back-up codes
– Fallback mechanism (like email)
– Call-in center
• How do you handle mobile apps?
– When is MFA not useful in mobile app scenarios?
“Forgot Password” design
Require identity questions
Last name, account number, email, DOB
Enforce lockout policy
Ask one or more good security questions
 https://www.owasp.org/index.php/Choosing_and_Using_Security_Ques
tions_Cheat_Sheet
Send the user a randomly generated token via out-of-band
email, SMS or hardware / software token generator
Verify code in same web session
Enforce lockout policy
Change password
Enforce password policy
Thank you!

More Related Content

PPTX
Victory Text Message Platform
PDF
Threat Modeling for Web Applications (and other duties as assigned)
PDF
Hickman threat modeling
PDF
Robert Hurlbut - Threat Modeling for Secure Software Design
PDF
ATP Technology Pillars
PDF
Web application security (RIT 2014, rus)
PDF
OWASP Top 10 Overview
PPTX
Owasp web security
Victory Text Message Platform
Threat Modeling for Web Applications (and other duties as assigned)
Hickman threat modeling
Robert Hurlbut - Threat Modeling for Secure Software Design
ATP Technology Pillars
Web application security (RIT 2014, rus)
OWASP Top 10 Overview
Owasp web security

Viewers also liked (20)

PPTX
Web application Security
PDF
Application Security around OWASP Top 10
PDF
End to end web security
PDF
Web security: OWASP project, CSRF threat and solutions
PPTX
[Wroclaw #1] Android Security Workshop
PPT
Owasp Top 10
PPTX
Improving web application security, part ii
PDF
Application Threat Modeling
PPTX
Threat Modeling And Analysis
PDF
Web Security - OWASP - SQL injection & Cross Site Scripting XSS
PDF
Android Security Development - Part 2: Malicious Android App Dynamic Analyzi...
PPTX
[Wroclaw #5] OWASP Projects: beyond Top 10
PDF
Consulthink @ GDG Meets U - L'Aquila2014 - Codelab: Android Security -Il ke...
PDF
2015.04.24 Updated > Android Security Development - Part 1: App Development
ODP
Top 10 Web Security Vulnerabilities
PDF
Android Security & Penetration Testing
PDF
Deep Dive Into Android Security
PDF
Testing Android Security Codemotion Amsterdam edition
PDF
Brief Tour about Android Security
PDF
Android Security Development
Web application Security
Application Security around OWASP Top 10
End to end web security
Web security: OWASP project, CSRF threat and solutions
[Wroclaw #1] Android Security Workshop
Owasp Top 10
Improving web application security, part ii
Application Threat Modeling
Threat Modeling And Analysis
Web Security - OWASP - SQL injection & Cross Site Scripting XSS
Android Security Development - Part 2: Malicious Android App Dynamic Analyzi...
[Wroclaw #5] OWASP Projects: beyond Top 10
Consulthink @ GDG Meets U - L'Aquila2014 - Codelab: Android Security -Il ke...
2015.04.24 Updated > Android Security Development - Part 1: App Development
Top 10 Web Security Vulnerabilities
Android Security & Penetration Testing
Deep Dive Into Android Security
Testing Android Security Codemotion Amsterdam edition
Brief Tour about Android Security
Android Security Development
Ad

Similar to Secure Password Storage & Management (20)

PPT
Top Ten Web Application Defenses v12
PDF
Securing our digital life, presentation for Samoa IT Association (SITA) Tech ...
PPTX
Defending web applications v.1.0
PDF
2013 OWASP Top 10
PPT
Defcon9 Presentation2001
PPT
Web Application Security - "In theory and practice"
PDF
Single sign on (SSO) How does your company apply?
PPTX
Case Study of Django: Web Frameworks that are Secure by Default
PPTX
Mr. Mohammed Aldoub - A case study of django web applications that are secur...
PDF
Attacking SSO (SAML) - Breaking into the front door of Authentication
PPTX
Cross Site Scripting: Prevention and Detection(XSS)
PDF
"Inter- application vulnerabilities. hunting for bugs in secure applications"...
PDF
New Security Issues related to Embedded Web Servers
PDF
Web Security 101
PPT
Xss talk, attack and defense
PPTX
[OPD 2019] Inter-application vulnerabilities
PPTX
[OWASP Poland Day] Application security - daily questions & answers
PPTX
Flaws of password-based authentication
PPTX
Browser Security 101
PPTX
HTTP Services & REST API Security
Top Ten Web Application Defenses v12
Securing our digital life, presentation for Samoa IT Association (SITA) Tech ...
Defending web applications v.1.0
2013 OWASP Top 10
Defcon9 Presentation2001
Web Application Security - "In theory and practice"
Single sign on (SSO) How does your company apply?
Case Study of Django: Web Frameworks that are Secure by Default
Mr. Mohammed Aldoub - A case study of django web applications that are secur...
Attacking SSO (SAML) - Breaking into the front door of Authentication
Cross Site Scripting: Prevention and Detection(XSS)
"Inter- application vulnerabilities. hunting for bugs in secure applications"...
New Security Issues related to Embedded Web Servers
Web Security 101
Xss talk, attack and defense
[OPD 2019] Inter-application vulnerabilities
[OWASP Poland Day] Application security - daily questions & answers
Flaws of password-based authentication
Browser Security 101
HTTP Services & REST API Security
Ad

Recently uploaded (20)

PDF
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
17 Powerful Integrations Your Next-Gen MLM Software Needs
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
Download FL Studio Crack Latest version 2025 ?
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
Transform Your Business with a Software ERP System
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
PPTX
assetexplorer- product-overview - presentation
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
iTop VPN Free 5.6.0.5262 Crack latest version 2025
PPTX
Advanced SystemCare Ultimate Crack + Portable (2025)
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
CHAPTER 2 - PM Management and IT Context
Wondershare Filmora 15 Crack With Activation Key [2025
17 Powerful Integrations Your Next-Gen MLM Software Needs
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
How to Choose the Right IT Partner for Your Business in Malaysia
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Download FL Studio Crack Latest version 2025 ?
Design an Analysis of Algorithms II-SECS-1021-03
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
wealthsignaloriginal-com-DS-text-... (1).pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Operating system designcfffgfgggggggvggggggggg
Transform Your Business with a Software ERP System
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
assetexplorer- product-overview - presentation
Oracle Fusion HCM Cloud Demo for Beginners
iTop VPN Free 5.6.0.5262 Crack latest version 2025
Advanced SystemCare Ultimate Crack + Portable (2025)

Secure Password Storage & Management

  • 1. 1 Many thanks (content & inspiration) to: Jim Manico
  • 2. OWASP Top 10 - 2013
  • 3. Disable Browser Autocomplete <form AUTOCOMPLETE="off"> <input AUTOCOMPLETE="off"> Only send passwords over HTTPS POST Do not display passwords in browser Input type=password Store password based on need Use a salt (de-duplication) SCRYPT/PBKDF2 (slow, performance hit, easy) HMAC (requires good key storage, tough) [2][2]Password Defenses
  • 4. 1) Do not limit the type of characters or length* of user password •) Limiting passwords to protect against injection is doomed to failure •) Use proper encoder and other defenses described instead Password Storage
  • 5. Simple Most Common→ ● Plaintext passwords – Vulnerable to: DB Dumps Admins
  • 6. Simple Most Common→ ● Encoding != Hashing – Many (mis)guides out there
  • 7. Simple Most Common→ ● Encryption is not good enough – Reversible – Many “beginner's guides” use such examples – Avoiding giving the links here (out of context references!)
  • 8. 2) Use a Cryptographically strong credential-specific salt •) Protect ([salt] + [password]); •) Use a 32 char / 64 char salt (may depend on protection function) •) Do not depend on hiding / splitting / otherwise obscuring the salt Password Storage
  • 9. 3) Impose difficult verification on attacker ONLY •) HMAC-SHA256 ([private key], [salt] + [password]) •) Protect the key as any private key •) Store key outside the credential store (HSM?) •) Improvement over (solely) salted schemes; relies on proper key creation & management Password Storage
  • 10. 4) Impose difficult verification on both (impacts attacker more than defender) •) pbkdf2([salt] + [password], c=10,000,000); •) PBKDF2 when FIPS certification or enterprise support on many platforms required •) Scrypt when resisting hardware accelerated attacks is more important Password Storage
  • 11. Single Sign On Considerations ● Enterprise integration scenarios – Highly recommended (secure it once) ● General principles – Login screen must be served directly by the IdM system – IdM system authenticates and issues “a token” (to client) – IdM system maintains strong password policy – Relying Parties (applications) receive token from client – RPs verify token validity with IdM before starting a session – RPs check authorization separately
  • 12. Basic MFA Considerations 12 • Where do you send the token? – Email (worst – yet, better than none!) – SMS (ok) – Mobile native app (good) – Dedicated token (great) – Printed Tokens (interesting) • How do you handle thick clients? – Email services, for example – Dedicated and strong per-app passwords
  • 13. Basic MFA Considerations 13 • How do you handle unavailable MFA devices? – Printed back-up codes – Fallback mechanism (like email) – Call-in center • How do you handle mobile apps? – When is MFA not useful in mobile app scenarios?
  • 14. “Forgot Password” design Require identity questions Last name, account number, email, DOB Enforce lockout policy Ask one or more good security questions  https://www.owasp.org/index.php/Choosing_and_Using_Security_Ques tions_Cheat_Sheet Send the user a randomly generated token via out-of-band email, SMS or hardware / software token generator Verify code in same web session Enforce lockout policy Change password Enforce password policy