~/talk

The insecurity of OAuth 2.0 in frontends

Talkat NDC Security 2023 · 2023-01-16..01-19· [security, web-platform]
slides:none on file

Claim: OAuth 2.0 flows run entirely in the browser are fundamentally insecure. Demonstrations build a toy restaurant app, a malicious server and an attack.js payload that first exfiltrates tokens from storage, then performs a silent iframe auth to get independent refresh/access tokens, and finally shows a service worker unregister bypass that defeats in-browser mitigations. Refresh token rotation is sidestepped by stealing a refresh token and resuming its chain while the client is offline. Practical fix is a tiny Backend-for-Frontend proxy that holds confidential client auth and prevents token misuse.

AI-written summary · about

  1. 0:00OAuth 2.0 insecurity in frontends
  2. 2:29OAuth 2.0 for browsers
  3. 14:20Token exfiltration threat
  4. 21:03Refresh token rotation limits
  5. 28:48Malicious JS bypassing OAuth
  6. 37:39Browser-only OAuth flaws
  7. 44:41How a Backend for Frontend (BFF) solves the problem
  8. 53:22Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.