SlideShare a Scribd company logo
1 of 15
AUTHENTICATION
Security Mechanism:
Authentication
Authorization
Session Management
Data Validation
Error Handling
Logging
Encryption
Authentication Core Concepts
Something you
know
Something you
have
Something you
are
A manner for identifying a user is who they claim to be.
Two-Factor Authentication
Leverage two of these methods for a single authentication transaction.
Authentication Words to Live By
 Enforce basic password security
 Implement an account lockout for failed logins
 “Forgot my password” functionality can be a problem
 For web applications, use and enforce POST method
Authentication Words to Live By: #1
Enforce basic password security
• Minimum length enforcement
• Require complex composition
• Should not contain the user name as a
substring
• Users must be able to change password
• Consider password expiration over time
• Prevent reuse of some previous passwords
when changed
Real World Example - Twitter
Good practices
 Minimum password length = 8
 Passwords must contain characters from three of the following
four categories:
– uppercase characters (A through Z)
– lowercase characters (a through z)
– base 10 digits (0 through 9)
– non-alphabetic characters (for example, !, $, #, %)
 Password must not contain the user's account name
 Maximum password age = 6 months
 Minimum password age = 1 day
 Password history = 12 passwords remembered
Authentication Words to Live By: #2
 The problem
– The software does not implement sufficient measures to prevent
multiple failed authentication attempts within in a short time frame,
making it more susceptible to brute force attacks.
Implement an account lockout for failed logins
Real World Example - Twitter
Real World Example - eBay
A famous example of this type of weakness being exploited is the
eBay attack. eBay always displays the user id of the highest
bidder. In the final minutes of the auction, one of the bidders could
try to log in as the highest bidder three times. After three incorrect
log in attempts, eBay password throttling would kick in and lock
out the highest bidder's account for some time. An attacker could
then make their own bid and their victim would not have a chance
to place the counter bid because they would be locked out. Thus
an attacker could win the auction.
Mitigations:
 Shorten the length of account lockout
 Don't show who the highest bidder is
 Don't expose user id, only expose name
o Name should never be used as a key
Authentication Words to Live By: #3
 The problem
– The software contains a mechanism for users to recover or change
their passwords without knowing the original password, but the
mechanism is weak.
“Forgot my password” functionality can be a problem
Real World Example – Yahoo! & Sarah Palin
Yahoo! email used three security questions:
1. Birthday
2. Zip code
3. Where she met her husband
Real World Example – Apple iForgot
1) iforgot.apple.com – enter Apple ID
2) Select authentication method – “answer security questions”
3) Enter date of birth
4) Answer two security questions
5) Enter new password
6) Password is reset
Knowing someone’s Apple ID and DOB would
allow construction of the URL after step #5.
--------
The exploit was published on the day that Apple launched two-factor authentication
for Apple ID accounts, which would have prevented the attack for anyone that had
enabled it. Once activated, the feature replaces the security question based
verification with a 4-digit code sent to the user's mobile device
Good practices
 Make sure any security question is hard to guess and hard
to find the answer.
 The system must only email the new password to the email
account of the user resetting their password.
 Assign a new temporary password rather than revealing the
original password and force the user to set a new one.
 Avoid sending the password via email, but rather send a
reset link with a unique token with enough entropy and with
a short lifespan
 Consider throttling the rate of password resets so that a
legitimate user can not be denied service by an attacker that
tries to recover the password in a rapid succession.
Authentication Words to Live By: #4
 The problem
– The web application uses the GET method to process requests that
contain sensitive information, which can expose that information
through the browser's history, referrers, web logs, and other
sources.
For web applications, use and enforce POST method
Real World Example – Watchguard SSL-VPN

More Related Content

What's hot

Train Employees to Avoid Inadvertent Cyber-Security Breaches
Train Employees to Avoid Inadvertent Cyber-Security BreachesTrain Employees to Avoid Inadvertent Cyber-Security Breaches
Train Employees to Avoid Inadvertent Cyber-Security BreachesHuman Resources & Payroll
 
Internet security terms and definitions
Internet security terms and definitionsInternet security terms and definitions
Internet security terms and definitionsRozell Sneede
 
Hackingppt 160730081605
Hackingppt 160730081605Hackingppt 160730081605
Hackingppt 160730081605RAKESH SHARMA
 
Cybersecurity Awareness Infographics
Cybersecurity Awareness InfographicsCybersecurity Awareness Infographics
Cybersecurity Awareness InfographicsNetLockSmith
 
Internet trolls
Internet trollsInternet trolls
Internet trollskru1021
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application SecurityColin English
 
hire a hacker
hire a hackerhire a hacker
hire a hackerhackany1
 

What's hot (11)

Train Employees to Avoid Inadvertent Cyber-Security Breaches
Train Employees to Avoid Inadvertent Cyber-Security BreachesTrain Employees to Avoid Inadvertent Cyber-Security Breaches
Train Employees to Avoid Inadvertent Cyber-Security Breaches
 
The strategies of password
The strategies of passwordThe strategies of password
The strategies of password
 
Internet security terms and definitions
Internet security terms and definitionsInternet security terms and definitions
Internet security terms and definitions
 
Hackingppt 160730081605
Hackingppt 160730081605Hackingppt 160730081605
Hackingppt 160730081605
 
Parameter tampering
Parameter tamperingParameter tampering
Parameter tampering
 
Hacking
HackingHacking
Hacking
 
Cybersecurity Awareness Infographics
Cybersecurity Awareness InfographicsCybersecurity Awareness Infographics
Cybersecurity Awareness Infographics
 
Internet trolls
Internet trollsInternet trolls
Internet trolls
 
Security Tech Talk
Security Tech TalkSecurity Tech Talk
Security Tech Talk
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 
hire a hacker
hire a hackerhire a hacker
hire a hacker
 

Similar to 04 application security fundamentals - part 2 - security mechanisms - authentication

How to Find and Fix Broken Authentication Vulnerability
How to Find and Fix Broken Authentication VulnerabilityHow to Find and Fix Broken Authentication Vulnerability
How to Find and Fix Broken Authentication VulnerabilityAshKhan85
 
An Enhanced Security System for Web Authentication
An Enhanced Security System for Web Authentication An Enhanced Security System for Web Authentication
An Enhanced Security System for Web Authentication IJMER
 
Yours Advance Security Hood (Yash)
Yours Advance Security Hood (Yash)Yours Advance Security Hood (Yash)
Yours Advance Security Hood (Yash)IOSR Journals
 
Email and web security
Email and web securityEmail and web security
Email and web securityshahhardik27
 
The Immune System of Internet
The Immune System of InternetThe Immune System of Internet
The Immune System of InternetMohit Kanwar
 
eBay's Big "Whoops": What Others Can Learn From It
eBay's Big "Whoops": What Others Can Learn From IteBay's Big "Whoops": What Others Can Learn From It
eBay's Big "Whoops": What Others Can Learn From ItPerfectCloud Corp.
 
Password reset email best Practices
Password reset email best PracticesPassword reset email best Practices
Password reset email best PracticesAndy32903
 
"Inter- application vulnerabilities. hunting for bugs in secure applications"...
"Inter- application vulnerabilities. hunting for bugs in secure applications"..."Inter- application vulnerabilities. hunting for bugs in secure applications"...
"Inter- application vulnerabilities. hunting for bugs in secure applications"...PROIDEA
 
How to choose a password that’s hard to crack
How to choose a password that’s hard to crackHow to choose a password that’s hard to crack
How to choose a password that’s hard to crackKlaus Drosch
 
Improving Password Based Security
Improving Password Based SecurityImproving Password Based Security
Improving Password Based SecurityRare Input
 
Flaws of password-based authentication
Flaws of password-based authenticationFlaws of password-based authentication
Flaws of password-based authenticationsluge
 
CNIT 129S - Ch 6a: Attacking Authentication
CNIT 129S - Ch 6a: Attacking AuthenticationCNIT 129S - Ch 6a: Attacking Authentication
CNIT 129S - Ch 6a: Attacking AuthenticationSam Bowne
 
How to Protect Yourself From Heartbleed Security Flaw
How to Protect Yourself From Heartbleed Security FlawHow to Protect Yourself From Heartbleed Security Flaw
How to Protect Yourself From Heartbleed Security FlawConnectSafely
 
Web security presentation
Web security presentationWeb security presentation
Web security presentationJohn Staveley
 
7 Email Security Best Practices You Need to Follow in 2023.pptx
7 Email Security Best Practices You Need to Follow in 2023.pptx7 Email Security Best Practices You Need to Follow in 2023.pptx
7 Email Security Best Practices You Need to Follow in 2023.pptxMumara Campaigns
 
Authentication and session v4
Authentication and session v4Authentication and session v4
Authentication and session v4skimil
 
INSTAGRAM – HACKING AND PREVENTION TIPS
INSTAGRAM – HACKING AND PREVENTION TIPSINSTAGRAM – HACKING AND PREVENTION TIPS
INSTAGRAM – HACKING AND PREVENTION TIPSRohan Nyayadhish
 
I forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyI forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyMichal Špaček
 

Similar to 04 application security fundamentals - part 2 - security mechanisms - authentication (20)

How to Find and Fix Broken Authentication Vulnerability
How to Find and Fix Broken Authentication VulnerabilityHow to Find and Fix Broken Authentication Vulnerability
How to Find and Fix Broken Authentication Vulnerability
 
An Enhanced Security System for Web Authentication
An Enhanced Security System for Web Authentication An Enhanced Security System for Web Authentication
An Enhanced Security System for Web Authentication
 
Yours Advance Security Hood (Yash)
Yours Advance Security Hood (Yash)Yours Advance Security Hood (Yash)
Yours Advance Security Hood (Yash)
 
Email and web security
Email and web securityEmail and web security
Email and web security
 
The Immune System of Internet
The Immune System of InternetThe Immune System of Internet
The Immune System of Internet
 
eBay's Big "Whoops": What Others Can Learn From It
eBay's Big "Whoops": What Others Can Learn From IteBay's Big "Whoops": What Others Can Learn From It
eBay's Big "Whoops": What Others Can Learn From It
 
Password reset email best Practices
Password reset email best PracticesPassword reset email best Practices
Password reset email best Practices
 
"Inter- application vulnerabilities. hunting for bugs in secure applications"...
"Inter- application vulnerabilities. hunting for bugs in secure applications"..."Inter- application vulnerabilities. hunting for bugs in secure applications"...
"Inter- application vulnerabilities. hunting for bugs in secure applications"...
 
How to choose a password that’s hard to crack
How to choose a password that’s hard to crackHow to choose a password that’s hard to crack
How to choose a password that’s hard to crack
 
Improving Password Based Security
Improving Password Based SecurityImproving Password Based Security
Improving Password Based Security
 
Flaws of password-based authentication
Flaws of password-based authenticationFlaws of password-based authentication
Flaws of password-based authentication
 
CNIT 129S - Ch 6a: Attacking Authentication
CNIT 129S - Ch 6a: Attacking AuthenticationCNIT 129S - Ch 6a: Attacking Authentication
CNIT 129S - Ch 6a: Attacking Authentication
 
How to Protect Yourself From Heartbleed Security Flaw
How to Protect Yourself From Heartbleed Security FlawHow to Protect Yourself From Heartbleed Security Flaw
How to Protect Yourself From Heartbleed Security Flaw
 
Web security presentation
Web security presentationWeb security presentation
Web security presentation
 
7 Email Security Best Practices You Need to Follow in 2023.pptx
7 Email Security Best Practices You Need to Follow in 2023.pptx7 Email Security Best Practices You Need to Follow in 2023.pptx
7 Email Security Best Practices You Need to Follow in 2023.pptx
 
Authentication and session v4
Authentication and session v4Authentication and session v4
Authentication and session v4
 
INSTAGRAM – HACKING AND PREVENTION TIPS
INSTAGRAM – HACKING AND PREVENTION TIPSINSTAGRAM – HACKING AND PREVENTION TIPS
INSTAGRAM – HACKING AND PREVENTION TIPS
 
Getting authentication right
Getting authentication rightGetting authentication right
Getting authentication right
 
W make107
W make107W make107
W make107
 
I forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and whyI forgot my password – what a secure password reset needs to have and why
I forgot my password – what a secure password reset needs to have and why
 

More from appsec

23 owasp top 10 - resources
23   owasp top 10 - resources23   owasp top 10 - resources
23 owasp top 10 - resourcesappsec
 
15 owasp top 10 - a3-xss
15   owasp top 10 - a3-xss15   owasp top 10 - a3-xss
15 owasp top 10 - a3-xssappsec
 
12 owasp top 10 - introduction
12   owasp top 10 - introduction12   owasp top 10 - introduction
12 owasp top 10 - introductionappsec
 
10 application security fundamentals - part 2 - security mechanisms - encry...
10   application security fundamentals - part 2 - security mechanisms - encry...10   application security fundamentals - part 2 - security mechanisms - encry...
10 application security fundamentals - part 2 - security mechanisms - encry...appsec
 
11 application security fundamentals - part 2 - security mechanisms - summary
11   application security fundamentals - part 2 - security mechanisms - summary11   application security fundamentals - part 2 - security mechanisms - summary
11 application security fundamentals - part 2 - security mechanisms - summaryappsec
 
09 application security fundamentals - part 2 - security mechanisms - logging
09   application security fundamentals - part 2 - security mechanisms - logging09   application security fundamentals - part 2 - security mechanisms - logging
09 application security fundamentals - part 2 - security mechanisms - loggingappsec
 
08 application security fundamentals - part 2 - security mechanisms - error...
08   application security fundamentals - part 2 - security mechanisms - error...08   application security fundamentals - part 2 - security mechanisms - error...
08 application security fundamentals - part 2 - security mechanisms - error...appsec
 
06 application security fundamentals - part 2 - security mechanisms - sessi...
06   application security fundamentals - part 2 - security mechanisms - sessi...06   application security fundamentals - part 2 - security mechanisms - sessi...
06 application security fundamentals - part 2 - security mechanisms - sessi...appsec
 
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
 
05 application security fundamentals - part 2 - security mechanisms - autho...
05   application security fundamentals - part 2 - security mechanisms - autho...05   application security fundamentals - part 2 - security mechanisms - autho...
05 application security fundamentals - part 2 - security mechanisms - autho...appsec
 
02 application security fundamentals - part 1 - security priciples
02   application security fundamentals - part 1 - security priciples02   application security fundamentals - part 1 - security priciples
02 application security fundamentals - part 1 - security priciplesappsec
 
01 Application Security Fundamentals - part 1 - introduction and goals
01 Application Security Fundamentals - part 1 - introduction and goals01 Application Security Fundamentals - part 1 - introduction and goals
01 Application Security Fundamentals - part 1 - introduction and goalsappsec
 

More from appsec (12)

23 owasp top 10 - resources
23   owasp top 10 - resources23   owasp top 10 - resources
23 owasp top 10 - resources
 
15 owasp top 10 - a3-xss
15   owasp top 10 - a3-xss15   owasp top 10 - a3-xss
15 owasp top 10 - a3-xss
 
12 owasp top 10 - introduction
12   owasp top 10 - introduction12   owasp top 10 - introduction
12 owasp top 10 - introduction
 
10 application security fundamentals - part 2 - security mechanisms - encry...
10   application security fundamentals - part 2 - security mechanisms - encry...10   application security fundamentals - part 2 - security mechanisms - encry...
10 application security fundamentals - part 2 - security mechanisms - encry...
 
11 application security fundamentals - part 2 - security mechanisms - summary
11   application security fundamentals - part 2 - security mechanisms - summary11   application security fundamentals - part 2 - security mechanisms - summary
11 application security fundamentals - part 2 - security mechanisms - summary
 
09 application security fundamentals - part 2 - security mechanisms - logging
09   application security fundamentals - part 2 - security mechanisms - logging09   application security fundamentals - part 2 - security mechanisms - logging
09 application security fundamentals - part 2 - security mechanisms - logging
 
08 application security fundamentals - part 2 - security mechanisms - error...
08   application security fundamentals - part 2 - security mechanisms - error...08   application security fundamentals - part 2 - security mechanisms - error...
08 application security fundamentals - part 2 - security mechanisms - error...
 
06 application security fundamentals - part 2 - security mechanisms - sessi...
06   application security fundamentals - part 2 - security mechanisms - sessi...06   application security fundamentals - part 2 - security mechanisms - sessi...
06 application security fundamentals - part 2 - security mechanisms - sessi...
 
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 ...
 
05 application security fundamentals - part 2 - security mechanisms - autho...
05   application security fundamentals - part 2 - security mechanisms - autho...05   application security fundamentals - part 2 - security mechanisms - autho...
05 application security fundamentals - part 2 - security mechanisms - autho...
 
02 application security fundamentals - part 1 - security priciples
02   application security fundamentals - part 1 - security priciples02   application security fundamentals - part 1 - security priciples
02 application security fundamentals - part 1 - security priciples
 
01 Application Security Fundamentals - part 1 - introduction and goals
01 Application Security Fundamentals - part 1 - introduction and goals01 Application Security Fundamentals - part 1 - introduction and goals
01 Application Security Fundamentals - part 1 - introduction and goals
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

04 application security fundamentals - part 2 - security mechanisms - authentication

  • 2. Authentication Core Concepts Something you know Something you have Something you are A manner for identifying a user is who they claim to be. Two-Factor Authentication Leverage two of these methods for a single authentication transaction.
  • 3. Authentication Words to Live By  Enforce basic password security  Implement an account lockout for failed logins  “Forgot my password” functionality can be a problem  For web applications, use and enforce POST method
  • 4. Authentication Words to Live By: #1 Enforce basic password security • Minimum length enforcement • Require complex composition • Should not contain the user name as a substring • Users must be able to change password • Consider password expiration over time • Prevent reuse of some previous passwords when changed
  • 5. Real World Example - Twitter
  • 6. Good practices  Minimum password length = 8  Passwords must contain characters from three of the following four categories: – uppercase characters (A through Z) – lowercase characters (a through z) – base 10 digits (0 through 9) – non-alphabetic characters (for example, !, $, #, %)  Password must not contain the user's account name  Maximum password age = 6 months  Minimum password age = 1 day  Password history = 12 passwords remembered
  • 7. Authentication Words to Live By: #2  The problem – The software does not implement sufficient measures to prevent multiple failed authentication attempts within in a short time frame, making it more susceptible to brute force attacks. Implement an account lockout for failed logins
  • 8. Real World Example - Twitter
  • 9. Real World Example - eBay A famous example of this type of weakness being exploited is the eBay attack. eBay always displays the user id of the highest bidder. In the final minutes of the auction, one of the bidders could try to log in as the highest bidder three times. After three incorrect log in attempts, eBay password throttling would kick in and lock out the highest bidder's account for some time. An attacker could then make their own bid and their victim would not have a chance to place the counter bid because they would be locked out. Thus an attacker could win the auction. Mitigations:  Shorten the length of account lockout  Don't show who the highest bidder is  Don't expose user id, only expose name o Name should never be used as a key
  • 10. Authentication Words to Live By: #3  The problem – The software contains a mechanism for users to recover or change their passwords without knowing the original password, but the mechanism is weak. “Forgot my password” functionality can be a problem
  • 11. Real World Example – Yahoo! & Sarah Palin Yahoo! email used three security questions: 1. Birthday 2. Zip code 3. Where she met her husband
  • 12. Real World Example – Apple iForgot 1) iforgot.apple.com – enter Apple ID 2) Select authentication method – “answer security questions” 3) Enter date of birth 4) Answer two security questions 5) Enter new password 6) Password is reset Knowing someone’s Apple ID and DOB would allow construction of the URL after step #5. -------- The exploit was published on the day that Apple launched two-factor authentication for Apple ID accounts, which would have prevented the attack for anyone that had enabled it. Once activated, the feature replaces the security question based verification with a 4-digit code sent to the user's mobile device
  • 13. Good practices  Make sure any security question is hard to guess and hard to find the answer.  The system must only email the new password to the email account of the user resetting their password.  Assign a new temporary password rather than revealing the original password and force the user to set a new one.  Avoid sending the password via email, but rather send a reset link with a unique token with enough entropy and with a short lifespan  Consider throttling the rate of password resets so that a legitimate user can not be denied service by an attacker that tries to recover the password in a rapid succession.
  • 14. Authentication Words to Live By: #4  The problem – The web application uses the GET method to process requests that contain sensitive information, which can expose that information through the browser's history, referrers, web logs, and other sources. For web applications, use and enforce POST method
  • 15. Real World Example – Watchguard SSL-VPN