4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【M3Mac版】安全なWebアプリケーションの作り方 実習環境構築【徳丸本】

Posted at

はじめに

実習環境構築の情報が古かったり、点在している状況だったため、備忘録として集約します。
M1, M2でも同様の手順で環境構築できるはずです。

動作環境

  • Mac M3 Sonoma14.5
  • docker desktop 4.25.0
  • FireFox 127.0
  • ZAP 2.15.0

環境構築の全体像

特定のURLパターンのみ、ZAPを経由して実習環境にアクセスする構図となります。

er copy.png

  • ブラウザの拡張機能であるFoxyProxyは、アクセスするURLパターンによってルーティング先を変更
    • 指定した3つのドメインのみZAPlocalhost:5888に飛ばす
    • その他のドメイン(google.comなど)は通常のアクセスを行う
  • ZAPで実習環境localhost:13128にアクセスし、通信を監視する

環境構築手順

以下の手順で進めていきます。

  1. dockerファイルダウンロードと起動
  2. ZAPインストールと設定
  3. FoxyProxyインストールと設定

1. Dockerファイルダウンロードと起動

  1. こちらのダウンロードページにBASIC認証1して、「実習用仮想マシン (Docker版 Ver 1.1.1)」をダウンロードする
  2. 「実習用仮想マシン」を適当なフォルダに解凍
  3. 解凍したフォルダパスへ移動
    $ cd <解凍したフォルダパス/wasbook-docker>
  4. Dockerファイル起動
    $ docker compose up -d
  5. localhost:13128にアクセスできることを確認

2. ZAPのインストールと設定

ZAPは、元々OWSAPという団体が提供しておりましたが、独立したとのことです。

参考:OWSAP独立について

「ZAP」を以下の手順でインストール・設定してください。

  1. こちらからZAPのmacOS (Apple Silicon - aarch64) Installerをダウンロード

  2. インストーラを起動してZAPをインストール
    ※JavaJREはMac版インストーラに含まれているので事前インストール不要です。
    ※ZAPを起動しようとしても、初回はリジェクトされます
    スクリーンショット 2024-06-25 5.47.08.png

  3. 設定アプリの「プライバシーとセキュリティ」にアクセスして「このまま開く」
    スクリーンショット 2024-06-25 5.47.31.png

  4. 「開く」
    スクリーンショット 2024-06-25 5.47.42.png

  5. 「現在のタイプスタンプでファイル名を付けてセッションを保存」にチェックした状態で「開始」
    ※セッション(通信内容)をZAPデータベースに常に保管する設定です。
    スクリーンショット 2024-06-27 6.02.44.png

  6. なにもせず「閉じる」
    スクリーンショット 2024-06-27 6.02.53.png

  7. 「Commnad + ,」で設定画面を開く

  8. Network > ネットワーク > HTTP Proxyの設定
    スクリーンショット 2024-06-25 5.52.48.png

    • 以下情報を入力する
      ホスト:localhost
      ポート:13128
  9. Network > Local Servers/Proxiesの設定
    スクリーンショット 2024-07-05 20.19.02.png

    • 以下情報を入力する
      アドレス:localhost
      ポート:58888

3. FoxyProxyの設定

  1. FireFoxでこちらにアクセスして、拡張機能のFoxyProxyをインストールする
  2. 公式の説明に従い、FoxyProxyの設定をする
  3. FireFoxで http://example.jp にアクセスできることを確認する

以上で環境構築が完了です。

学習の中断と再開について

中断再開手順はシンプルです。

中断手順

  1. ZAPを終了
  2. dockerファイル停止
    $ docker compose down

再開手順

  1. dockerファイル起動
    $ docker compose up -d
  2. ZAPを起動
    ※セッション保持方法とアドオンの管理画面のみ、上記と同様に対処してください。
  3. FireFoxでexample.jpにアクセス

以上で学習を再開できます。

参考

  1. 購入した本の巻末に認証情報が記載されています。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?