WebSecurity

OWASP ZAP をビルドする(2017年8月)

投稿日:2017-08-10 更新日:

OWASP ZAP は、Webの通信内容を見たり、Webアプリケーションの脆弱性を調査するためのアプリケーションです。

このツールは オープンソースで開発されておりソースコードが公開されているため、誰でも自分でビルドすることができます。今回、このツールのビルド環境を作りましたので、その手順を大まかに紹介します。

基本的には、Building · zaproxy/zaproxy Wiki に書いてある通りに進めるだけですが、一部補足してあります。

1. 環境

  • Windows 10
  • Eclipse

2. JDK のインストール

Java SE – Downloads にて、JDK をダウンロード & インストールします。

3. Eclipse のインストール

Eclipse IDE for Java Developers にて、Eclipse をダウンロード & インストールします。

インストーラの指示に従うだけです。

スクリーンショット: Eclipseのインストール その1
スクリーンショット: Eclipseのインストール その2
スクリーンショット: 今回インストールした Eclipseの情報です

4. Eclipse に OWASP ZAP のソースコードを取り込みます

Eclipse を起動します。

4-1. Eclipse の workspace を分ける

Eclipse の workspace は、OWASP ZAP 専用のフォルダを指定しました(他と別にしたかったため)。

スクリーンショット: Eclipseのworkspace(ここではデフォルトのパスになっています)

4-2. Eclipse の設定「Default repository folder」を変更する

この後で取得するソースコードは、Eclipse の設定「Default repository folder」に保存されるため、希望のフォルダがある場合は変更します。

スクリーンショット: Default repository folder を変更しました

4-3. ウィルス対策ソフトのリアルタイム保護機能を一時的に無効にする

OWASP ZAP のソースコードには、ウィルス対策ソフトがウィルスであると検知してしまうファイルが含まれているため、一時的にウィルス対策ソフトのリアルタイム保護機能を無効にします。今回は、Windows Defender の「リアルタイム保護」をオフにしました。

スクリーンショット: Windows Defender のリアルタイム保護を一時的にオフにします

4-4. OWASP ZAP のソースコードを取り込む

  1. [File]メニュー –> [Import…] をクリックします。
  2. [Team / Team Project Set] を選択し、[Next >] ボタンをクリックします。
  3. [URL] を選択し、以下のURLを入力します。
  4. [Finish]をクリックすると、OWASP ZAP のソースコードのダウンロードが始まります。
    • かなり時間が掛かります。

終わったら、ウィルス対策ソフトのリアルタイム保護機能は有効に戻しておきましょう。

5. ビルドします

GeneratingTheWeeklyRelease · zaproxy/zaproxy Wiki に書いてある項目をいくつか試してみます。

5-1. 「Update extension zap.jar files」をやってみる

  1. zaproxy/build/build.xml を右クリックします。
    スクリーンショット:zaproxy/build/build.xml を右クリックします
  2. [Ant Build…] をクリックします。
    スクリーンショット:「2. Ant Build…」をクリックします
  3. Targetsタブで「copy-source-to-build」にチェックを入れます(その他の選択肢のチェックは外します)。
    スクリーンショット: Targetsタブで「copy-source-to-build」にチェックを入れます(その他の選択肢のチェックは外します)
  4. [Run]ボタンをクリックします。

どんなファイルができたかは、git status コマンドで分かります。

5-2. 「Generate the weekly add-ons」をやってみる

5-1 とほぼ同様の手順です。Targetsタブで「deploy-weekly-addons」にだけチェックを入れます。

5-3. 「day-stamped-release」をやってみる

5-1 とほぼ同様の手順です。Targetsタブで「day-stamped-release」にだけチェックを入れます。

zaproxy/build/ZAP_WEEKLY_D-2017-mm-dd.zip といったファイルが生成されますので解凍します。

PowerShell を起動し、解凍されたファイルが配置されたパスにに移動します。

以下のコマンドを実行すると、OWASP ZAP が起動します。

PS> ./zap -dir test

ちゃんと起動しました。

-dir test を指定しているため、セッションのデータや一時的に使用されるようなデータは、testフォルダに保存されます。

スクリーンショット: 自分でビルドした OWASP ZAP が起動しました。

6. まとめ

わりとすんなりできてしまいます。

ここから先は、ブレークポイントを設定して動作を追ってみるなどすると面白いと思います。

enjoy!



Pocket

-WebSecurity

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


*

おすすめ記事&スポンサーリンク

関連記事

OWASP ZAP のCSRF対策トークン自動生成処理は何をしているのか?

OWASP Zed Attack Proxy (ZAP)とは?でも紹介しているように、OWASP ZAPにはCSRF対策トークンを自動で生成してくれる機能があります。これは、自動検査中にパラメータとし …

ディレクトリ・トラバーサルとファイルインクルードとの違い

Webアプリケーションのセキュリティに関して、 ディレクトリ・トラバーサル ファイルインクルード という言葉があります。この2つ違いが分かりにくいと感じているので、その辺りについてメモしておきます。 …

OWASP BWAを使って気楽にModSecurityを試す方法

OWASP BWAにはModSecurityが最初から導入されています。簡単に有効/無効の切り替えができるので、ModSecurityがどんな動きをするのかちょっと見てみる場合に便利です。 OWASP …

同梱のJDKを使わずにMac版OWASP ZAP2.3を使う方法

OWASP ZAPのMac版はJDKが同梱されているためサイズが非常に大きくなっています。なぜ、Mac版だけこういうことになっているかについては、Issue 788 – zaproxy & …

IPA ウェブ健康診断仕様とは?

Webアプリケーションの脆弱性を診断したい場合に、出発点として使える資料をIPA 情報処理推進機構が公開しています。「安全なウェブサイトの作り方」とともに公開されている「ウェブ健康診断仕様」という資料 …


lathe