検索と置換を利用したIPアドレスの偽装

Burp Proxyの検索と置換を利用したIPアドレスの偽装

Burp Proxy検索と置換ルールの設定により、Burpブラウザを使って通常通り対象アプリケーションを探索しながら、リクエストとレスポンスを自動的に変更ができます。これにより例えば、リクエストやレスポンスのヘッダの追加、削除、変更ができます。

IPアドレスの偽装に使えるなど、さまざまな使い道があります。場合によっては、あなたがローカルネットワークに接続しているとサーバに信じ込ませ、他の方法ではアクセスできない内部環境と通信できる可能性があります。

このチュートリアルでは、次の手法を学びます:

Burpブラウザは、暗号化されたHTTPSプロトコルでもHTTP通信を簡単にプロキシできます。設定は不要で、Proxyタブを開き、ブラウザを開くをクリックし、Intercept無効になっているか確認してください。

ステップ1: ラボを開く

Burpブラウザを開き、次のラボにアクセスします:

https://portswigger.net/web-security/information-disclosure/exploiting/lab-infoleak-authentication-bypass

ステップ2: 管理画面へアクセス試行する

/adminにある管理画面にアクセスしてみてください。

ただし、ローカルユーザしかアクセスできないため、拒否されます。

アクセスできないWeb Security Adminページ

簡単のために、サーバはX-Custom-IP-AuthorizationというカスタムHTTPヘッダを使って、あなたのIPアドレスを識別していることを発見したと仮定します。

実サイトでこのような制御をする場合は、事実上の標準ヘッダーであるX-Forwarded-Forがよく使われますが、それ以外のカスタムヘッダを使用しているサイトに遭遇することもあります。これらは通常、ロードバランサやCDNのリバースプロキシなどの中継サーバが、ユーザからのリクエストに付与します。

ステップ3: 検索と置換ルールを追加する

Burp Suiteで、Proxy > オプションタブに移動します。

検索と置換で、追加をクリックします。

検索フィールドは空欄のままにしておきます。こうすると、Burpが既存のヘッダを置き換えるのではなく、リクエストに新しいヘッダを追加します。

置換フィールドに、次の様に入力します:

X-Custom-IP-Authorization: 127.0.0.1

OKをクリックします。

Burp Proxyは、Burpブラウザが行うすべてのリクエストにこのヘッダを追加するようになります。

Burp Proxyに検索と置換ルールを追加してIPアドレスを詐称

ステップ4: 管理画面に再度アクセスする

Burpブラウザで、もう一度/adminにアクセスしてみてください。管理ページにアクセスしCarlosを削除すると、ラボの課題を突破できることを確認してください。

管理画面でCarlosを削除

BurpのLoggerタブでリクエストを確認すると、ヘッダが追加されたことを確認できます。

自動的に変更されたリクエストをLoggerタブで表示

あるいはProxy > HTTP履歴タブで、ブラウザが送信した元のリクエストと、Burp Proxyが変更した後にサーバに転送したリクエストを、ドロップダウンメニューで切り替えられます。

自動的に変更されたリクエストをHTTP履歴タブで表示

今回はカスタムヘッダを手動で追加しましたが、Burp Suiteには検索と置換ルールが多数内蔵されており、最も一般的なユースケースは対応できます。Proxy > オプション > 検索と置換で有効にするだけです。

まとめと次のステップ

おめでとうございます - Burp Proxyの検索と置換ルールの使い方がわかり、IPアドレスの偽装に使用できました。

このラボの突破に使用したカスタムヘッダを発見する方法は、Webセキュリティアカデミーの学習教材を参照してください。

認証に関する一般的な情報やBurp Suiteを使用して実行できる他のタイプの攻撃については、Webセキュリティアカデミーの認証のトピックを参照してください。