DOM Invaderのその他の設定

DOM Invaderの設定メニューにアクセスするには、ブラウザの右上にあるBurp Suiteのロゴをクリックし、DOM Invaderタブに切り替えます。

DOM Invaderのその他の設定

Miscには、次のオプションがあります。

スタックトレースのメッセージフィルタリング

Webサイトによっては大量のメッセージが発生するため、ノイズが多くなりテストが困難になることがあります。この設定を有効にするとDOM Invaderは、各エントリのスタックトレースを比較し、コード内で既存のエントリと同じ場所を指しているものを非表示にします。

イベントの自動発火

この設定を有効にするとDOM Invaderは、ページが読み込まれると同時に、クリックイベントとマウスオーバーイベントをすべての要素で自動的に発生させます。これらのイベントのいずれかが発生したときにのみ、挿入されたペイロードがシンクにたどり着くような場合に便利です。

リダイレクト防止

一部の操作により、クライアント側で別のページにリダイレクトされることがあります。リダイレクトされると、DOM Invaderが見つけたソースとシンクがクリアされ、新しいページで見つかったソースとシンクに更新されてしまうため、テストに支障をきたす可能性があります。

この設定を有効にすると、DOM Invaderはクライアント側のリダイレクトをブロックして、同じページにとどまります。ただし、javascript: URLへのリダイレクト、Inject URLボタンによるリダイレクトは、引き続き通常通り動作します。

リダイレクト前にブレークポイントを追加

リダイレクト防止設定でクライアント側のリダイレクトを完全にブロックする代わりにこの機能を有効にすると、リダイレクトが行われるコードの直前にブレークポイントを設定できます。現在のところ、Chrome標準のデベロッパーツールでは不可能です。

ブレークポイントを追加すると、ブラウザのデベロッパーツールでコールスタックを見ながら、どこでリダイレクトが発生しているかを確認でき、デバッグに役立ちます。

すべてのソースにカナリアを挿入

この設定を有効にするとDOM Invaderは、ページ上で特定されたソースに自動的にカナリアを挿入します。各シンクにたどり着くソースを簡単に識別できるように、各ソースのカナリアに一意な文字列を追加します。

実際には、あちこちにカナリアを挿入すると、サイトが正常に動作しなくなります。DOM Invaderでは、カナリアを挿入するパラメータやソースをカスタマイズできるため、必要に応じてこの動作を微調整できます。この設定の横にある歯車のアイコンをクリックすると、次の調整ができます:

DOM Invaderのソース設定

コールバックの設定

DOM Invaderがソース、シンク、Webメッセージを発見するたびに、カスタムコールバック関数を実行するように設定できます。独自のカスタムコールバックも作成できますし、デフォルトも使用できます。デフォルトのコールバックは、コンソールにログを記録するだけで、結果のエクスポートに使えます。

コールバックの設定

あるいは、DOM Invaderが制御可能なシンクを発見したときに、スクリプトの実行を一時停止するデバッガステートメントをコールバックに含めると便利です。これにより、コールスタックの調査が可能です。

デフォルトのコールバック関数はすぐに使えるようになっていますが、次のように有効化する必要があります:

  1. DOM Invaderの設定メニューから、メインのDOM Invaderスイッチの横にある歯車のアイコンをクリックすると、ソースとシンクの設定が表示されます。

  2. コールバックを設定したい結果の種類に応じて、SourcesSinksMessageのいずれかのタブを選択します。

  3. コールバック設定ボタンをクリックすると、DOM Invaderのデフォルトのコールバック関数が表示されます。初期状態では無効化されています。

  4. スクリプトのあるテキストフィールドをクリックして、スクリプトを有効にします。

  5. スクリプトはそのままか、必要なら変更を加えてから、Saveをクリックします。

  6. Reloadをクリックすると、ブラウザが更新されます。これは、変更を有効にするために必要です。

  7. DOM Invaderを通常通り使用し、コールバックが期待通りに動作することを確認します。

Permissions-Policyヘッダの削除

この設定を有効にするとDOM Invaderは、レスポンスにPermissions-Policyヘッダが存在する場合、自動的に除去します。

一部のWebサイトでは、DOM Invaderにとって不可欠な同期XHRなどの機能をブロックするディレクティブを、Permissions-Policyヘッダに設定しています。その場合、DOM Invaderはコンソールで通知し、このオプションを有効にするよう促します。