5
4

More than 3 years have passed since last update.

OwaspZapでlocalhostでアクセスしたときだけアクセス履歴が表示されない件について

Posted at

はじめに

Webサイトを作る仕事を最近はしており、脆弱性診断をしたいという話になりました。
そこで、新しい技術をやりたい私が担当することになりました。

全く知識がないため、ネット記事の設定の仕方(内容はどれも同じ)をみながら設定をしたのですが、localhostのアクセスのみうまくいきませんでした。普通のwebサイトはできる。

そこで色々調べたのでまとめたいと思います。

問題

OwaspZapの初期設定を以下のように行いました。

ローカル・プロキシ
bandicam 2021-08-10 22-18-34-508.jpg

FireFox
bandicam 2021-08-10 22-21-31-089.jpg

Chrome
bandicam 2021-08-10 22-22-49-155.jpg

chromeはプロキシの設定に拡張機能のSwitchyOmegaを使っています。

この設定で、Webサイトなどにアクセスすると履歴に表示されるのですが、Dockerで作成したJupyter環境(localhost)にアクセスすると何も表示がされません。Railsアプリのコンテナ(localhost:3000)も同様でした。

ちなみに、この問題はStackOverFlowにて質問をしています。 (現段階では完全解決していません)

解決方法 1

とりあえずできるようにはしたので、解決方法を載せます。

まず、localhostが表示されないとネットで調べましたが同じような症状の記事はほぼ見つかりませんでした。

その中で、OWASP ZAPの初期導入手順(ルート証明書の追加手順もあるよ)の記事に同じような症状がありました。

hosts設定
※参考 OWASP ZAPの設定と使い方

hosts("C:\Windows\System32\drivers\etc\hosts")に下記を追加
myserver.com 127.0.0.1
※ドメイン名は好みで

最終的にブラウザからアクセスする際、http://localhost へのアクセスだとプロキシ(#ZAP)経由でのアクセスをなぜか行っていくれないので、myserver.comへのアクセスを行う体にする。

こちらを試して、localhostの代わりにmyserver.comにアクセスすることで表示されるようになりました。
まず、メモ帳を管理者として実行します。(上書き保存をするため)
そのあとにC:\Windows\System32\drivers\etcにあるhostsというファイルを開きます。
bandicam 2021-08-10 22-35-39-665.jpg

(テキストドキュメント(.txt)をすべてのファイルにすると開けます)

そして適当な行に以下の行を追加します。

127.0.0.1 myserver.com

myserver.comにアクセスします。

bandicam 2021-08-10 22-41-07-845.jpg

bandicam 2021-08-10 22-49-28-243.jpg

表示されました。

しかし、myserver.comにアクセスではなくlocalhostにアクセスしたいので、別の方法も考えました。

解決方法 2

クイックでブラウザを開くとなぜか表示されました。

UER4v.png

アイコンにFireFoxがありますので利用できます。

また、Chromeのクイックスタートは以下のように行います。

緑の「+」マークをクリックする。
クイックスタートをクリック

N0fAO.png

Manual Explore (緑背景の稲妻)をクリック
bandicam 2021-08-10 22-55-08-824.jpg

Explore your applicationのFirefox/Chromeに変更して、Lanch Browserをクリックする

Z6jR2.png

開いたサイトでlocalhostにアクセスすると履歴が表示されます。

解決方法 3

どうすれば、通常の方法でアクセスできるのだろうとTwitterで検索してみました。
すると以下のツイートを発見しました。

localhostだけOwaspZap経由でアクセスできていないのではと推測。

調べるのをOwaspZapではなく、no_proxyなどプロキシについてしていきました。

すると以下の記事を発見
localhost(127.0.0.1)宛の通信をproxy経由にする方法

この記事通りにやることでFireFoxのみlocalhostにアクセスするときに指定したプロキシを経由するようにできました。

やり方は以下の通りです。

アドレスバーに「about:config」と入力しエンターでアクセスします。

bandicam 2021-08-10 23-06-25-001.jpg

このような画面になるので、「危険性を承知の上で使用する」をクリック

検索BOX(設定名)が現れるので「network.proxy.allow_hijacking_localhost」と入力

bandicam 2021-08-10 23-08-16-847.jpg

falseになっている場合は、画像のように、1つ目の⇔をおしてtrueに変えます。

これでlocalhostにアクセスすることで表示されます。
また、1度設定すれば問題ありません。

おわりに

Chormeで継続的にlocalhostでアクセスしてプロキシ経由させる方法はまだわかっていません。
ネットの記事ではほぼ全員loclhostでアクセスできているのでもしかしたら、サイトのバージョンによって違うのかもしれません。

わかり次第更新していきたいと思います。

参考

5
4
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
5
4