こんにちは。
〜 As New ClassA なぜかインスタンスなくならないんですけど… VB6プログラマーの小川です。
さて今回は実際にパラメータを改変してみたいと思います。
はじめに
前回の手順を参考にブラウザがBurp Suiteを通してサーバと通信できるようにしておきます。
Burp Suiteの使い方 その2
1.Burp Suiteの設定
2.Burp Suiteで通信をキャッチする
3.改変して送信する
4.結果を確認する
!注意!
今回説明する方法を、実施許可を得ていないサーバに試した場合、不正なアクセスとみなされる場合があります。
実施する場合は、自身が管理するローカルな環境で行うようにしてください。
1.Burp Suiteの設定
[Proxy]→[Options]の[Intercept Server Responses]の項目で、Intercept responses based on the following rules:のチェックを入れます。この設定によりHTTPレスポンスがブラウザに返される前にBurp Suite上に表示されます。
2.BurpSuiteで通信をキャッチする
実際にHTTPリクエストを止めてみます。
動作イメージは以下になります。
2-2.プロキシを使用して通信を行うよう設定したブラウザからアクセスします。
今回の例では、ローカル環境で起動したTomcatサーバを接続先にしています。
2-3.Burp Suiteの画面上で、Webサーバに送信する直前のHTTPリクエストが表示されます。
3.改変して送信する
実際に改変してみます。
動作イメージは以下です。
3-1. 2-3で表示表示されたリクエストのUser-Agentを変更します。
テキスト入力で変更します。以下の例では「SIE Browser」という値に変えています。
3-2.[Forward]ボタンを押下して、WebサーバにHTTPリクエストを送信します。
4.結果を確認する
3の結果、WebサーバにHTTPリクエストが送信され、WebサーバがHTTPリクエストを解釈し、HTTPレスポンスを返します。
動作イメージは以下です。
4-1.Burp Suite上でHTTPレスポンスが表示されます。
4-2.[Forward]ボタンを押下して、ブラウザにHTTPレスポンスを送信します。
問題は無いようです。Tomcatサーバに対して、User-Agentの値を「SIE Browser」に変えても問題なく動作することがわかりました。
診断業務においては、パラメータの改変を行い、改変したHTTPリクエストを受け取ったWebアプリケーションが返すHTTPレスポンスの内容を確認することで脆弱性を検出します。
上記の方法を用いて様々なパターンで改変し続ければ、いつか脆弱性を検出することができるかもしれません。各脆弱性に対応した有効なパターンはインターネット上に公開されています。しかし、実際の現場においては、リソース(時間・人・環境など)が限られており、脆弱性を単に見つけるだけなく、安全かつ素早く脆弱性を検出することが求められます。そのようなノウハウはインターネット上にないため、独自のノウハウを持ったセキュリティベンダーの診断サービスが活用されているのかもしれません。
以上です。
次回はBurp Suiteの機能について説明していきたいと思います。