ホーム DoRuby JMeterでCSRFトークンを取得する方法
JMeterでCSRFトークンを取得する方法
 

JMeterでCSRFトークンを取得する方法

この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

WEBサイトの負荷テストに便利なツール JMeter で、CSRFトークンを取得する方法をご紹介します。

CSRFトークン

CSRF対策として、入力フォームにhiddenでトークンを埋め込んでいるサイトは多いと思います。
最近ではフレームワーク側でデフォルトでこの機能が付いている場合もありますね。
このような場合、JMeterでPOST系のテストするためには、どうにかしてこのトークンを取得しなければなりません。

正規表現抽出

まず、CSRFトークンが表示されている画面のサンプラーを追加します。
そしてサイドバー上のそのサンプラーを右クリック
 →追加→後処理→正規表現抽出

表示された、正規表現抽出画面で以下のように設定します。

Apply to:● Main sample only
Field to check:● Body
参照名:csrf_token ※後ほど参照する時のキーとなります
正規表現:<input name="token" value="(.*?)" type="hidden" /> ※例です。各サイトに合わせてください
テンプレート:$1$

Parametersに追加

正規表現で取得したトークンをフォームをPOSTするサンプラーのParametersにセットします。

名前:_csrf
値:${csrf_token}

以上です。

記事を共有

最近人気な記事