「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
OAuth 2.0 Threat Model and Security Considerationsの
Flowに着目した脅威モデルのうち、ここでは唯一、
サインイン・プロセスの問題を扱う(ただし非対話)。
※ OAuth 2.0ではIdPの仕様について言及されていないので。
サインイン・プロセスの問題 †
共通項 †
共通的な影響 †
- クライアントにユーザID/パスワードが渡る。
- トークン取り消しが機能しない。
- 認可プロセスを制御できない。
攻撃区分での分類 †
ユーザID/パスワードの盗難 †
影響 †
共通的な影響
攻撃 †
悪意のあるクライアントによるユーザID/パスワード盗難
対策 †
- 限定的に利用する。
- 基本認証から移行する過渡期
- UserAgent?がAuthorization Serverに接続できない場合
- ClientとAuthorization Serverが同じ組織に利用されているケース
- ユーザに異なるサービスに同じ
ユーザID/パスワードを使用しないように促す。
- refresh_tokenとユーザIDの紐付けと検証(?
ユーザID/パスワードの盗聴 †
影響 †
共通的な影響
攻撃 †
エンドポイントに対するユーザID/パスワード盗聴
対策 †
- SSL/TLSを利用する。
- 平文認証を使用しない代替認証を使用する。
Client側でのパスワードの露見アクシデント †
影響 †
共通的な影響
攻撃 †
クライアントが十分な保護を提供していない場合、偶発的に起きる。
対策 †
- 他のフローを使用する。
- ダイジェスト認証を使用
- ログのパスワードを難読化
意図しない不要に大きなscope †
影響 †
悪意のあるClientが、不要に大きなscopeを持ったトークンを取得できる。
攻撃 †
悪意のあるClientが、不要に大きなscopeを持ったトークンを要求する。
対策 †
- scope
- 当該(非対話的)フローでのscope制限
- クライアントの信頼性よって緩和
- 任意の通知手段によって認可をResource Ownerに通知する。
refresh_tokenによる長期的認可の維持 †
影響 †
攻撃 †
対策 †
- 当該フローでrefresh_token
- 発行しない。
- クライアントの信頼性よって緩和
- 任意の通知手段によってリフレッシュをResource Ownerに通知する。
ユーザID/パスワードのオンライン推測 †
影響 †
単一のユーザー名とパスワードの組み合わせの啓示
攻撃 †
有効なユーザー名とパスワードの組み合わせを推測
対策 †
- サインイン
- 安全なパスワードポリシー設定する。
- ロックアウト、タールピット(一時的ロック)を使用する。
- CAPTCHAを使用する。
- 他のフローを使用する。
- クライアント認証を併用する。
Tags: :IT国際標準, :認証基盤, :クレームベース認証, :OAuth