githubEdit

WebAuthn & Passkeys

Security testing for FIDO2, WebAuthn, and passkey implementations.

Skill Level: Intermediate to Advanced Prerequisites: Authentication concepts, cryptography basics, web security

Overview

WebAuthn/FIDO2 provides phishing-resistant authentication using:
- Public key cryptography
- Hardware authenticators (YubiKey, etc.)
- Platform authenticators (Touch ID, Windows Hello)
- Passkeys (synced across devices)

Components:
- Relying Party (RP): The website/service
- Authenticator: Hardware or platform key
- Client: Browser implementing WebAuthn API

Attack Surface

Potential weaknesses:
1. RP implementation bugs
2. Authenticator vulnerabilities
3. Attestation bypass
4. Fallback authentication
5. Account recovery flows
6. Session management post-auth
7. Origin validation issues

Registration Flow Testing

Intercept Registration

Test Cases

Authentication Flow Testing

Intercept Authentication

Test Cases

Common Vulnerabilities

Weak Challenge Generation

Missing RP ID Validation

Fallback Authentication Bypass

Origin Confusion

Counter Bypass

Passkey-Specific Testing

Synced Credentials

Hybrid/Cross-Device Auth

Testing Tools

Browser DevTools

WebAuthn Debugger

Burp Suite

Python Testing

Bypass Techniques

Attestation Bypass

User Verification Bypass

Resident Credential Attacks

Account Recovery Testing

Implementation Checklist

  • OIDC - WebAuthn + OIDC integration

  • OAuth - OAuth with WebAuthn

  • JWT - Token-based auth comparison

Last updated

Was this helpful?