OWASP ZAP
OWASP ZAPを使う。
注意事項
OWASP ZAPをプロキシにした場合、アクセスしたサイトの証明書が全てOWASP ZAP製になるので(細かい原理は分からないけど。。)、OWASP ZAPのルート証明書を登録する必要がある。
※ "ルート証明書登録"項参照
※参考 https://www.pupha.net/archives/3610/
java の 1.8 が必要なので 1.8を入れる。(JDK11だと止められる)
※javaのversionじゃなくて、oracle版じゃない動かない・・・?
とりあえず、起動時に誘導されるoracleのサイトから落としたJREで起動確認。
adoptopenjdkだと起動しなかった
ZAP起動まで
※参考 脆弱性診断ツールOWASP ZAPのインストール手順
hosts設定
※参考 OWASP ZAPの設定と使い方
hosts("C:\Windows\System32\drivers\etc\hosts")に下記を追加
myserver.com 127.0.0.1
※ドメイン名は好みで
最終的にブラウザからアクセスする際、http://localhost へのアクセスだとプロキシ(#ZAP)経由でのアクセスをなぜか行っていくれないので、myserver.comへのアクセスを行う体にする。
ブラウザのプロキシ設定
chrome用
`設定 > プライバシーとセキュリティ > システムの"パソコンのプロキシ設定を開く"``
windowsの設定フォームが起動するので、localhost, 18080 で設定する。
ルート証明書登録
OWASP ZAPをプロキシにした場合、アクセスしたサイトの証明書が全てOWASP ZAP製になるので(細かい原理は分からないけど。。)、
OWASP ZAPのルート証明書を登録する必要がある(https://www.pupha.net/archives/3610/)
ZAPのルート証明書をchromeに入れておく必要がある。
ZAP側作業
証明書の生成を行う。出力されるcrtファイルはブラウザへimportする用。
ツール > オプション > ダイナミックSSL証明書 > 生成 > 上書きする > crtファイルを保存
chrome側作業
ZAP側作業で生成した証明書のimportを行う。
設定 > 証明書の管理 > "信頼された発行機関"でインポート > zapで生成したファイルをインポートする
動作確認
新しくchromeのウインドウを新しく開いて、https://myserver.com:3000/ へアクセスする。
HUDがどうこうっていうのが出てくるので、HUDを使わない方を選択する。
アドレスバーの左側が鍵アイコンになっていれば成功。
※鍵アイコンをクリックして"証明書(有効)"になっていれば成功。