Slide 1

Slide 1 text

これまでの認証とパスキーのおさらい 倉林 雅 OAuth & OpenID Connect 勉強会

Slide 2

Slide 2 text

2
 倉林雅(kura) OpenIDファウンデーション・ジャパン 理事・エバンジェリスト OpenID・OAuth・パスキー技術の啓発・教育活動に 携わり、現在は某インターネット企業にて プロダクトマネージャーを担当。

Slide 3

Slide 3 text

3
 パスキーのすべて ──導入・UX設計・実装 書店・オンラインストアにて絶賛発売中 よろしくお願いいたします

Slide 4

Slide 4 text

OAuth・OpenID Connectと パスキーの位置付け 4


Slide 5

Slide 5 text

OAuth・OpenID Connectからみた視点 ● 仕様のスコープ外であるユーザー認証手段としてパスキーが利用できる ● パスワードなどよりも強固に連携サービスのアカウントを守ることができる ● パスキーによってより簡単なログインが実現できUX向上が期待できる ● ID連携によるSSOの代わりとしてもパスキーが利用できる パスキーからみた視点 ● パスキーに加えて他の認証方法としてID連携によるSSOが利用できる ● パスキーが利用できない状況におけるアカウントリカバリーとして ID連携が利用できる 互いに補完する関係 5


Slide 6

Slide 6 text

OAuth・OpenID Connectからみた視点 ● 仕様のスコープ外であるユーザー認証手段としてパスキーが利用できる ● パスワードなどよりも強固に連携サービスのアカウントを守ることができる ● パスキーによってより簡単なログインが実現できUX向上が期待できる ● ID連携によるSSOの代わりとしてもパスキーが利用できる パスキーからみた視点 ● パスキーに加えて他の認証方法としてID連携によるSSOが利用できる ● パスキーが利用できない状況におけるアカウントリカバリーとして ID連携が利用できる 互いに補完する関係 6
 本日はOAuth・OpenID Connectを補完する 認証手段としてのパスキーをご紹介します

Slide 7

Slide 7 text

これまでの認証と課題の振り返り 7


Slide 8

Slide 8 text

パスワード 8


Slide 9

Slide 9 text

しくみ ● ユーザー名とパスワードを提示してもらい、あらかじめ登録したものとの 一致を確認する ● 機種や端末依存はなく、どこからでも利用可能 課題 ● 弱いパスワードを作ってしまう ● 同じパスワードを使い回してしまう ● フィッシングサイトに入力してしまう パスワード 9


Slide 10

Slide 10 text

しくみ ● サイトごとに強力なパスワードを自動生成してくれ、保存・管理してくれる ● ドメインの一致するサイトでのみパスワードを自動入力してくれる ● 異なるデバイスでも保存したパスワードを同期してくれる 課題 ● ユーザーに利用を強制することはできない ● コピー&ペーストでフィッシングサイトに手動入力できてしまう パスワードマネージャー 10


Slide 11

Slide 11 text

二要素認証 11


Slide 12

Slide 12 text

しくみ ● パスワードに加えて、SMSに送信した6桁程度の短い有効期限の OTP(One-Time Password)を入力し一致を検証する 課題 ● SMSが受信できないといけない(利用環境に制約がある) ● 送信コストがかかってしまう ● 携帯電話の店頭やサポートを欺きなりすますSIMスワップのリスクあり ● OTPが有効である間にリアルタイムフィッシングされてしまう SMS OTP 12


Slide 13

Slide 13 text

しくみ ● パスワードに加えて、メールアドレスに送信した6桁程度の短い有効期限のOTPを 入力し一致を検証する 課題 ● メールアカウントの乗っ取りのリスクあり ● OTPが有効である間にリアルタイムフィッシングされてしまう メールOTP 13


Slide 14

Slide 14 text

しくみ ● パスワードに加えて、専用アプリに表示された30秒程度で変わる通常6桁の数字か らなるOTPを入力し検証する ● サービスごとにシークレットを登録しておく 課題 ● デバイスの乗り換え時に再設定が必要となる ● 専用アプリのインストールが必要になる ● OTPが有効である間にリアルタイムフィッシングされてしまう TOTP(Time-Based One-Time Password) 14


Slide 15

Slide 15 text

しくみ ● パスワードに加えて、ログイン済みアプリにプッシュ通知を送信し、 ログインを承認する 課題 ● アプリを提供する必要がある ● 多要素認証疲労攻撃(MFA Fatigue Attack)されてしまう プッシュ通知 15


Slide 16

Slide 16 text

しくみ ● USB、BLE、NFCなどで公開暗号方式による電子署名を検証する ● パスワードに加えて二要素認証とすることもできる(FIDO U2F、FIDO2 WebAuthn) 課題 ● セキュリティキーの購入と持ち歩く必要あり ○ 紛失や破損も想定しないといけない セキュリティキー 16


Slide 17

Slide 17 text

パスワードレス 17


Slide 18

Slide 18 text

しくみ ● メールを送信し記載されたリンク先にアクセスしたことを確認する 課題 ● Webサイトとメールクライアントを切り替えなければならない ○ リンクの遷移先でログイン状態となるため、異なる端末でメールを 開いてしまうとログイン体験が損なわれる ● メールアカウントの乗っ取りのリスクあり マジックリンク 18


Slide 19

Slide 19 text

しくみ ● SMSに送信した6桁程度の短い有効期限のOTPを入力し一致を検証する ● WebOTP APIやautocompleteで対象ドメインへの自動入力も可能 課題 ● SMSが受信できないといけない(利用環境に制約がある) ● 送信コストがかかってしまう ● 携帯電話の店頭やサポートを欺きなりすますSIMスワップのリスクあり ● OTPが有効である間にリアルタイムフィッシングがされてしまう SMS認証 19


Slide 20

Slide 20 text

ID連携 20


Slide 21

Slide 21 text

しくみ ● 認証機能(OpenID ConnectやSAML)を提供する第三者のサービス (Identity Provider、IdP)と連携する 課題 ● IdP(PF)の影響を受けてしまう ● サービスをIdPに把握されてしまったり、サードパーティCookieで トラッキングが可能になる場合がある ● 複数IdPのログインボタンの表示で混乱につながる(NASCAR問題) ID連携 21


Slide 22

Slide 22 text

パスキーの概要 22


Slide 23

Slide 23 text

● アカウントに紐づける形で公開鍵ペアを作成 ○ デバイスのアンロック機構がトリガー ○ 公開鍵をサーバーに登録、秘密鍵はデバイスに保存 ● ログイン時はその秘密鍵(パスキー)を使って署名を行う 公開鍵暗号方式 23
 Server Client 秘密鍵(パスキー)
 公開鍵


Slide 24

Slide 24 text

パスワードマネージャーで管理 24
 ● パスワードマネージャーで管理され、ログイン時にはブラウザーが ドメインをチェックする ● 秘密鍵(パスキー)はパスワードマネージャーを介して デバイス間を同期 Client Password Manager

Slide 25

Slide 25 text

パスキーの登録 登録のUXは大きく2つに分類できる ● アカウントの新規登録に登録 ● 既存アカウントへ任意のタイミングで登録 既存アカウントへの登録には工夫が必要 ● ログイン直後にパスキー登録を促す プロモーションを表示 ● パスキーの管理画面から登録 ● パスワードログイン時に自動登録など 25


Slide 26

Slide 26 text

パスキーの認証 ログイン体験は2つ考えられる ワンボタンログイン方式 ● ログインボタンをタップしアカウント を選択して認証する フォームオートフィル方式 ● パスワードログインのフォームの オートフィル機能にアカウントを表 示し認証する 26


Slide 27

Slide 27 text

パスキーの優れている点 ● リモート攻撃が難しい ● 脆弱なクレデンシャルを作ることができない ● 公開鍵が漏れてもアカウントが盗まれる危険性は低い ● フィッシング攻撃に強い ● ログイン体験がシンプル 27


Slide 28

Slide 28 text

パスキーで解決できる課題 1/3 28
 認証方法 課題 パスキー パスワード 弱いパスワードを作ってしまう ✅ 同じパスワードを使い回してしまう ✅ フィッシングサイトに入力してしまう ✅ パスワードマネージャー ユーザーに利用を強制することはできない 🔼 コピー&ペーストでフィッシングサイトに手動入力できてしまう ✅ SMS OTP SMSが受信できないといけない(利用環境に制約がある) 🔼 送信コストがかかってしまう ✅ 携帯電話の店頭やサポートを欺きなりすます SIMスワップのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングされてしまう ✅

Slide 29

Slide 29 text

パスキーで解決できる課題 1/3 29
 認証方法 課題 パスキー パスワード 弱いパスワードを作ってしまう ✅ 同じパスワードを使い回してしまう ✅ フィッシングサイトに入力してしまう ✅ パスワードマネージャー ユーザーに利用を強制することはできない 🔼 コピー&ペーストでフィッシングサイトに手動入力できてしまう ✅ SMS OTP SMSが受信できないといけない(利用環境に制約がある) 🔼 送信コストがかかってしまう ✅ 携帯電話の店頭やサポートを欺きなりすます SIMスワップのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングされてしまう ✅ パスキーもパスワードマネージャーのしくみを利用しており、すべて の環境でサポートをしているわけではない パスキーはPCでも利用できるため SMSに比べると利用可能な環境は多いが、 パスキーをサポートしていない環境もある

Slide 30

Slide 30 text

パスキーで解決できる課題 2/3 30
 認証方法 課題 パスキー メールOTP メールアカウントの乗っ取りのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングされてしまう ✅ TOTP デバイスの乗り換え時に再設定が必要となる 🔼 専用アプリのインストールが必要になる 🔼 OTPが有効である間にリアルタイムフィッシングされてしまう ✅ プッシュ通知 アプリを提供する必要がある ✅ 多要素認証疲労攻撃( MFA Fatigue Attack)されてしまう ✅ セキュリティキー セキュリティキーの購入と持ち歩く必要あり ✅ マジックリンク Webサイトとメールクライアントを切り替えなければならない ✅ メールアカウントの乗っ取りのリスクあり ✅

Slide 31

Slide 31 text

パスキーで解決できる課題 2/3 31
 認証方法 課題 パスキー メールOTP メールアカウントの乗っ取りのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングされてしまう ✅ TOTP デバイスの乗り換え時に再設定が必要となる 🔼 専用アプリのインストールが必要になる 🔼 OTPが有効である間にリアルタイムフィッシングされてしまう ✅ プッシュ通知 アプリを提供する必要がある ✅ 多要素認証疲労攻撃( MFA Fatigue Attack)されてしまう ✅ セキュリティキー セキュリティキーの購入と持ち歩く必要あり ✅ マジックリンク Webサイトとメールクライアントを切り替えなければならない ✅ メールアカウントの乗っ取りのリスクあり ✅ 同期しないパスキーの場合や、 同期パスキーでもOSをまたいで同期できない場合には再設定が必要 3rd Partyパスワードマネージャーの場合には アプリやブラウザーの拡張機能をインストールする必要あり

Slide 32

Slide 32 text

パスキーで解決できる課題 3/3 32
 認証方法 課題 パスキー SMS認証 SMSが受信できないといけない(利用環境に制約がある) 🔼 送信コストがかかってしまう ✅ 携帯電話の店頭やサポートを欺きなりすます SIMスワップのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングされてしまう ✅ ID連携 IdP(PF)の影響を受けてしまう 🔼 サービスをIdPに把握されてしまったり、サードパーティ Cookieでトラッキングが可 能になる場合がある ✅ 複数IdPのログインボタンの表示で混乱につながる( NASCAR問題) 🔼

Slide 33

Slide 33 text

パスキーで解決できる課題 3/3 33
 認証方法 課題 パスキー SMS認証 SMSが受信できないといけない(利用環境に制約がある) 🔼 送信コストがかかってしまう ✅ 携帯電話の店頭やサポートを欺きなりすます SIMスワップのリスクあり ✅ OTPが有効である間にリアルタイムフィッシングがされてしまう ✅ ID連携 IdP(PF)の影響を受けてしまう 🔼 サービスをIdPに把握されてしまったり、サードパーティ Cookieでトラッキングが可 能になる場合がある ✅ 複数IdPのログインボタンの表示で混乱につながる( NASCAR問題) 🔼 パスワードマネージャーの影響を受けてしまう 既存のログインフォームと ワンボタンログイン方式を並列させると混乱につながる可能性あり パスキーもパスワードマネージャーのしくみを利用しており、すべて の環境でサポートをしているわけではない

Slide 34

Slide 34 text

パスキーのよくある疑問・誤解 34


Slide 35

Slide 35 text

同期しないパスキーの方が安全なのでは? ● 同期するパスキーと同期しないパスキーの2種類がある ○ 同期しないパスキーは認証器の仕様に依存するため、パスキーが作成できない 可能性あり ● 同期しないパスキーであれば、セキュリティキーなどを物理的に 窃取されない限りはリモート攻撃は不可能 ● 同期パスキーよりも同期しないパスキーの方が安全ではある ● 一方で、同期しないパスキーを登録した認証器に依存するため、 ログインやアカウントリカバリーの観点でUXが低下することを 考慮しなければいけない 35


Slide 36

Slide 36 text

パスワードマネージャーのアカウントが乗っ取られたら? ● パスワードマネージャーが乗っ取られたらパスキーが 一網打尽になる可能性はある ● パスワードマネージャーの仕様にもよるが、Googleパスワード マネージャーでは、デバイスのPINまたは専用のPINの登録が 必須であり、パスキーの暗号化に用いられている ● パスワードマネージャーのアカウントが乗っ取られても、 PINで復号されるまでにパスキーを無効化するなどの対策を 講じることで被害を最小化することはできる 36


Slide 37

Slide 37 text

パスキーにアクセスできなくなったら? ● 同期するパスキーであっても、パスワードマネージャーが使えない ブラウザーや同期できないOSの場合には、パスキーにアクセス できないことがある ● パスキー以外の認証方法やアカウントリカバリーを用意しておく 必要がある 37
 Windows macOS iOS/iPadOS Android Linux ChromeOS Googleパスワードマネージャー 🔄*1 *2 🔄*1 🔄 🔄 🔄*1 🔄*1 Appleパスワード 🔄 🔄 Windows Hello ✅ 3rd Partyパスワードマネージャー 🔄*3 🔄*3 🔄 🔄 🔄*3 🔄*3 *1 Chromeのみ *2 要TPM *3 拡張機能として

Slide 38

Slide 38 text

さいごに ● パスキーとOAuth・OpenID Connectは補完関係にある ○ OPの既存の認証方法にパスキーを加えたり、置き換えたりすることで より安全でUXのよいログイン体験にできる ○ パスキーの代替の認証方法やアカウントリカバリーとして ID連携を 用いることも可能 ● パスキーは銀の弾丸ではない。すべてが解決できるわけではない ため、過信しすぎてはいけない ● しかし、コアの仕様は徐々に成熟しつつあるため、 各環境のサポート状況をキャッチアップしつつ、自社サービスへの パスキーの導入や活用を検討してみてはいかがでしょうか 38


Slide 39

Slide 39 text

パスキーのすべて ──導入・UX設計・実装 本日ご紹介できなかったパスキーの特性や よくある疑問・誤解の答えも盛りだくさんです 続きはぜひ本書でご確認ください

Slide 40

Slide 40 text

パスワードに悩む方々の手助けになれば幸いです ご清聴ありがとうございました