「https通信は暗号化された通信である。」
これは有名ですが、httpsはどこまで暗号化されてわからないものなのでしょうか?
例えば、URLのパスは暗号化されていて見えないのでしょうか?
レジュメ
結論、httpsではURLパスも暗号化されてProxyサーバーログにも残らない。サーバー名(FQDN)は見える
Proxyサーバーのアクセスログを確認したところ、
httpアクセスは、URLパスまで表示されていましたが、
httpsアクセスは、サーバー名までしかわかりませんでした。
つまり、URLパスは暗号化されていてログにも残らないという結論です。
※ SSLに対応したProxyも存在します。その場合、クライアント側でSSL証明書を確認すると、URLとは異なる証明書になっています。
https通信がProxyサーバーで見れる仕組みは、proxy指定がある場合はブラウザがconnectメソッドを使用し転送先のホストを暗号化しないでProxyサーバーに教える仕組みのためです。
HTTPS通信とプロキシサーバ(CONNECTメソッド) : ネットワークスペシャリスト - SE娘の剣 -
検証内容
CentOS(Linux)上にSquid(Proxyサーバー)を構築し、
クライアント端末のブラウザに構築したProxyサーバーを指定し、以下のURLでアクセスしました。
- http://www.yahoo.co.jp/aaaaaaaaaaaaaaaaa.htm
- https://www.yahoo.co.jp/aaaaaaaaaaaaaaaaa.htm
その結果が上記画像です。
Proxyサーバーのアクセスログには、httpsの場合はサーバー名しかわからないんですね。
会社がインターネット通信にProxyサーバーを導入しているけどアクセスログでどこまでバレるのか?
これで会社がProxyサーバーでアクセスログを取っていても、
httpsアクセスの場合は、通信しているサーバーはわかっても内容は傍受されないということがわかりました笑
いざという時に、会社にばれたくないアクセスはhttps通信で暗号化しておきましょう!笑
※ ただし、会社はアクセス日時と、アクセスしたサーバーはわかりますけどね