Linuxめも

無料で使用できるWEBサイトの脆弱性をチェックできるツールOWASP ZAPについてのまとめです。

OWASP ZAPのインストール

こちらからダウンロードし、インストールします。

Firefoxのプロキシ設定

OWASP ZAPはプロキシとして動作します。
Firefoxにアドオンを入れて、プロキシ設定をすることでFirefoxで閲覧したページの情報をOWASP ZAPで検知できるようになります。

アドオンのインストール

Firefox Plug-n-Hackアドオンを以下よりFirefoxにインストールします。
もしかすると、Firefoxの検証をスキップするために設定を変更する必要があるかもしれません。
https://developer.mozilla.org/en-US/docs/Archive/Mozilla/Plug-n-Hack/Plug-n-Hack_Tools_Supported

プロキシの設定

Firefoxのオプションから 詳細 - ネットワーク - 接続設定 にて 手動でプロキシを設定する を選択し、localhost、8080とします。

セッションの設定

OWASP ZAPを起動するとセッションについて選択する画面が表示されます。

Yes, I want to persist this session with name based on the current timestamp
Yes, I want to persist this session but I want to specify the name and location
No, I do not want to persist this session at this moment in time

どれを選択しても構いませんが、スキャンしたURLやアラートなどを後から見直したい時などは自身でセッション名を決めておけばわかりやすいので、真ん中の選択肢を選びます。

ログイン情報の設定

ログイン後のページについて脆弱性を調べたい場合は、OWASP ZAPがログインできるように設定を行います。

プロキシ設定が完了しているFirefoxにてログイン操作を行います。

OWASP ZAPのサイト画面にてログインしたURLを右クリックし、Include in Context - New Context を選択します。

セッション・プロパティ画面の「コンテキストに含める」で URL正規表現 が適切で無ければ修正します。

「技術」で使用しているDB、言語、OS、SCM、WSを選択します。

「認証」でForm-based Authenticationを選択、Login Form Target URLを参照からログイン画面のURLを選択。
ある程度入力されますが、UsernameやPasswordのパラメーターを適切に選択します。

「ユーザ」にてログイン情報を追加します。

「Forced User」で追加したユーザが選択されているか確認。

ログイン後のURLを選択し、レスポンスタブを選択します。
HTMLソースが表示されている中からログインしている場合に表示される文字列(例えば logout.php など)を選択し、Flag as Context - Authentication Logged-in indicator を選択します。

Regex pattern identified in Logged In response messages 欄に「\Qlogout.php\E」のように入力された状態になります。

サイトの一番上位のフォルダを右クリックから 攻撃 - スパイダー 選択でURLを拾ってくれますが、おそらくほとんど自動では拾ってくれないので、Firefox側にて出来る限りのページを閲覧し、フォームのボタンなども押しまくります。
これでOWASP ZAPは検証するページを記録していってくれます。

脆弱性の検証

一通りのページ遷移を行ってからサイトで最上位の階層で右クリックし、 攻撃 - 動的スキャン で検証が始まります。

動的スキャンタブで進捗が表示され、グラフのような小さなアイコンをクリックでサマリーを閲覧できます。

脆弱性はアラートタブに表示されます。
旗が赤いほど重要度が高いアラートです。

それぞれを表示させると、その内容が確認できるので原因を探り解決しましょう。

くれぐれも検証は自身が管理し、迷惑がかからないように気をつけましょう。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-09-19 (日) 19:09:26