49
The future of user authentication on the web Lucas Garron CS 253 Guest Talk 2019-11-06 WebAuthn

CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

The future of user authentication on the web 🤞

Lucas GarronCS 253 Guest Talk2019-11-06

WebAuthn

Page 2: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

About Me

Page 3: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

You may know me from:

Chrome DevTools Securitybadssl.com, hstspreload.org

Speedcubing, Dancing

Page 4: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthnat GitHubBen Toews (@mastahyeti) implemented U2F.

I wrote most of the WebAuthn implementation.

Page 5: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

A few words on Responsibility

Page 6: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06
Page 7: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Security and Privacyare not “add-on features”

Page 8: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Passwords (Redux)

“Use bcrypt”Terribly phishable

HaveIBeenPwned.com

Page 9: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

AuthenticationFactors

Page 10: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

FactorSomethingyou . ‽

Page 11: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

FactorSomethingyou know.

Example:Password

Page 12: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

FactorSomethingyou have.

Example:Security Key

Page 13: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

FactorSomethingyou are.

Example:Fingerprint

Page 14: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Classical “Factors”

Page 15: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Stop thinking about factors

Page 16: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthn is supposed to help you…Stop thinking about factors

Page 17: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthn

Page 18: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthn

Afor many

browser APIauthentication factors.

Page 19: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthn

navigator.credentials.create(...)

navigator.credentials.get(...)

Page 21: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Demo Time!webauthn.iowebauthntest.azurewebsites.net

Page 22: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Windows HelloFingerprint (Android)

Touch ID (Chrome macOS)

Try it yourself!

Page 23: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Stop thinking about factors

Page 24: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

A tour of factors

Page 25: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Email

“We’ve emailedYou a login link”.

Page 26: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Security Images

Not a user auth factor.

Useless against“Meddler inthe Middle”

attacks

Page 27: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

SMS

Page 28: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

TOTPTime-basedOne-Time“Password”

Page 29: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

HOTPHash-basedOne-Time“Password”

(no one uses this)

Page 30: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

PAKEPasswordAuthenticatedKeyExchange

(uncommon on the web)

Page 31: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Different security strengths

Page 32: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Client Certificates

Page 33: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

SSH Key

Page 34: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Push notifications

Page 35: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Something you… can do?

Page 36: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Under the hood

Page 38: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

The experimental non-standard precursor API

to WebAuthn. Still used.

U2F

Page 39: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Used by your browser/OSto communicate with

security keys

CTAP2

Page 40: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

FIDO2

≈ WebAuthn + CTAP2

Page 41: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Implementing WebAuthn

Page 42: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

User-Facing Terminology

Page 43: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

User-Facing Terminology

For now: “security key”

Page 44: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

User-Facing Terminology

In the future:“using your device”?

Page 45: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Configuration

User presence vs. user verification

Resident key vs. non-resident key

Platform vs. roaming

Page 46: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

@github/webauthn-json

Page 47: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Registration

New device

Re-authentication

Recovery

User Flows

Page 48: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

Account Recovery

A big unsolved problem.

Page 49: CS 253 Guest Talk WebAuthn Lucas Garron The future of user ... 14.pdf · The future of user authentication on the web 🤞 WebAuthn Lucas Garron CS 253 Guest Talk 2019-11-06

WebAuthn: A Journey

Worth adopting, but

there’s a long way to go.