ZAPROXYも予想外にも3回目となりました。前回からの続きです。
これまでの操作の復習
ZAPの立ち上げ
kali ー 03-Web Application Analysis ー zaproxy
ZAPの起動画面
プロテクトモードに変更
立ち上がったコンソールの左上の ” Mode ” を ” Protected Mode ” に変更。(一度変更すると次回起動時からのデフォルトが変わります)
ブラウザのプロキシにZAPを設定
最も簡単な方法は右上の ” FireFox ” マークをクリックして、自動的にZAPがプロキシに設定されたFireFoxを起動。
この操作で立ち上がったFireFoxで任意のサイトをブラウズすると、ブラウズとサイトの間のデータのやり取りが全てZAPにモニターされます。
証明書の設定
ZAP側からの証明書発行
Tools > Options > Network > Server Certificates > Save
ブラウズ側の証明書登録
Seyyings > Privacy & Security > Security > certificates > View Certificates…
Import…から設定。
事前準備の続き(コンテキストへの登録)
FireFoxでブラウズしたサイトの一覧が、ZAPの左上欄にも表示されます。
上図では ” 192.168.11.21 ” が左上欄の ” Sites ” に記録されています。
これはラズパイ4B(図右)をサーバーとして立ち上げたWEBサイトです。
コンテキストに登録
左上 ” Sites ” 欄を右クリックして、 ” Include in Context ” ー ” New Context ” を選択します。
次のダイアログで ” OK ”
ターゲットのWEBサイトが ” Contexts ” 欄に登録されます。
” Contexs ” 欄に登録されたサイトがターゲットとなります。
これで準備は整いました。
サイトの診断について
スパイダースキャン
ターゲットサイトに含まれているページをスキャンして収集します。
左上欄 ” Contexts ” 欄のターゲットサイトを右クリックして、 ” Spider… ” を選択。
次のダイアログで ” Start Scan ”
画面下欄にスキャンの結果(=サイトの全ページ一覧)が表示されます。
アクティブスキャン
サイト内の存在しないはずの(隠し)ページまでスキャンしたり、フォームに入力してみたり様々な検査を行います。
左上欄 ” Contexts ” 欄のターゲットサイトを右クリックして、 ” Active Scan… ” を選択。
次のダイアログで ” Start Scan “
下欄の表示:存在しないはずのページを(当てずっぽうで表示しようとして)検査しています。
この操作、やられる側から見れば迷惑行為以外の何者でもないですね。
スキャン時間は、今回は殆ど内容が無いWEBサイトなので1分程で終わりましたが、実際に本物のサイトを検査すると数時間〜数十時間かかるようです。
下欄の ” Alerts ” タブでは、発見されたアラートの一覧が表示できます。
アラートの詳細表示。
パッシブスキャンについて
パッシブスキャンを開始するボタンはありません。
パッシブスキャンはZAPをプロキシに設定した瞬間から自動的に始まっています。
プロキシに設定されているZAPは、ブラウザとWEBサーバーの間に立って、そのデータのやり取りを仲介しています。
なのでそのZAPを通過するデータは黙っていてもモニターして検査できる訳であり、デフォルトで最初から検査しています。
この行為はブラウザ側もしくはサーバー側の少なくともどちらか一方が自分の管理下である限り、違法行為ではありません。
つまりデフォルトでパッシブスキャンが行われているので、ブラウザでサイトを見るだけで勝手にそのデータを分析してくれています。
左上欄にはブラウザで訪問したWEBサイトが蓄積していきますし、下欄の ” Alerts ” タブには集めたアラート情報が集積されていきます。
” Alerts ” 欄の各項目をクリックすると詳細情報が出てきます。(私にそれを解説するスキルはありませんけど)
結果の出力・保存
上段メニューの ” Report ” から、 ” Generate Report… ” を選択し、
ダイアログで保存先のディレクトリ(上から3番目)と、保存したいターゲットWEBサイト(上から6番目)を選択します。
保存先はデフォルトではホームディレクトリとなりますが、下図ではホーム下に ” zapreport ” ディレクトリを作成して保存先にしています。
結果はHTMLで表示されます。
レポートが保存されているディレクトリ
まとめ
ZAPの解説を結局3回に分けて行いました。
これで一応、他人に迷惑をかけない検査ができるようになりました。多分。
ZAPは、ほぼ同機能ツールのBurpsuiteに比べて大量で詳細なデータ収集が出来ますが、一方で不要なデータまで収集して来るので、その解析にはまだ勉強が必要です。
つまりZAPの集めるデータは特異度が低く感度が高い。Burpsuiteはその逆のようです。
コメント