OWASP ZAPとBurp SuiteのWindowsへの導入~firefoxに添えて~
CTFのweb問するにしろ、webセキュリテイするにしろプロキシツールは必要。
プロキシツール導入前
JREのインストール
OWASP ZAPもBurp SuiteもJava Runtime Environmentが必要なのでインストールせねばならぬ。
全オペレーティング・システム用のJavaのダウンロードより、Windows オフラインを無印の32bitか、64bitのマシンにあったものを選択してDL。Windows オンラインだとイマイチ64bitのインストールの仕方が分からなかったのでWindows オフラインでインストールした方が分かりやすい。
Burp Suite 無料版
Download Burp Suite Community Edition
インストールして初期設定まで参照↓
ローカルプロキシツールBurpの使い方 その1 ~ Proxy機能編 ~ | パーソルテクノロジースタッフ株式会社
OWASP ZAP
Download OWASP ZAP
OWASP ZAPのインストールからプロキシ設定までを参照↓
脆弱性診断ツール OWASP ZAP vs 脆弱性だらけのWebアプリケーションEasyBuggy - Qiita
OWASP ZAPは必要が無い場合は基本的にセーフ(自動スキャン、攻撃無し)かプロテクト(事前に指定されたスコープ以外の自動スキャン、攻撃無し)モードにしておかないと思わぬ事故を起こす可能性があるので注意。
ローカルプロキシのポートは色々慣習とかもあるかもしれないけれど、自分が分かりやすくてウェルノウン外なら何でも良いと思っている。
Firefox
firefoxはとりあえずDLしてインストールする。特に問題は無いハズ。
まず、プロキシツールを扱うにはブラウザに設定が必要なのでそこら辺の設定をしていく。
また、httpsを利用するには証明書をインストールせねばあかんのでそれのお話も。
ブラウザのプロキシ設定
firefoxではプロキシ設定に、ネットワーク設定でプロキシを設定する方法かプロキシスイッチ的なfoxyproxyを利用する方法が主に使われる。
ネットワーク設定でプロキシを設定する方法だと、プロキシツールが動いていないとブラウザが利用できなくなったりメンドイ部分があるので大抵foxyproxyが使われる。とりあえずfoxyproxyを入れる。
addons.mozilla.org
入れたら、optionsを開きプロキシを設定していく。[Add]で設定していく。
[Title or Description (optional)]は任意で、[Port]はプロキシツールで設定したやつで、[Usename]と[Password]は必要であれば。例えば、burpは以下のように。
あとは[Save]しておけば、アドオンをクリックしたときにOn/Offや[Port]が異なればプロキシツールの切り替えができる。
httpsのためのCA証明書インストール
Burp Suite 無料版の場合
Installing Burp's CA certificate in Firefox - PortSwigger
OWASP ZAPの場合
OWASP ZAPのCA証明書の保存 FirefoxへのCA証明書のインストールはBurpと同様に。
これでもhttpsダメな場合
証明書のインポートミスであったりの可能性もあるが、おそらく多くはアンチウィルスソフトウェアのwebフィルタリング系の機能の所為だと思われる。各々が利用しているアンチウィルスの機能を確認して適宜設定すれば良い。 投げやりだけど、これ以上言いようがない。自分が試したESETの場合だけ示しておく。
ESETの場合
[設定]から[詳細設定]を選び、[webとメール]のメニューで[SSL/TLS]を開く。
そこで、[SSL/TLSフィルタリングされたアプリケーションのリスト]を編集する。
リストからfirefox.exeを探す。検索マークを押して"firefox"を検索するのが良いかと。
firefox.exeをクリックして、左下の編集ボタンを押すと検査アクションを指定できる画面になる。そこで[無視]を選択する。ここで、[自動]と[検査]は表に見えている限りでは動作に変わりはなく状況は変わらない。[確認]はhttpsの通信を行うごとに全て、検査か無視するかのチェックをさせられるのでメンドクサイし通信に失敗する。
選択後は、[OK]から[OK]と[SSL/TLS]の画面まで戻り、[OK]でシステムに変更を適用することでfirefoxでのプロキシツールを介したhttps通信が可能となる。
リスクを忘れずに
この設定はリスクを生んでいることを忘れてはならない。ESETの[SSL/TLSフィルタリングされたアプリケーションのリスト]からfirefoxが実質除外されたことで、firefoxを介するSSL/TLSフィルタリングは行われない。この設定を行うということは今後firefoxの利用に気を付ける必要がある。自分の調査ではこれ以上の解決法が見つからなかったので何かいい方法があればお教えください。
まあ、基本的に今後プロキシツールで使う以外に使わずに別のブラウザを使えば良いかと。