F5 用語集

クロスサイトリクエストフォージェリ(CSRF)

クロスサイトリクエストフォージェリ (CSRF) は、Webapplicationsの脆弱性を悪用する Web ベースの攻撃方法です。 CSRF という用語は、脆弱性そのものを直接指す場合もあります。

Webapplicationに CSRF の脆弱性がある場合、攻撃者は正当なユーザーを騙して、ユーザーの明示的な同意なしに、脆弱なサイトで意図しないアクションを実行させることができます。 潜在的な影響には、ユーザー データの変更、誤ったデータの削除または変更、不正なトランザクションの実行、対象のapplication内での不正なアクションの開始などの不正な操作が含まれます。

典型的な CSRF 攻撃は次のように進行します。

  1. 攻撃者は、標的のapplicationのユーザーを、攻撃用に特別に作成された悪意のある Web ページにアクセスするように誘導します。
  2. 被害者がこの悪意のあるページにアクセスすると、攻撃者は脆弱なapplicationに対して不正な POST リクエストをトリガーします (場合によっては、Web ページにアクセスするだけで、それ以上のユーザー操作なしに悪意のあるリクエストがトリガーされることもあります)。
  1. 標的のapplicationは、不正な POST 要求を処理し、認証されたユーザーに代わって意図しないアクションを実行します。

CSRF 攻撃を軽減するには、applicationsは受信した POST 要求の正当性を検証する必要があります。 広く採用されているアプローチの 1 つは、「nonce」値 (「一度だけ使用される数値」) と呼ばれるトークンを実装することです。 nonce は、ユーザーのリクエストに応じて正当な HTTP フォーム内に埋め込まれる、ランダムに生成される一意の識別子です。 後続の POST 送信を受信すると、applicationはnonce を検証して、リクエストの信頼性と整合性を確認します。

正当な GET リクエストに応答してフォームを送信する場合、サーバーは一意で予測不可能な nonce 値を含めます。 applicationは、クライアントから対応する POST リクエストを受信すると、ナンスをチェックしてリクエストの信頼性と正当性を確認します。

さらに、 F5 BIG-IP Application Security Managerが提供する Webapplicationファイアウォール (WAF) などのセキュリティ ソリューションは、悪意のあるリクエストを識別してブロックし、CSRF の脆弱性が悪用されるのを防ぐのに非常に効果的です。