kalilinuxにOWASP ZAPをインストールする


以前違う環境で使った事はあったのですが、今回別の環境で少し使いたくなったので、手順を残しておきます。

OWASP ZAPについては公式サイトや下記サイトが分かりやすいです

インストール先の環境

virtual box上にインストールしているkaliilnux

ionis@kali:~/workspace/ZAP_2.3.1$ uname -a
Linux kali 3.14-kali1-amd64 #1 SMP Debian 3.14.5-1kali1 (2014-06-07) x86_64 GNU/Linux

javaインストール

OWASP ZAPがJava7以降を要求しているらしく、kalilinux 1.0.9aデフォルト設定だと下記が出て実行出来ないため

ionis@kali:~/workspace/ZAP_2.3.1$ sh zap.sh 
Exiting: ZAP requires a minimum of Java 7 to run, found 1.6.0_32

手順

  1. JDK ダウンロード

  2. インストール

ionis@kali:~/workspace$ sudo mv jdk1.8.0_31 /opt/
ionis@kali:~/workspace$ sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_31/bin/java 300
ionis@kali:~/workspace$ java -version
java version "1.6.0_32"
OpenJDK Runtime Environment (IcedTea6 1.13.4) (6b32-1.13.4-1~deb7u1)
OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)
ionis@kali:~/workspace$ sudo update-alternatives --config java
alternative java (/usr/bin/java を提供) には 4 個の選択肢があります。

  選択肢    パス                                          優先度  状態
------------------------------------------------------------
* 0            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      自動モード
  1            /opt/jdk1.8.0_31/bin/java                        300       手動モード
  2            /opt/jre1.8.0_31/bin/java                        1         手動モード
  3            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      手動モード
  4            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      手動モード

現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください: 1
update-alternatives: /usr/bin/java (java) を提供するために 手動モード で /opt/jdk1.8.0_31/bin/java を使います
ionis@kali:~/workspace$ java --version
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
ionis@kali:~/workspace$ java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

OWASP ZAPインストール

  1. ダウンロード
  2. 展開 & 起動
tar xzvf ZAP_2.3.1_Linux.tar.gz
cd ZAP_2.3.1
sh zap.sh

ブラウザの設定をproxyしてenjoy!

  • Iceweaselがインストールされていたので、以下から設定をへんこう
    • Edit -> Preferences -> Advanced -> Network -> Settings
    • Manual proxy configurationを選択し、HTTP Proxy: localhost, Port: 8080
    • 「Use this proxy server for all protocols」にチェックを入れておく

普段からproxyを利用しているような環境の場合

もし、普段からProxyを使っていたり立てていたりする場合は、上記設定を入れてもブラウザから外部に出れず下記のようなエラーメッセージが出る事があるかもしれません

ZAP Error [java.net.UnknownHostException]: example.com

その場合は、OWASP ZAPを触ってみるに以前記載したのですが、プロキシチェインを設定してあげると良いです。
下記に再度記載しておきます

プロキシチェインの設定

  • ツール -> オプション -> Options -> ネットワーク -> プロキシ・チェイン利用
    • proxyサーバーとportを記載し、Addから除外するドメインを記載しておく
    • 一部豆腐が出ていますが、おそらく日本語周りで何かがあったんだと思います(気にしないでください)

ブラウザが出す証明書の警告が面倒な場合

証明書をインポートしてしまいましょう
OWASP ZAPから以下の手順

  1. OWASP ZAPから証明書を作成
    • ツール -> オプション -> Options -> ダイナミックSSL証明書 -> 保存
    • 保存したパスは覚えておく
  2. ブラウザ(Iceweasel)にインポート
    • Edit -> Preferences -> Advanced -> Certificates -> View Certificates -> Authorities -> Import
    • 先程保存したcerファイルを指定し取り込む
    • 取り込む際には(This certificate can identify websites)にチェックをいれておく

まとめ

OWASP ZAPは初めてのインストールというわけではないのに、普段Javaを利用しない人なので、インストールに少し手間取りましたorz
さて、やりたかった事をやってみるぞー!