「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>OAuth 2.0 Threat Model and Security Considerations]]

* 目次 [#db7f0327]
#contents

*概要 [#yb50747c]
OAuth 2.0 Threat Model and Security Considerationsの~
一般的なすべてのOAuthコンポーネントに適用されるセキュリティ考慮事項。

*要求の機密性を確保 [#y533fd4f]
*サーバへの要求 [#y533fd4f]

**対象 [#p4a1eecd]
要求
-Client(UserAgent)からAuthorization Server
-Client(UserAgent)からResources Server
-Client(UserAgent)からResource Server

**脅威 [#o5c4480e]
各種トークンの傍受攻撃または再生攻撃が可能になる。
各種トークンの傍受攻撃または再生攻撃

-認証情報
--client_id/client_secret
--ユーザID/パスワード
-トークン
--refresh_token
--access_token
--code
--, etc.

**対策 [#dd3c9c49]
SSL/TLSを利用する。
SSL/TLS(クライアント証明、サーバ証明)を利用する。

*サーバ認証 [#rf5914dc]
*サーバ証明 [#rf5914dc]

**対象 [#u74c2000]
各種サーバ
-Authorization Server
-Client(Web application)
-Resources Server
-Resource Server

**脅威 [#n12327fc]
偽造サーバへの誘導
-なりすまし
-プロキシ
-フィッシング

**対策 [#t2aa0101]
SSL/TLS(サーバ証明)の利用

*常にResources Ownerに通知 [#l3bff01f]
*Resource Ownerへの通知 [#l3bff01f]

**対象 [#x1fd1840]
を認識する可能性
各種イベント

-非対話的フローでの認可
-リフレッシュ
-, etc.

**脅威 [#c99e7969]
特定の種類の攻撃

**対策 [#qa143eb2]
下記により、攻撃を認識する可能性がある。

-認可画面の表示

-Notification messages (email, SMS)~
通知はフィッシング媒介になる可能性があることに注意

-アクティビティ/イベントログ
-ユーザ・セルフケア・ポータル

*資格情報(Credentials)の漏洩 [#zca7e2c1]
**対象 [#y4c93394]
各種、資格情報。

-認証情報
--client_id/client_secret
--ユーザID/パスワード

-トークン
--refresh_token
--access_token
--code
--, etc.

**脅威 [#e3c22935]
資格情報の漏洩

**対策 [#ka2338ef]
認証情報を保護

-[[資格情報保護のベストプラクティスを実施>https://www.owasp.org/]]
--標準のシステムセキュリティ手段を実施する
--標準のSQLインジェクション対策を実施する

--クレデンシャルの
---「非」平文記憶、暗号化
---非対称暗号使用による許可サーバ解放

*資格情報へのオンライン攻撃 [#x31acf6f]

**対象 [#o62784bc]
-[[資格情報(Credentials)の漏洩>#zca7e2c1]]と同じ。
-一部に、トークン・ハンドルを含む。

**脅威 [#l8184c83]
[[資格情報(Credentials)の漏洩>#zca7e2c1]]と同じ。

**対策 [#e36b39aa]
-安全なパスワードポリシー

-高いエントロピーを使用
--認証サーバによって生成
--128ビット以上
--暗号的に強いランダム/擬似乱数シーケンスを活用

-ロックアウトを使用する。
-タールピット(一時的ロック)を使用する。
-CAPTCHAを使用する(UXへの悪影響有り)。

*トークン [#q40cb227]
**対象 [#a42bf621]
-code
-access_token
-refresh_token

**脅威 [#ae4637be]
-トークンの
--漏洩
---不正なClient, Resource Serverによるトークンの不正使用

--再生
--推測

-トークン発行
--悪質なソフトウェアへ発行~
--非対話型の認可タイプによる意図しない発行
--[[Resource Owner Password Credentials Flow>OAuth 2.0 Threat Model (Resource Owner Password Credentials Flow)]]への強力なトークン発行

**対策 [#b9904fd3]
-scopeを制限~
特有のポリシーでscopeを制限する。

--ポリシー

---クライアントのタイプ~
パブリック or コンフェデンシャル
---サービスのタイプ
---Resource Owner設定

--ポリシー+選好

-短い有効期限~
他のセキュリティ対策(シグネチャなど)が補完/強化され、~
あらゆる種類のトークンリークの影響が軽減される。
--トークン漏洩
--オンライン推測

-使用回数の制限
--トークン再生
--オンライン推測

-特定の役割にバインド~
これには、アサーション中のaud (audience)を使用する。

--Clientにバインド~
audienceにClientのClientIDを使用する。

--Resource Serverにバインド~
audienceにResource ServerのEndpoint URLを使用する。

--また、aud (audience)にscopeを明示的に割り当てる。

>不正なClient, Resource Serverによるトークンの不正使用を防止

-[[SAML]]、[[JWT]]
--自己完結型トークンに署名
--トークンを暗号化
--標準アサーション・フォーマットを採用

*access_token [#v01194ca]
**対象 [#w5d2dbe9]
access_token

**脅威 [#xbef0c43]
access_tokenの漏洩

**対策 [#i336303a]
-送受信にSSL/TLSを利用する。
-第三者とトークンを共有しない。
-Clientの一時メモリに保持
--Clientのみアクセク可能
--漏洩しないよう永続化しない。

----
Tags: [[:認証基盤]], [[:クレームベース認証]], [[:OAuth]]
Tags: [[:IT国際標準]], [[:認証基盤]], [[:クレームベース認証]], [[:OAuth]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS