1. サポートセンター
  2. ドキュメント
  3. デスクトップ版
  4. トラブルシューティング

トラブルシューティング

もしBurpに慣れておらず問題が発生している場合は、まずBurp Suite入門を読み、その指示に従ってください。それ以外の場合は、次の問題と解決策が役立ちます。

Burpが起動しない

適切なバージョンのJavaがインストールされているか確認してください。その後、コマンドラインからBurpを起動してください。コマンドラインに表示されるエラーメッセージやその他の出力を確認してください。ここに問題の原因が表示されるかもしれません。

NoClassDefFoundErrorというエラーメッセージが表示される

コマンドラインからBurpを実行しているときは、-jar引数の後にBurpのJARファイルの場所を続けてください。それでも問題が解決しない場合は、コマンドが正しいバージョンのJavaを起動していることを確認してください。java -versionコマンドを実行し、実行中のバージョンが1.8以上であることを確認してください。それ以上のバージョンのJavaをインストールしていても、まだ古いバージョンが実行されている場合は、"java"の代わりにシステム上の正しいjava実行ファイルへの絶対パスを指定してください。それでも問題が解決しない場合は、Javaのインストールが壊れている可能性がありますので、再インストールしてください。

Burp拡張プラグインがある状態でBurpを起動しようとしているときにこのエラーメッセージが表示される場合は、BurpExtenderクラスがburpパッケージで宣言され、拡張のJARファイル内のburpというフォルダ内に存在することを確認してください。

BurpのJARファイルをアンパックしました; 次は?

BurpのJARファイルはアンパックやzip展開をする必要はありません。これはおそらく、コンピュータが.JARファイル拡張子とアーカイブソフトウェアを関連付けているためです。この関連付けを変更してJavaに関連付けるか、より良い方法は、コマンドラインからBurpを起動してください。

ブラウザがリクエストしない

ブラウザがずっと待機のまま実際のコンテンツが表示されない場合は、次の手順を試してください。各手順ごとに問題がまだ発生しているかどうかを確認し、問題が解決しない場合は次の手順に進んでください。

  1. Burpで、ProxyタブのInterceptタブに移動します。ここにインターセプトされたHTTPリクエストが表示されている場合は、インターセプトをオフにします("インターセプト有効"ボタンをクリックしてインターセプト状態を反転させます)。ブラウザが正常に動作するはずです。Burp Proxyの基本的な使い方は、Burp Proxyの使い方を参照してください。
  2. ブラウザで別のドメイン(理想的にはよく知られているパブリックドメイン)にアクセスしてみてください。これでうまくいった場合、問題は当初アクセスした特定のWebサイトに関連する可能性があります。
  3. Proxyタブのオプションタブに移動します。プロキシリスナーセクションには、起動中チェックボックスがオンになっているエントリが少なくとも1つ表示されているはずです。チェックされていない場合は、チェックしてみてください。ボックスをチェックできず、警告タブに"Failed to start proxy service"というメッセージが表示された場合、指定されたポートとインタフェースをBurpが利用できません。これは、ポートが別のプロセスによって使用されている場合によく起こります。一覧のアイテムを選択し、"編集"ボタンをクリックし、別のポート番号に変更します。"OK"をクリックし、リスナーを有効にできるかどうか確認します。いくつか異なるポートを試すか、コンピュータの設定を確認し使用可能なポートを見つける必要があるかもしれません。その後次の手順で、ブラウザのプロキシ設定を新しいポート番号に更新します。
  4. ブラウザのプロキシ設定が正しく設定され、実行中のプロキシリスナーに設定されているのと同じIPアドレスとポート番号であることを確認します(Burpのデフォルト設定ではIPアドレス127.0.0.1とポート8080ですが、現在の設定は違うかもしれません)。詳細は、ブラウザの設定を参照してください。
  5. Burpで、オプションタブの接続タブに移動します。"上位プロキシサーバ"セクションで、上位プロキシが設定されているかどうかを確認し、設定されている場合はこれらの設定がネットワークの設定に適合しているかどうかを確認します。
  6. ブラウザからもう少しリクエストしてください(例えば、リフレッシュを数回押すなど)。警告タブに、新しいエントリが生成されているかどうか確認します。もしあれば、これらのエントリが問題の原因を示しているかもしれません。
  7. Burpメニューの、"デフォルトに戻す"、"すべて"を選択してください。Burpメニューから"終了"を選択し、Burpを正常に閉じます。Burpを再び起動します。すべてのブラウザインスタンスをシャットダウンし、新しいブラウザウィンドウを開きます。

Burpが何もインターセプトしない

Burpで、Proxyタブの履歴タブに移動します。ブラウザからもう少しリクエストし(例えば、リフレッシュを数回押すなど)、プロキシ履歴に新たなエントリが表示されるかどうか確認します。もしあれば、Burpはブラウザのトラフィックを処理していますが、インターセプト用にメッセージを表示をしていません。Proxyインターセプトタブに移動し、マスターインターセプトを有効にします("インターセプト無効"ボタンをクリックしインターセプト状態を反転させます)。次に、Proxyオプションタブに移動し、"クライアントリクエストのインターセプト"セクションと"サーバレスポンスのインターセプト"セクションの"デフォルトに戻す"ボタンをクリックします。ブラウザからいくつかリクエストをすると、これらがProxyインターセプトタブに表示されるはずです。

ブラウザがページを正しく読み込んでいても、プロキシ履歴にアイテムが表示されない場合は、ブラウザのプロキシ設定を確認する必要があります。ブラウザは、HTTPとHTTPSの両方にBurpを使用するように設定する必要があります。"自動"プロキシオプションは無効にし、プロキシ設定に対する"例外"はすべて削除する必要があります。不明な場合は、ブラウザの設定の手順を慎重に実行し、ブラウザが正しく設定されていることを確認してください。

BurpがHTTPSリクエストをインターセプトしない

ブラウザがHTTPリクエストをBurp経由で送信していて、HTTPSリクエストが送信されない場合は、ブラウザがHTTPのみをプロキシするよう設定されている可能性があります。Burpが両方のプロトコルを使用するよう設定されているか、ブラウザのプロキシ設定を確認します。不明な場合は、ブラウザの設定の手順を慎重に実行し、ブラウザが正しく設定されていることを確認してください。

HTTPSのWebサイトが正常に動作しない

ブラウザがBurp経由でHTTPSのWebサイトを読み込めて、しかし正しく機能しない(例えばユーザインタフェースが完全でないか一部機能しない)場合、アプリケーションが別のドメインからスクリプトやその他のコンテンツを読み込もうとしており、Burp経由でこれらのリソースを読み込む際にブラウザでセキュリティ警告が発生してる可能性があります。HTTPSを使用するアプリケーションが正しく機能するように、BurpのCA証明書をブラウザにインストールする必要があります。

Burpを使用すると認証に失敗する

テストしているアプリケーションがプラットフォーム認証を使用していて(通常ブラウザ内にログインダイアログがポップアップされる)、Burpを使用するようブラウザを設定したときに認証失敗メッセージが表示される場合、ブラウザの代わりにBurpがプラットフォーム認証を処理するよう設定する必要があります。オプションタブの接続タブの、プラットフォーム認証セクションに移動します。アプリケーションが使用するホスト名ごとに新しいエントリを追加し、認証タイプとクレデンシャルを設定します。認証タイプが不明な場合は、まずNTLMv2を試し、次にNTLMv1を試し、次に他のタイプを試してください。ブラウザのキャッシュが認証処理を妨害しないように、すべてのブラウザウィンドウを閉じて新しいブラウザウィンドウを開く必要があるかもしれません。

Burpのメモリが不足する

Burpは、使用しているコンピュータがJavaプロセスで使用できるメモリ容量の制約を受けます。-Xmx 引数を使用してコマンドラインからBurpを起動すると、Burpの追加メモリを要求できます。詳細は、Burpの起動を参照してください。

スキャンの実行方法は?

Burpダッシュボードで"新規スキャン"をクリックし開始URLを入力すると、自動的なクロールと診断を開始できます。他の様々な方法でもスキャンを開始できます。詳細は、ウェブサイトのスキャンを参照してください。