【OWASP ZAP】の使い方!無料で脆弱性診断する方法|サイバーセキュリティ.com

【OWASP ZAP】の使い方!無料で脆弱性診断する方法



OWASP ZAP(オワスプザップ)は、無料の脆弱性診断ツールです。Webアプリケーションの脆弱性を簡単に診断できますが、使い方がわからない方もいるのではないでしょうか。この記事では、OWASP ZAPの使い方を詳しい手順とともに解説します。診断項目や日本語化方法も紹介しますので、ぜひご覧ください。

OWASP ZAPとは

OWASP ZAPとは、非営利団体「OWASP(オワスプ:The Open Web Application Security Project)」が提供する脆弱性診断ツールです。指定したURLのWebアプリケーションに脆弱性がないか、無料でチェックできます。OSS(オープンソースソフトウェア)なので、利用手続きはいらず誰でも利用できます。

OWASPとは:信頼性のある組織?

OWASP ZAPを提供する「OWASP」は、2001年にアメリカで設立されたOSSコミュニティです。Webアプリケーションやソフトウェアに関するセキュリティ向上を図るため、さまざまな活動を国際的に行っています。たとえば、Webアプリケーションの脅威をまとめる定期レポート「OWASP TOP10」が有名です。2022年現在で200以上の支部を世界的に展開しており、日本支部「OWASP Japan」も存在します。

WEBセキュリティ診断の必要性

近年ほとんどのWebサービスには、Webアプリケーションが用いられています。検索エンジンやECサイト、SNSのブラウザ版などのWebサービスは、Webアプリケーションがなければ成り立ちません。Webサービスの基幹であるWebアプリケーションに脆弱性があれば、攻撃者に狙われる隙が生まれてしまいます。

Web開発者は充分な検証のもとにWebアプリケーションを開発していますが、診断なしに全ての脆弱性を発見するのは困難です。攻撃者によって脆弱性を突かれた場合、以下のような被害が生じる恐れがあります。

  • システム障害による自社サービスの停止
  • サービス停止中の機会損失、復旧費用の負担
  • 顧客の個人情報漏えい
  • 情報漏えいによる損害賠償責任、企業イメージの低下

こうした被害を未然に防ぐために、Webアプリケーションの脆弱性診断が重要です。サイバー攻撃の手口は日々進化しているため、定期的なチェックが望ましいでしょう。

OWASP ZAPの使い方

OWASP ZAPは、Windows / Mac / Linuxに対応しています。ただし、JAVA8以降の実行環境が必要です。ここでは、OWASP ZAPの使い方を紹介します。

1. OWASP ZAPをインストール

まずは、OWASP ZAPをインストールしましょう。

下記記事にJAVAのインストール方法から詳しく記載されてますので、インストールがまだな方はご覧ください。

2.OWASP ZAPでWebアプリケーション自動診断

1.「現在のタイムスタンプでファイル名を付けてセッションを保存」にチェックを付けて、「開始」をクリックします。

2. 今回は自動診断するため、「Automated Scan」をクリックします。

3. 「URL to attack」に診断するWebサイトのURLを入力して、「攻撃」をクリックし、「アラート」タブをクリックすると、診断結果がでてきます。

3. ローカルプロキシ設定

以下の手順で、脆弱性診断に必要なローカルプロキシを設定します。

  1. OWASP ZAPを起動し、左上の「標準モード」を「プロテクトモード」に変更(※理由は後述)
  2. 画面上部メニューバーから「ツール」 → 「オプション」 →「ローカル・プロキシ」を選択
  3. 画面右側の「Address」に「localhost」を入力。ポート番号はそのままでOK(※標準の「8080」をすでに使用している場合は、「49152〜65535」のうちで任意の番号を入力)

OWASP ZAPのローカルプロキシ設定が完了したら、現在お使いのWebブラウザでもプロキシ設定を行います。ブラウザの種類によって詳細手順は異なりますが、基本的には「設定」から「プロキシ設定」に進み、OWASP ZAPで入力したものと同じポート番号を入力して完了です。

設定終了後、ローカルで診断対象のWebサイトにアクセスします。OWASP ZAPの画面左側の「サイト」欄にWebサイトのURLが表示されていれば、正しく設定できています。

4. 脆弱性診断の実行

最後に、以下の手順で脆弱性診断を実行しましょう。

  1. 画面 左側の「サイト」欄にあるURLを右クリック→「コンテキストに含める」→「New Context」を選択
  2. 表示されたセッションプロパティから、URLを選択し「OK」をクリック
  3. 「サイト」欄のURLを右クリック→「攻撃」→任意の診断項目を選択し実行

注意点として、「試しに他のWebサイトのURLを入れてみる」といった行為は避けましょう。脆弱性診断は、対象のWebサイトに攻撃してテストする仕組みです。第三者のWebサイトに攻撃を仕掛けてしまうため、必ず自社のWebサイトのURLのみを入力しましょう。

【補足】OWASP ZAPの診断モード

OWASP ZAPには、以下4つの診断モードがあります。

  1. プロテクトモード
  2. 標準モード
  3. 攻撃モード
  4. セーフモード

前述の通り、脆弱性診断を実行する際は「プロテクトモード」を選択します。理由は、「標準モード」と「攻撃モード」は、無関係なWebサイトに攻撃を仕掛けてしまう恐れがあるためです。残りの「セーフモード」は脆弱性診断ができません。

OWASP ZAPの診断項目

OWASP ZAPは、主に以下4つの診断項目があります。

  1. 簡易スキャン
  2. 動的スキャン
  3. 静的スキャン
  4. スパイダー

それぞれの機能を簡単に説明します。

(1)簡易スキャン

簡易スキャンは、プロキシ設定をせずに実行するスキャンです。OWASP ZAPの起動時に表示される「クイックスタート」画面にURLを入力し「攻撃」をクリックすると、即座に攻撃が開始されます。なお、プロテクトモード時は使用できません。

(2)静的スキャン

静的スキャンは、プロキシ設定後にWebサイトを手動で検査する方法です。ユーザーがブラウザで操作し、操作に対するレスポンスから脆弱性を評価します。

(3)動的スキャン

動的スキャンとは、プロキシ設定後に対象のWebサイトを自動で検査する診断です。対象サイトのWebアプリケーションに自動でリクエストを送り、静的スキャンよりも高精度な検査を行えます。

(4)スパイダー

スパイダーは、指定Webサイト内をクローリングして、関連するURLを自動検出する機能です。クローリング時に静的スキャンも行っています。

OWASP ZAPの診断結果確認方法

診断終了後、発見された脆弱性は「アラート」タブに追加されます。脆弱性は「High」「Medium」「Low」の3段階のリスクレベルが表示されます。

また、診断結果をまとめたレポートの生成も可能です。画面上部の「レポート」タブから「HTML形式」または「XML形式」を選択すると、レポートが作成されます。

なお、脆弱性診断のセッションデータの保存もできます。画面上部の「ファイル」タブから「永続化セッション」を選択すると、任意の場所にデータを保存可能です。ファイルを開く際は、同じく「ファイル」タブから「セッションデータファイルを開く」をクリックしましょう。

OWASP ZAP日本語化方法

OWASP ZAPのメニューは、初回起動時は英語で表記されています。日本語化したい場合は、以下の手順で設定しましょう。

  1. メニューバーから「Tools」→「Options」→「 Language」と選択
  2. Languageのボックスから「日本語」を選択→「OK」をクリック
  3. OWASP ZAPを再起動

上記手順で日本語化が完了します。設定後に再起動しないと変更が反映されませんので、忘れずに行いましょう。

まとめ

OWASP ZAPは、無料の脆弱性診断ツールです。利用する際は、紹介した手順をご参考ください。OWASP ZAPで脆弱診断を実施したあとは、診断結果にもとづいた対処をおこないましょう。脆弱性を放置したままでいると、サイバー攻撃に晒されるリスクが高まります。社内に専門的な情報システム担当者がいない場合は、ぜひご相談ください。


SNSでもご購読できます。