Closed Bug 1689612 Opened 4 years ago Closed 3 years ago

WebAuthn does not specify the authenticator type during attestation

Categories

(GeckoView :: General, defect, P1)

Unspecified
Android

Tracking

(firefox92 fixed)

RESOLVED FIXED
92 Branch
Tracking Status
firefox92 --- fixed

People

(Reporter: jonalmeida, Assigned: agi)

References

(Blocks 1 open bug)

Details

(Whiteboard: [geckoview:m91][geckoview:m92])

Attachments

(1 file)

When GeckoView (also true in Fennec) requests for authentication, we do not provide the authenticator type which is used for sites that may need to specific a cross-platform (e.g. FIDO key) instead of a platform-specific (e.g. biometric reader)

Below are three cases that should work:

Undefined

Steps to reproduce

  1. Go to webauthn.io
  2. Enter any example username and "Authenticator Type" as "Undefined".
  3. Click register.

Expected

  • The authenticator on Android should present NFC, Bluetooth, USB, and Biometric options.

Actual

  • The authenticator on Android does present all the above options as the expected.

Cross-platform

Steps to reproduce

  1. Go to webauthn.io
  2. Enter any example username and "Authenticator Type" as "Cross platform".
  3. Click register.

Expected

  • The authenticator on Android should present NFC, Bluetooth, and USB options.

Actual

  • The authenticator on Android presents NFC, Bluetooth, USB, and Biometric options.

Platform

Steps to reproduce

  1. Go to webauthn.io
  2. Enter any example username and "Authenticator Type" as "Platform (TPM)".
  3. Click register.

Expected

  • The authenticator on Android should present only the Biometric option.

Actual

  • The authenticator on Android presents NFC, Bluetooth, USB, and Biometric options.
Blocks: webauthn
Depends on: 1549418

I realized later that a table is easier to read showing which options should be supported:

Authenticator Type NFC Bluetooth USB Biometric
Undefined x x x x
Cross-platform x x x
Platform-specific x
Severity: -- → S3
Priority: -- → P2
Whiteboard: [geckoview:m88]
Summary: WebAuthn does not specific the authenticator type during attestation → WebAuthn does not specify the authenticator type during attestation
Whiteboard: [geckoview:m88] → [geckoview:m89]
Whiteboard: [geckoview:m89] → [geckoview:m90]
Whiteboard: [geckoview:m90] → [geckoview:m90?]
Whiteboard: [geckoview:m90?] → [geckoview:m91?]
Priority: P2 → P1
Whiteboard: [geckoview:m91?] → [geckoview:m91]
Rank: 4
Assignee: nobody → agi
Whiteboard: [geckoview:m91] → [geckoview:m91][geckoview:m92]

The fact that we were checking for extensions seems like a typo to me? We
never set anything other than fidoAppId in the extensions bundle, which
makes sense to me (authenticatorAttachment is not an extension from what I can
tell).

Pushed by asferro@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e112ed192dde Support WebAuthn authenticator type on Android. r=tjr,dveditz,aklotz
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 92 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: