CSRF 対策フレームワーク

アドビでは、Apache Sling Referrer Filter 以外にも、この種の攻撃を防ぐための新しい CSRF 対策フレームワークを用意しています。

このフレームワークでは、トークンを利用して、クライアントの要求が正当なものであることを保証します。トークンは、フォームがクライアントに送信されるときに生成され、フォームがサーバーに返されるときに検証されます。

メモ

パブリッシュインスタンスでは、匿名ユーザーのトークンはありません。

要件

依存関係

granite.jquery 依存関係を信頼する任意のコンポーネント は、CSRF 保護フレームワークのメリットを自動的に受けます。どのコンポーネントにも当てはまらない場合、このフレームワークを使用するには granite.csrf.standalone への依存関係を宣言する必要があります。

暗号鍵のレプリケーション

トークンを利用するには、デプロイメント内のすべてのインスタンスに /etc/keys/hmac バイナリをレプリケーションする必要があります。HMAC 鍵をすべてのインスタンスにコピーするには、鍵を格納するパッケージを作成し、パッケージマネージャーを使用してすべてのインスタンスにインストールする方法が便利です。

メモ

CSRF 対策フレームワークを使用するには、必要なディスパッチャー設定の変更を行ってください。

メモ

Web アプリケーションでマニフェストキャッシュを使用する場合、トークンがオフラインで CSRF トークンの生成を呼び出さないように、「*」をマニフェストに追加してください。詳しくは、こちらのリンクを参照してください。

CSRF 攻撃とその対策について詳しくは、クロスサイトリクエストフォージェリに関する OWASP のページを参照してください。

このページ