NuHarbor Security
  • Solutions
    Solutions
    Custom cybersecurity solutions that meet you where you are.
    • Overview
    • Our Approach
    • Data Icon Resources
    • Consultation Icon Consult with an expert
    • By Business Need
      • Identify Gaps in My Cybersecurity Plan
      • Detect and Respond to Threats in My Environment
      • Fulfill Compliance Assessments and Requirements
      • Verify Security With Expert-Led Testing
      • Manage Complex Cybersecurity Technologies
      • Security Monitoring With Splunk
    • By Industry
      • State & Local Government
      • Higher Education
      • Federal
      • Finance
      • Healthcare
      • Insurance
    Report 2023-2024 SLED Cybersecurity Priorities Report
    2023-2024 SLED Cybersecurity Priorities Report
    Read Report
  • Services
    Services
    Outcomes you want from a team of experts you can trust.
    • Overview
    • Data Icon Resources
    • Consultation Icon Consult with an expert
    • Security Testing
      • Penetration Testing
      • Application Penetration Testing
      • Vulnerability Scanning
      • Wireless Penetration Testing
      • Internal Penetration Testing
      • External Penetration Testing
    • Assessment & Compliance
      • CMMC Compliance
      • NIST 800-53
      • HIPAA Security Standards
      • ISO 27001
      • MARS-E Security Standards
      • New York Cybersecurity (23 NYCRR 500)
      • Payment Card Industry (PCI)
    • Advisory & Planning
      • Security Strategy
      • Incident Response Planning
      • Security Program Reviews
      • Security Risk Assessments
      • Virtual CISO
      • Policy Review
    • Managed Services
      • Curated Threat Intelligence
      • Managed Detection and Response (MDR)
      • Sentinel Managed Extended Detection and Response (MXDR)
      • SOC as a Service
      • Splunk Managed Services
      • Tenable Managed Services
      • Vendor Security Assessments
      • Vulnerability Management
      • Zscaler Support Services
    Report 2023-2024 SLED Cybersecurity Priorities Report
    2023-2024 SLED Cybersecurity Priorities Report
    Read Report
  • Partners
  • Resources
    Resources
    Explore reports, webinars, case studies, and more.
    • Browse Resources
    • Consultation Icon Consult with an expert
    • Blog icon Blog
    • Podcast icon Podcast
    • Annual SLED CPR icon Annual SLED CPR
    • Downloadable Assets icon Downloadable Assets
    Report 2023-2024 SLED Cybersecurity Priorities Report
    2023-2024 SLED Cybersecurity Priorities Report
    Read Report
  • Company
    Company
    We do cybersecurity differently – the right way.
    • Overview
    • Data Icon Resources
    • Consultation Icon Consult with an expert
    • Leadership
    • News
    • Careers
    • Contact
    Report 2023-2024 SLED Cybersecurity Priorities Report
    2023-2024 SLED Cybersecurity Priorities Report
    Read Report
  • Consult with an expert
  • Client support
  • Careers
  • Contact
1.800.917.5719
NuHarbor Security Blog
    • Compliance
    • Cybersecurity Technology
    • Security Operations
    • Industry Insights
    • Security Testing
    • Advisory and Planning
    • Application Security
    • Managed Detection and Response
    • Threat Intelligence
    • NuHarbor
    • Managed Services
    • Cyber Talent
March 11, 2019

10 Application Security Authentication Requirements

Justin Fimlaid Justin Fimlaid

Authentication is a critical piece of any application. It’s also a commonly attacked piece of security architecture, so it’s important to get it right. When we talk about authentication, we’re referring to the act of establishing that someone or some system is authentic and identity claims are correct. Authentication also needs to include the resistance of impersonation and interception of passwords or other authentication mechanisms.

The most common form of authentication is based on a username and password combination. As the level of security increases within an application, simple usernames and passwords are no longer acceptable as passwords are often considered pre-breached.

Authentication requirements are important because they help to fulfill many compliance requirements, including PCI DSS 3.2, NIST 800-53, and NIST 800-63.

When we start to break down authentication requirements, the list per OWASP Verification Standard 4.0, includes:

  1. Password Requirements
  2. General Authenticator Requirements
  3. Authenticator Lifecycle Requirements
  4. Credential Storage Requirements
  5. Credential Recovery Requirements
  6. Look-up Secret Verifiers
  7. Out-of-Band Verifiers
  8. Single or Multifactor One-Time Verifiers
  9. Cryptographic Software and Devices Verifiers
  10. Service Authentication
Password Requirements

Passwords are considered “something you know” and are often single-factor authenticators. Today, passwords pose a significant challenge to authentication as billions of usernames and passwords have been disclosed and released on the internet. Most passwords can be easily cracked using common penetration testing techniques. With widely accessible compute horsepower, cracking hashes is made easier, and the technique made available to more people with either positive or nefarious intent. Additional security controls can be implemented to offset the risk of pre-compromised usernames and passwords, including techniques like multifactor authentication, reuse tokens (e.g., FIDO), and links to credential service providers (CSPs) providing federation. CSPs can validate a contextual identity, not just a single authentication.

General Authenticator Requirements

Authenticator agility is essential for future-proofing applications. Be sure to refactor application verifiers to allow additional authenticators as per user preferences, and the retiring of deprecated or unsafe authenticators in an orderly fashion.

Authenticator Lifecycle Requirements

Authenticators are passwords, soft tokens, hardware tokens, and biometric devices. The lifecycle of authenticators is critical to the security of an application – if anyone can self-register an account with no evidence of identity, there can be little trust in the identity assertion. For social media sites like Reddit, that’s perfectly okay. For banking systems, a greater focus on the registration and issuance of credentials and devices is critical to the security of the application.

NOTE: Passwords should not have a maximum lifetime or be subject to password rotation. Passwords should be regularly checked for their presence in publicly available breach data repositories. Those discovered should immediately be replaced.

Credential Storage Requirements

Architects and developers should rigorously follow strong credential storage requirements when building or refactoring code. This section can only be fully verified through source code review or integration testing. NIST 800-63 section 5.1.1.2 contains a list of approved one-way key derivation functions.

Credential Recovery Requirements

This is an easy requirement, but sometimes difficult in technical execution. Any time a user is being asked to establish an initial password, change an existing password, or recover a lost password, the current password can’t be exposed. Additionally, any secret questions or hints are not exposed, and multifactor authentication resets must exercise the same rigor required during initial setup.

Look-up Secret Verifier Requirements

This is generally regarded as “something you have.” This requirement can come in the form of pre-generated secret codes, social media recovery codes, or a grid containing random values.

Out-of-Band Verifier Requirements

Secure out-of-band authenticators are physical devices that can communicate with the verifier over a secure secondary channel (e.g., push notifications to mobile devices). This type of authenticator is considered “something you have.” When a user wishes to authenticate, the verifying application sends a message to the out-of-band authenticator via a direct or indirect connection to the authenticator through a third-party service. The message contains an authentication code, typically a random number or a modal approval dialog. The verifying application waits to receive the authentication code through the primary channel and compares the hash of the received value to the hash of the original authentication code. If they match, the out-of-band verifier can assume that the user has authenticated.

Single or Multifactor, One-Time Verifier Requirements

Single-factor one-time passwords (OTPs) are physical or soft tokens that display a continually changing pseudorandom one-time challenge. These devices make phishing (i.e., impersonation) difficult, but not impossible. This type of authenticator is considered “something you have.” Multifactor tokens are similar to single factor OTPs but require a valid PIN code, biometric unlocking, USB insertion or NFC pairing, or some additional value (e.g., transaction signing calculators) to be entered to create the final OTP.

Cryptographic Software and Devices Requirements

Cryptographic security keys are smart cards or FIDO keys in which the user must plug in or pair the cryptographic device to the computer to complete authentication. Verifiers send a challenge once to the cryptographic devices or software, and the device or software calculates a response based upon a securely stored cryptographic key. The requirements for single-factor cryptographic devices and software, and multifactor cryptographic devices and software, are the same, as verification of the cryptographic authenticator proves possession of the authentication factor.

Service Authentication Requirements

If your software uses service authenticators, they should not be stored in clear text. Any integration secrets should not use static API keys or shared privileged accounts. Passwords, database integrations, third-party systems, seeds and internal secrets, and API keys should be managed securely and not included in source code or stored in repositories.

If you’re looking for support with application security or are looking for web application penetration testing, dynamic code reviews, or static code reviews, contact us today.

Included Topics

  • Compliance,
  • Application Security,
  • Cybersecurity Technology
Justin Fimlaid
Justin Fimlaid

Justin (he/him) is the founder and CEO of NuHarbor Security, where he continues to advance modern integrated cybersecurity services. He has over 20 years of cybersecurity experience, much of it earned while leading security efforts for multinational corporations, most recently serving as global CISO at Keurig Green Mountain Coffee. Justin serves multiple local organizations in the public interest, including his board membership at Champlain College.

Related Posts

Threat Intelligence 2 min read
Why MFA Alone Won’t Save You
Why MFA Alone Won’t Save You
Read More
Cybersecurity Technology 5 min read
5 Tips to Secure Your Devices Read More
3 min read
Implementing Robust PAM With CyberArk Read More

Subscribe via Email

Subscribe to our blog to get insights sent directly to your inbox.

Subscribe Here!

Latest Pwned episodes

Episode 200 - Reflections of Pwned...Until Next Time
April 03, 2024
Episode 200 - Reflections of Pwned...Until Next Time
Listen Now
Episode 199 - When a BlackCat Crosses Your Path...
March 21, 2024
Episode 199 - When a BlackCat Crosses Your Path...
Listen Now
Episode 198 - Heard it Through the Grapevine - Beyond the Beltway, 2024
March 08, 2024
Episode 198 - Heard it Through the Grapevine - Beyond the Beltway, 2024
Listen Now
NuHarbor Security logo
NuHarbor Security

553 Roosevelt Highway
Colchester, VT 05446

1.800.917.5719

  • Solutions
  • Services
  • Partners
  • Resources
  • Company
  • Contact
  • Privacy Policy
Connect
  • Twitter
  • Linkedin
  • YouTube
©2025 NuHarbor Security. All rights reserved.