Inspector入門

インスペクタを使用すると、HTTPメッセージ内にある興味深いアイテムの編集や表示が簡単にできます。選択したリクエストとレスポンスの、HTTPヘッダ、cookie、パラメータなどがカテゴリごとに自動的にグループ化されます。

Inspectorには、次のような便利な機能があります:

Burp Suiteの多くのタブで、メッセージエディタの隣にInspectorパネルがあります。

メッセージエディターとInspector

Inspector使い方は、下記のチュートリアルを推奨します。

詳細は、完全なドキュメントを参照してください。

チュートリアル

このチュートリアルでは、エンコードされた値をInspector使って簡単に操作する方法を説明します。

ステップ1: ラボへアクセスする

Burpブラウザを起動して、次のURLにアクセスします:

https://portswigger.net/web-security/deserialization/exploiting/lab-deserialization-modifying-serialized-objects

Access the labをクリックしプロンプトが表示されたら、自分のPortSwiggerアカウントでログインします。すると、意図的に脆弱性を作り込んだあなた専用のブログサイトが開きます。

ステップ2: ユーザアカウントでログインする

My accountをクリックし、次の認証情報を使用してログインします: wiener:peter

ステップ3: Inspectorでリクエストを調べる

Proxy > HTTP履歴タブに移動し、GET /my-accountリクエストを選択します。

Inspectorパネルで、リクエストcookiesセクションを展開します。

>をクリックして、session cookieを展開します。Inspectorは自動的に、正しい手順でcookieの値をデコードしていることに注目してください。今回は、URLデコードした後、Base64デコードした結果が表示されています。

cookieのデコード

GET /my-accountリクエストを右クリックし、Repeaterへ送信を選択します。

Repeaterタブに移動し、session cookieを再度展開します。

Repeaterで、デコードされた値を変更できます。たとえばBase64デコードされたフィールドで、wieneradministratorに変更し、変更を適用をクリックします。

変更された値をリクエストに挿入する際に、インスペクターが自動的に正しい順序でエンコードを再適用していることに注目してください。

Inspectorでcookieを編集

ステップ5: 選択ウィジェットを使う

メッセージエディタで任意の文字列を選択し、Inspectorで調べることも可能です。

Inspectorビューに戻り、session cookieを手動で選択します。先程と同じように、Inspectorが選択部分を自動的にデコードすることに注目してください。

これは、Inspectorが自動的に解析できない部分文字列や、非標準的なデータ構造を扱う場合に特に便利です。

Inspector選択ウィジェット

Inspectorの詳細

これで、エンコードされた値をInspectorを使って簡単に操作する方法を学びました。次のリンクも参照してください:

さらに上級者向けに、InspectorにはHTTP/2リクエストを扱うための独自機能があり、さまざまな方法でHTTP/2特有のリクエストスマグリング脆弱性を悪用できます。Webセキュリティアカデミーで、これらについて幅広く取り上げています。