OWASP ZAP CLI 入門(インストール、起動方法、基本的なオプション)


これはなに

OWASP ZAPをCLI(CUI) から起動する方法と代表的なオプションを紹介します。

はじめに

OWASP ZAPの入門者向けの情報です。
私自身、ZAP初心者である為、内容がふわっとしていたり、想像の域をでなかったり、受け売りだったりするのでご了承ください。

脆弱性診断ええんやで(^^)

本記事は、脆弱性診断研究会が主催する「脆弱性診断ええんやで(^^)」という勉強会に参加して学んだ内容を元に作成しています。

講師は、EGセキュアソリューションズ株式会社の松本隆則さん@nilfigoです。
(参加させていただき、ありがとうございました)

脆弱性診断研究会(Security Testing Workshop)は、Webアプリケーションやネットワーク機器などに対する脆弱性診断の手法や診断ツールの使用法を研究するコミュニティです。

本勉強会は、基本は月に一度開催されており、3ヶ月に一度、脆弱性診断ビギナー向けとして開催しているそうです。

※本記事の内容に不都合があれば、すぐに削除します。

OWASPとは

OWASP - Open Web Application Security Project とは、Webをはじめとするソフトウェアのセキュリティ環境の現状、またセキュアなソフトウェア開発を促進する技術・プロセスに関する情報共有と普及啓発を目的としたプロフェッショナルの集まる、オープンソース・ソフトウェアコミュニティです。The OWASP Foundationは、NPO団体として全世界のOWASPの活動を支えています。

OWASP ZAP(オワスプ・ザップ)とは

ZAPは、無料のセキュリティ診断用プロキシツールです。
https://github.com/zaproxy/zaproxy

  • ZAP: Zed Attack Proxyの略
  • Zed:究極な という意味
  • オープンソース Apache License 2.0

脆弱性診断のプロの方曰く、業務でZAPを使う事はあまりないとのことですが、
「無料にしてはよくできてる」とのこと。
プロの方はBurp Suiteなどの有料ツールを使うらしいです。

OWAPS ZAPのインストール方法

ZAPはZAPの公式Githubリポジトリからダウンロードできます。

Macの方はBrew Caskでお手軽インストールできます

brew cask install owasp-zap

OWASP ZAPの起動

OWASP ZAPを起動するとGUIが表示されます。

OWASP ZAPのモードについての注意

デフォルトでは標準モードとなっていますが、プロテクトモードに変更することを推奨します。

通常モードでは、調査対象に設定したサイト(コンテキスト)以外について、ZAPから攻撃用のリクエストが送信されてしまう恐れがあります。
その場合、第三者のサーバに大量のリクエストが送信されてしまい、法に触れる恐れがありますので十分に注意してください。

プロテクトモードでは、コンテキスト以外に攻撃用のリクエストが送られる事がないので安心です。

CLIによるOWASP ZAPの起動方法

CLIによる起動方法もGithubリポジトリのWikiに書いてあります。

Mac OSでは、以下でZAPが起動します。

/Applications/OWASP\ ZAP.app/Contents/Java/zap.sh

オプションなしで実行すると、GUIが起動すると思います。

OWAPS ZAPのコマンドラインオプション

勉強会で教えていただいた、基本的なオプションを紹介します。

Option 説明
-daemon UIなしで起動
-dir   作業ディレクトリ
-newsession ZAPセッションの保存先
-host  ZAPの待受IPアドレス指定
-post  ZAPの待受ポート指定

これらのコマンドがあれば、GUIなしで起動ができ、
実行毎に作業ファイルの保存先を変えたり、
ポートやホストを変えて多重起動することも可能です。

コマンドラインオプション利用の例

/Applications/OWASP\ ZAP.app/Contents/Java/zap.sh -daemon -port 54321

まとめ

  • OWASP ZAPは無料のセキュリティ診断用プロキシツール
  • ZAP CLIはコマンドラインでZAPを起動する方法
  • CUIにより起動できれば、診断やレポート出力の自動化など夢が広がる

以上、お役に立てば幸いです。