Repeater(sWebMachineGun.exe)
基本設定
基本設定の画面
順番どおり送信するHTTPリクエストを「Request」タブで設定する。この一連の流れを「セッション」と呼称しており、それぞれのリクエストを「1ページ目」とか「2ページ目」とか単位に「ページ」を使用しています


1)単純繰り返しの場合(1次元)
単純繰り返しの画面
「繰り返し回数」で指定した回数分、「セッション」を実施する。それぞれ「1カウント目」「2カウント目」とか単位として「カウント」を使用しています


2)ファジングの場合(2次元)
ファジングの画面
HTTPリクエスト中の「%s%」という箇所を指定された文字列に置換しながら(カウント数は置換対象文字配列数)、「セッション」を実施する。
特定の箇所に連続的に試行したい場合に最適なモード
マーキング文字列は、置換文字列中での固定文字列を指定しておくと便利かと思う


3)変数リスティング場合(3次元)
変数リスティングの画面
対象ページ番号のHTTPリクエスト・メッセージ中の「クエリ文字列」「クッキー情報」「ポストデータ」に対して、置換パターンをそれぞれ実施する
  • 「何もしない」:何もしない。正常系の取得
  • 「変数追加」:置換文字列を名前として新しい変数を追加する
  • 「数値計算を行う」:値が数値化可能な場合、「+1した値」&「-1」という値に置換する
  • 除外したい変数(例えばCSRFトークンとかは時間の無駄になるので)があれば、CSV形式で、除外変数名に入れる
  • 変数の値が JSON や XML の場合は、それぞれの属性に対しても置換処理を実施するのだが、CSV形式の変数はよく分からないので、指定する必要がある


一般設定
一般設定1
「文字コード」は既定の文字コードを指定する
「DetectCharSet」は、レスポンスの文字コードを自動認識させる
「AllowAutoRedirect」は、リダイレクトレスポンス時に、自動的にリダイレクトするのかどうか
「ReUseResponse」は、直前のセッションの最後のレスポンスを次のセッションの最初のリクエストの処理に反映(CSRFトークンの抽出と貼り付け等)させるかどうか
「Import/Export」は、XML形式のファイルとして設定を出力/入力する
JSON ビューアなどの外部プログラムを指定する箇所
リクエストの間隔が短すぎるとエラーとなってしまう対象に対しては、ある程度の間隔を空ける事も可能
バイナリなファイルはテキストボックスでまともに扱えないので、そういう場合は、アップロードファイルのリストに登録させる。そして、リクエスト中の「%file[リスト番号]%」に置換される
レスポンスの結果画面に色など付けたい場合の設定も可能


スクリプト
スクリプト設定画面
プラグインで有効なスクリプト言語と、スクリプトファイルを指定して、登録する事が可能
リクエストの書き換え時と、判定時にスクリプトとして呼び出させる事が可能


判定1
カウントを終了可能な判定条件
「真」になり、かつ「DoBreak」がチェックの場合、その「セッション」を最後に繰り返し処理を終了させる
正規表現(置換設定でのマーキング文字列「%M%」マクロが使用可能)で、判定する事も可能
対象リクエストを指定する事


結果画面
結果画面
説明なし
結果画面のリクエスト画面の右クリックメニューに「再送」する事が可能


CSRFトークンの設定画面
CSRFトークン設定画面
CSRFなどのトークンを直前のレスポンスから抽出して、次のリクエストに反映(埋め込み)させる
抽出元として
  • HTTPヘッダ
  • Hiddenタグ
  • スクリプトタグ中のスクリプトコード中のリテラルから抽出
  • Set-Cookie ヘッダから抽出
  • 正規表現(最大2回)を使って抽出


埋め込み先として
  • HTTPヘッダ
  • クエリ文字列/ポスト
  • なし(CSRFトークン用のマクロ文字「%%csrf[リスト番号]%」用に抽出するだけ)


名前のところは、第一候補が「変数名」、第二候補はその値の「XPATH/JPATH」として抽出する事ができる
正規表現に関しては、第一候補の正規表現で絞られた所にさらに第二候補の正規表現で抽出させる事も可能
抽出時のHiddenタグ、埋め込み先のクエリ/POSTの第一候補が空文字列の場合は、ボディ全体がJSON/XMLと仮定して、第二候補の条件で抽出する


インターバル画面
インターバル設定画面
プラグインで読みだされた乱数アルゴリズムと、最小値と最大値を指定して、リクエスト間のスリープを行う設定の画面


プロキシ画面
プロキシ設定画面
HttpWebRequest のプロキシや基本認証の設定を行う画面


特殊認証画面
特殊認証画面
WebAPI などで使われる OAuth2 や WSSE の認証を内部で行う画面


マクロのヘルプ画面
マクロ画面
カスタムに設定すると全リクエスト中の「%%m[リストの番号]%」が置換される


クライアント証明書画面
マクロ画面
クライアント証明書を設定する。.NET Framework はWindowsに信頼された証明書でないとエラーとなるので、別途、Windowsに信頼させておく必要がある


フォント画面
フォント設定画面
リッチテキストボックスのフォントの設定


音声合成画面
音声合成設定画面
.NET Framework は標準で音声合成の API が用意されているが、設定画面だけ用意されていて、まだ未実装



mail to active@window.goukaku.com