19.6. CSRF Attacks

クロスサイトリクエストフォージェリー (CSRF) は、web ベースの攻撃で、web サイトが信頼できるユーザーまたは (HTTP リダイレクトや HTML フォームを介してなど) で認証される web ベースの攻撃です。クッキーベースの認証を使用するすべてのサイトは、これらの攻撃に対する攻撃に対して脆弱です。これらの攻撃は、投稿されたフォームまたはクエリーパラメーターに対して状態クッキーを照合することで軽減されます。

OAuth 2.0 ログイン仕様では、状態 cookie を使用し、伝送された状態 state パラメーターと照合する必要があります。すべてのログインが保護されるように、Red Hat Single Sign-On は仕様のこの部分を完全に実装します。

Red Hat Single Sign-On 管理コンソールは、バックエンド Red Hat Single Sign-On 管理 REST API への REST 呼び出しを行う純粋な JavaScript/HTML5 アプリケーションです。これらの呼び出しはすべて必要なベアラートークン認証が必要で、JavaScript Ajax 呼び出しを介して行われます。ここでは、CSRF は適用されません。管理 REST API も、CORS オリジンを検証するように設定することもできます。

CSRF にフォールバックする Red Hat Single Sign-On の唯一の部分は、ユーザーアカウント管理ページです。この Red Hat Single Sign-On を軽減するには、状態クッキーを設定し、アクションリンクの非表示フォームフィールドやクエリーパラメーターにこの状態クッキーの値を埋め込むこともできます。このクエリーまたは形式パラメーターは、ユーザーが呼び出しが作成されたことを検証するために状態クッキーに対してチェックされます。