wivern ロゴ

サイバーセキュリティ研究所

サイバーセキュリティを中心に、軍事、防犯、サーバーの管理と監視、その他、最新技術を研究しています。


OWASP ZAP 2.6 スタート・ガイド

[抄訳]OWASP ZAP 2.6 Getting Started Guide

OWASP ZAP 2.6 Getting Started Guide

[原文]OWASP ZAP 2.6 Getting Started Guide

 『脆弱性診断スタートガイド』を読んだんですが、実践を積むための記述に乏しくて、ネットで資料を探しているときにこの英文ドキュメントに出遭いました。

 全10ページの短いスタート・ガイドで、始めの6ページは ZAP の概要とインストールやセットアップが書かれていて、同様の内容は『脆弱性診断スタートガイド』やネット上にもたくさんあるので、7ページ以降の実践部分を翻訳しました。

 翻訳は、基本的に直訳でお世辞にもわかりやすいとは言えませんが、同好の士の参考になればと思って公開します。


(p.07)
ZAP でペネトレーション・テストを始める

ZAP を使い始めるもっとも簡単な方法は、Quick Start テストを実行することである。Quick Start は、ZAP のインストール時に自動的にインストールされる ZAP のアドオンである。

重要:ZAP を使って攻撃するのは、積極的な攻撃でテストする許可を得ているアプリケーションだけにするべきである。これは現実の攻撃のように振る舞うシミュレーションなので、実質的損害をサイトの機能やデータ等に与える可能性がある。ZAP を使うのが心配なら、( ZAP の機能は大幅に減るが)セーフ・モードに切り替えて被害を抑えることができる。

ZAP をセーフ・モードに切り替えるには、メイン・ツールバーのモード・ドロップダンの矢印をクリックして、ドロップダン・リストを広げて、Safe Mode を選ぶ。

Quick Start テストを実行する

Quick Start テストを実行するには:

1. ZAP を開始して、Workspace Window の Quick Start タブをクリックする。
2. 攻撃する URL のテキスト・ボックスで、攻撃したいウェブ・アプリケーションの完全な URL を入力する。
3. Attack ボタンをクリックする。

ZAP はスパイダーでウェブ・アプリケーションのクロールを始めて、見つけたページのそれぞれを受動的にスキャンする。そして、ZAP はアクティブ・スキャナを使って発見されたページ、機能、パラメータの全てを攻撃する。

テスト結果を解釈する

ZAP がウェブ・アプリケーションをスパイダー検索する際、ウェブ・アプリケーションのページとそれらのページをレンダリングするのに使われたリソースのマップを組み立てる。そして、それぞれのページに送ったリクエストとレスポンスを記録して、リクエストやレスポンスに何か潜在的に悪いところがあるなら、アラートを作成する。

探索したページを見る

探索したページのツリー状のビューを調べるには、Tree Window の Sites タブをクリックする。アクセスした個々の URL を見るために、ノードを広げることができる。

アラートとアラートの詳細を見る

Footer の左手側に、テスト中に見つかった Alerts の数が、リスクの種類に分類されて入っている。これらのリスクの種類は:
リスク分類フラグ


(p.08)
テスト中に生成されたアラートを見るには:

1. Information Window の Alerts タブをクリックする。
2. Information Window の右側の URL と検出された脆弱性を表示するために、そのウィンドウに表示されたそれぞれのアラートをクリックする。
3. Workspace Windows で、ヘッダの中身とレスポンスのボディを見るために、Response タブをクリックする。アラートを生成したレスポンスの部分が、ハイライトされる。

ZAP でペンテストを拡張する

受動的スキャンと自動攻撃の機能は、ウェブ・アプリケーションの脆弱性評価を始めるには素晴らしい方法だが、いくつかの制限がある。これらの中には:

・ZAP の認証機能を設定していなければ、ZAP は要求された認証を処理できないので、ログイン・ページで保護されたページは受動的スキャン中に発見できない。
・ZAP のデフォルトのスパイダで見つけられないページは、受動的スキャン中にテストできない。ZAP は、受動的スキャンの他に、発見と範囲の追加のオプションを提供する。
・受動的スキャンでの一連のエクスプロイトや自動攻撃で実行される攻撃のタイプの制御は、たくさんあるわけではない。ZAP は、受動的スキャンの他に、エクスプロイトや攻撃のための追加のオプションをたくさん提供する。

ZAP でスパイダの設定と実行をする

テストを拡張して改善するひとつの方法は、ウェブ・アプリケーションを調査するのに ZAP が使っているスパイダを変更することである。Quick Scan は従来の ZAP スパイダを使っていて、ウェブ・アプリケーションからのレスポンスの HTML を調べることで、リンクを発見する。このスパイダは早いが、JavaScript を使ってリンクを生成する AJAX ウェブ・アプリケーションを調べているときは、いつも効果的なわけではない。

AJAX アプリケーションには、ZAP の AJAX スパイダがおそらくより効果的である。このスパイダは、生成されたリンクに従ってブラウザを起動することで、ウェブ・アプリケーションを調査する。AJAX スパイダは従来のスパイダより遅くて、"指導者のいない"環境で使うためには、追加の設定を必要とする。

スパイダ間を行き来する簡単な方法は、Information Window でそれぞれのスパイダのタブを有効にして、そのタブを使ってスキャンを実行することである。

1. Information Window で、緑のプラス印( + )をクリックする。
2. Spider タブを作成するために Spider をクリックする。
3. 手順1を繰り返して、AJAX Spider タブを作成するために AJAX Spider をクリックする。
4. Spider タブと AJAX Spider タブの両方のプッシュ・ピンをクリックして、二つのタブを Information Window に固定する。

この両方のタブには、New Scan ボタンがあることに注意する。

サイトを調査する

スパイダは基本的なサイトを調査するには素晴らしい方法だが、より効果的にするために、手動調査を組み合わせるべきである。スパイダは、例えば、ウェブ・アプリケーションのフォームに基本的なデフォルトのデータしか入力しないが、ユーザは、ZAP にウェブ・アプリケーションの多くをひとつずつ見せることができる、より関連性のある情報を入力できる。これは、有効なメール・アドレスが要求される登録フォームのようなものに、特に当てはまる。

(p.09)
スパイダは、エラーを引き起こすランダムな文字列を入力することができる。ユーザは、そのエラーに反応して正しい書式の文字列を与えることができ、フォームが送られて受け付けられると、アプリケーションの多くをむき出しになる可能性がある。

ZAP をプロキシとして使うようにブラウザを設定したので、そのブラウザでウェブ・アプリケーションの全てを調べるべきである。そうすると、ZAP は脆弱性を調査中に発生した全てのリクエストとレスポンスを受動的にスキャンして、サイト・ツリーを構築し続けて、調査中に見つかった潜在的な脆弱性のアラートを記録する。

他のページにリンクしているかどうかにかかわらず、ウェブ・アプリケーションのそれぞれのページの脆弱性を ZAP に調べさせるのは重要である。曖昧さは安全ではなく、隠されたページは警告や通知なしで生きることがある。なのでサイトを調べるときは、可能な限り徹底的にやる。

ZAP で能動的スキャンを実行する

今までのところ、ZAP はウェブ・アプリケーションの受動的スキャンを実行しただけである。受動的スキャンは決してレスポンスを変更せず、安全と見なされている。スキャンはまた、調査をスロー・ダウンさせないようにバックグラウンド・スレッドで実行される。受動的スキャンはなんらかの脆弱性を見つけるのが得意で、ウェブ・アプリケーションの基本的なセキュリティの状態の感触を得る方法で、より調査が必要とされるところを調査する。

しかしながら、能動的スキャンは選ばれた標的に対して、既知の攻撃を使って他の脆弱性を見つけようとする能動的スキャンは、それらの標的への実際の攻撃で、標的をリスクに晒す可能性があるので、テストの許可のない標的に対して能動的スキャンを使わない。

能動的スキャンを開始するには:

1. Tree View の Sites タブで、能動的スキャンを実行したいサイトを選択する。
2. 選択したサイトを右クリックして、Active Scan を選択する。

または、

1. Information Window で、Active Scan タブを選択する。
2. New Scan をクリックする。

設定を見直して変更するには、能動的スキャンを開始して:

1. Menu Bar で、Tools → Active Scan をクリックする。
2. 設定を見直して、したい変更をする。
3. これらの設定で、Active Scan を始めるために Start Scan をクリックする。

「テスト結果を解釈する」に示すように、受動的スキャンの結果を振り返るのと同じ方法で、能動的スキャンの結果を振り返ることができる。

(p.10)
ZAP についてもっと学ぶ

さあこれで、ZAP Noいくつかの基本的な機能に精通して、ZAP の機能やそれらの使い方について、ZAP の User Guide からもっと学ぶことができる。User Guide は、ステップバイステップの説明、API とコマンドライン・プログラミングのリファレンス、説明動画、ZAP を使うための秘訣やコツを提供する。

役に立つリンク

OWASP Zed Attack Proxy Project – ZAP のメイン・プロジェクト・ページ
OWASP ZAP Wiki – ZAP の Wiki
OWASP ZAP User Guide - The ZAP ユーザ・ガイド
OWASP ZAP Hot Keys - ZAP のホットキーのリスト
ZAP Proxy Users Group – ZAP ユーザの Google グループ
ZAP Proxy Developers Group – ZAP の開発者とコントリビュータのGoogle グループ


記述に際しては、細心の注意をしたつもりですが、間違いやご指摘がありましたら、こちらからお知らせいただけると幸いです。



« 戻る


↓ Now Translating...

↑ Now Translating...

↓ Now Reading...

↑ Now Reading...

↓ Recommending...

↑ Recommending...