UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets...

46
UAF Tutorial

Transcript of UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets...

Page 1: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Tutorial

Page 3: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Cloud Authentication

Page 4: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Password might be entered into untrusted App / Web-site (“phishing”)

Password could be stolen from the server

Too many passwords to remember Æ re-use / cart abandonment

Inconvenient to type password on phone

Password Issues

Page 5: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

OTP Issues OTP vulnerable to real-time MITM and MITB attacks

SMS security questionable, especially when Device is the phone

OTP HW tokens are expensive and people don’t want another device

Inconvenient to type OTP on phone

Page 6: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face
Page 7: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Attack Classes

Remotely attacking central servers steal data for impersonation

1

Physically attacking user devices

misuse them for impersonation

6

Physically attacking user devices

steal data for impersonation

5

Remotely attacking lots of user devices

steal data for impersonation

Remotely attacking lots of user devices

misuse them for

impersonation

Remotely attacking lots of user devices

misuse

authenticated sessions

2 3 4

Scalable attacks

Physical attacks possible on lost or stolen devices (|3% in the US in 2013)

Page 8: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Summary

1. Passwords are insecure and inconvenient especially on mobile devices

2. Alternative authentication methods are silos and hence don‘t scale to large scale user populations

3. The required security level of the authentication depends on the use

4. Risk engines need information about the explicit authentication security for good decision

Page 9: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO work?

Device

Page 10: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO UAF work?

… SE

Page 11: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO UAF work?

Can recognize the user (i.e. user verification), but doesn’t have an identity proof of the user.

Same Authenticator as registered before? Same User as

enrolled before?

Page 12: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO UAF work?

Can recognize the user (i.e. user verification), but doesn’t have an identity proof of the user.

Same Authenticator as registered before? Same User as

enrolled before?

Identity binding to be done outside FIDO: This this “John Doe with customer ID X”.

Page 13: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO UAF work?

… SE

How is the key protected (TPM, SE, TEE, …)? What user verification

method is used?

Page 14: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Attestation & Metadata

FIDO SERVER FIDO AUTHENTICATOR

Metadata

Signed Attestation Object

Verify using trust anchor included in Metadata

Understand Authenticator security characteristic by looking into Metadata (and potentially other sources)

Page 15: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

How does FIDO UAF work?

5. Generate key pair in Authenticator to protect

against phishing

7. Verify user before signing authentication

response

4. Provide cryptographic proof of authenticator model

1. Use Metadata to understand

Authenticator model security characteristic

2. Define policy of acceptable Authenticators

6. Use site-specific keys in order to protect privacy

3. Store public keys on the server (no secrets)

8. Use channel binding to protect against

MITM

Page 16: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

FIDO Building Blocks

Page 17: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Registration Overview

FIDO AUTHENTICATOR

FIDO SERVER FIDO CLIENT

Send Registration Request: - Policy - Random Challenge

Start registration

Authenticate user Generate key pair Sign attestation object: • Public key • AAID • Random Challenge • Name of relying party Signed by attestation key

Verify signature Check AAID against policy Store public key

AAID = Authenticator Attestation ID, i.e. model ID

Page 18: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Registration Overview (2)

Physical Identity

Virtual Identity

FIDO AUTHENTICATOR FIDO SERVER

WEB Application

{ userid=1234, [email protected], known since 03/05/04, payment history=xx, … }

{ userid=1234, pubkey=0x43246, AAID=x +pubkey=0xfa4731, AAID=y }

Registration AAID y key for foo.com: 0xfa4731

Relying Party foo.com

Link new Authenticator to existing userid

“Know Your Customer” rules

Legacy Authentication

Page 19: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 20: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 21: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 22: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 23: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 24: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Page 25: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

[email protected] Pat Johnson

Page 26: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

Pat Johnson 650 Castro Street Mountain View, CA 94041 United States

SignedData: • SignatureAlg • Hash(FinalChallenge) • Authenticator random • Signature Counter • Signature FinalChallenge=AppID | FacetID | channelBinding | challenge

Page 27: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Authentication

[email protected]

Pat Johnson

Payment complete!

Return to the merchant’s web site to continue shopping

Return to the merchant

Page 28: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Transaction Confirmation

SignedData: • SignatureAlg • Hash(FinalChallenge) • Authenticator random • Signature Counter • Hash(Transaction Text) • Signature FinalChallenge=AppID | FacetID | channelBinding | challenge

Page 29: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

FIDO Authenticator

User Verification /

Presence Attestation Key

Authentication Key(s)

Injected at manufacturing, doesn’t change

Generated at runtime (on

Registration)

Optional Components

Transaction Confirmation

Display

The FIDO Authenticator Concept

Page 30: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

FIDO Authenticator in SIM Card

SIM Card

Attestation Key

Authentication Key(s)

User Verification (PIN)

Using Secure Hardware

Page 31: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Trusted Execution Environment (TEE)

FIDO Authenticator as Trusted Application (TA)

User Verification / Presence Attestation Key

Authentication Key(s)

Store at Enrollment

Compare at Authentication Unlock after comparison

Client Side Biometrics

Page 32: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Trusted Execution Environment (TEE)

FIDO Authenticator as Trusted Application (TA)

User Verification / Presence

Transaction Confirmation

Display

Secure Element

Attestation Key

Authentication Key(s)

e.g. GlobalPlatform Trusted UI

Combining TEE and SE

Page 33: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

FIDO & Federation First Mile Second Mile

Page 34: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

OEM Enabled: Lenovo ThinkPads with Fingerprint Sensors

OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets

Clients available for these operating systems:

Software Authenticator Examples: Speaker/Face recognition, PIN, QR Code, etc.

Aftermarket Hardware Authenticator Examples: USB fingerprint scanner, MicroSD Secure Element

FIDO ReadyTM Products Shipping today

Page 35: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

FIDO is used Today

Page 36: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

Conclusion • Different authentication use-cases lead to different

authentication requirements • Today, we have authentication silos • FIDO separates user verification from authentication

protocol and hence supports all user verification methods

• FIDO supports scalable security and convenience • User verification data is known to Authenticator only • FIDO complements federation Î Consider developing or piloting FIDO-based authentication solutions

Dr. Rolf Lindemann, Nok Nok Labs, [email protected]

Page 37: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 38: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 39: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 40: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 41: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 42: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

UAF Registration

Page 43: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

[email protected]

Pat Johnson

Link your fingerprint

UAF Registration

Page 44: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

[email protected]

Pat Johnson

Link your fingerprint

UAF Registration

Page 45: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

[email protected]

Pat Johnson

Link your fingerprint

UAF Registration

Key Registration Data: • Hash(FinalChallenge) • AAID • Public key • KeyID • Registration Counter • Signature Counter • Signature (attestation key) FinalChallenge=AppID | FacetID | channelBinding | challenge

Page 46: UAF Tutorial - FIDO Alliance · OEM Enabled: Samsung Galaxy S5 smartphone & Galaxy Tab S tablets Clients available for these operating systems: Software Authenticator Examples: Speaker/Face

[email protected]

Pat Johnson

UAF Registration