OAuth 2.0 Threat Model and Security Considerations
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>OAuth 2.0 セキュリティ関連トピック]]
* 目次 [#y9d6248c]
#contents
*概要 [#u2d822fd]
OAuth 2.0 の脅威モデルとセキュリティ考慮事項 (RFC 6819)
-OAuth 2.0 の実装にあたり、脅威モデルとセキュリティ考慮事...
-セクション4以降からの内容で、[[OAuth]] 2.0 の前提は飛ば...
*脅威モデル [#j97033f0]
OAuth 2.0の包括的なグループ化された脅威モデル。
**[[Role毎>OAuth 2.0 Threat Model (Role)]] [#j86c8ad5]
**[[Flow毎>OAuth 2.0 Threat Model (Flow)]] [#if4ee696]
**[[Access毎>OAuth 2.0 Threat Model (Access)]] [#if4ee696]
*セキュリティ考慮事項 [#j8507837]
脅威を緩和するために推奨される対策。
**[[General>OAuth 2.0 Security Considerations (General)]]...
**[[Role毎>OAuth 2.0 Security Considerations (Role)]] [#k...
*ざっくり [#x01ebfce]
**対策 [#we5285d7]
***漏洩対策 [#ad4d0c5e]
-SSL/TLS([[サーバ証明>OAuth 2.0 Security Considerations ...
-正規のClientへ発行されたトークンの漏洩に注意。
--code(state):code置換攻撃が可能。
--access_token:access_tokenを利用可能。
***エンドポイント防御 [#t5962331]
-stateを付与・検証する。
-redirect_uri 検証を行う。
-クライアント認証を行う。
***トークン堅牢化 [#gaa9854b]
-トークン
--refresh_token
--access_token
--code
--, etc.
-低いエントロピーの値を使用しない。
-バインドする。
--Client(aud: client_id)
--Resource Owner(sub: sub)
--Resource Server(aud: client_id or Endpoint)
-access_tokenを[[JWT]]化する。
***トークン検証 [#u8e4bfa7]
-([[JWT]]化した場合、)Client、Resource Serverでも、
--署名検証する。
--クレームセット検証する。
---iss(issuer)~
issは署名検証があるので偽装困難
---aud(client_id)~
Resource Serverでもaudによるクライアント検証を行う。
---sub(ユーザID)~
ユーザへの明示に加え、~
Client、Resource Serverで認証済みリクエストでsub検証する...
-[[Authorization Serverを用いたaccess_token検証>OAuth 2.0...
--署名検証する。
--クレームセット検証する。
---iss(issuer)
---aud(client_id)
---sub(ユーザID)
---jti([[無効化>OAuth 2.0 Token Revocation]]状況)
--クレームセットをJSONで返却~
Client、Resource Serverで検証を容易にする。
***ユーザの教育 [#fa58c508]
-偽造サーバの識別
-組み込みブラウザに注意
**注意 [#e5ec5286]
***オープン・リダイレクタ [#o43c7aa6]
-完全なredirect_uriの事前登録と検証
-スターターとアクセストークン・リクエストでのredirect_uri...
***自動再認証、認可画面非表示 [#c55f9143]
-悪意のあるクライアントと組み合わさる。
-その際のscopeなど注意が必要。
***クライアント登録機能 [#z5a20e1b]
-悪意のあるクライアントが容易に登録可能。
-悪意のあるクライアント対策の実装が必要。
***パブリック・クライアント [#l2c8db1d]
ネイティブアプリやJSアプリのようにsecretを秘匿に保てない...
-サーバより脅威が多い。
--盗難
--リエンジ
--ストレージ
--ウィルス
--脆弱性
-JSアプリ(SPA)の場合は、~
[[Implicit Flow>OAuth 2.0 Threat Model (Implicit Flow)]]...
-ネイティブの場合は、~
[[OAuth PKCE]]を利用する。
*参考 [#o592275c]
-RFC 6819 - OAuth 2.0 Threat Model and Security Considera...
https://tools.ietf.org/html/rfc6819
-OAuth 2.0 Threat Model and Security Considerations~
http://openid-foundation-japan.github.io/rfc6819.ja.html
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>OAuth 2.0 セキュリティ関連トピック]]
* 目次 [#y9d6248c]
#contents
*概要 [#u2d822fd]
OAuth 2.0 の脅威モデルとセキュリティ考慮事項 (RFC 6819)
-OAuth 2.0 の実装にあたり、脅威モデルとセキュリティ考慮事...
-セクション4以降からの内容で、[[OAuth]] 2.0 の前提は飛ば...
*脅威モデル [#j97033f0]
OAuth 2.0の包括的なグループ化された脅威モデル。
**[[Role毎>OAuth 2.0 Threat Model (Role)]] [#j86c8ad5]
**[[Flow毎>OAuth 2.0 Threat Model (Flow)]] [#if4ee696]
**[[Access毎>OAuth 2.0 Threat Model (Access)]] [#if4ee696]
*セキュリティ考慮事項 [#j8507837]
脅威を緩和するために推奨される対策。
**[[General>OAuth 2.0 Security Considerations (General)]]...
**[[Role毎>OAuth 2.0 Security Considerations (Role)]] [#k...
*ざっくり [#x01ebfce]
**対策 [#we5285d7]
***漏洩対策 [#ad4d0c5e]
-SSL/TLS([[サーバ証明>OAuth 2.0 Security Considerations ...
-正規のClientへ発行されたトークンの漏洩に注意。
--code(state):code置換攻撃が可能。
--access_token:access_tokenを利用可能。
***エンドポイント防御 [#t5962331]
-stateを付与・検証する。
-redirect_uri 検証を行う。
-クライアント認証を行う。
***トークン堅牢化 [#gaa9854b]
-トークン
--refresh_token
--access_token
--code
--, etc.
-低いエントロピーの値を使用しない。
-バインドする。
--Client(aud: client_id)
--Resource Owner(sub: sub)
--Resource Server(aud: client_id or Endpoint)
-access_tokenを[[JWT]]化する。
***トークン検証 [#u8e4bfa7]
-([[JWT]]化した場合、)Client、Resource Serverでも、
--署名検証する。
--クレームセット検証する。
---iss(issuer)~
issは署名検証があるので偽装困難
---aud(client_id)~
Resource Serverでもaudによるクライアント検証を行う。
---sub(ユーザID)~
ユーザへの明示に加え、~
Client、Resource Serverで認証済みリクエストでsub検証する...
-[[Authorization Serverを用いたaccess_token検証>OAuth 2.0...
--署名検証する。
--クレームセット検証する。
---iss(issuer)
---aud(client_id)
---sub(ユーザID)
---jti([[無効化>OAuth 2.0 Token Revocation]]状況)
--クレームセットをJSONで返却~
Client、Resource Serverで検証を容易にする。
***ユーザの教育 [#fa58c508]
-偽造サーバの識別
-組み込みブラウザに注意
**注意 [#e5ec5286]
***オープン・リダイレクタ [#o43c7aa6]
-完全なredirect_uriの事前登録と検証
-スターターとアクセストークン・リクエストでのredirect_uri...
***自動再認証、認可画面非表示 [#c55f9143]
-悪意のあるクライアントと組み合わさる。
-その際のscopeなど注意が必要。
***クライアント登録機能 [#z5a20e1b]
-悪意のあるクライアントが容易に登録可能。
-悪意のあるクライアント対策の実装が必要。
***パブリック・クライアント [#l2c8db1d]
ネイティブアプリやJSアプリのようにsecretを秘匿に保てない...
-サーバより脅威が多い。
--盗難
--リエンジ
--ストレージ
--ウィルス
--脆弱性
-JSアプリ(SPA)の場合は、~
[[Implicit Flow>OAuth 2.0 Threat Model (Implicit Flow)]]...
-ネイティブの場合は、~
[[OAuth PKCE]]を利用する。
*参考 [#o592275c]
-RFC 6819 - OAuth 2.0 Threat Model and Security Considera...
https://tools.ietf.org/html/rfc6819
-OAuth 2.0 Threat Model and Security Considerations~
http://openid-foundation-japan.github.io/rfc6819.ja.html
----
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認...
ページ名: