だから私は帯域幅を節約するためにYouTubeのようなウェブサイトをブロックするパブリックWiFiネットワークにいます。ルーターがすべてのトラフィックを監視し、ブラックリストにあるサイトに送信されたすべてのリクエストを拒否していると想定しています。これを回避するために、SSHトンネルを使用して、リモートサーバーとの接続を暗号化し、リモートサーバーからWeb要求が行われるようにしました。したがって、接続しているルーターは、送信しているパケットが何であるかを認識していないはずです。
YouTubeなどのサイトへのトラフィックをフィルタリングする他のネットワークで以前にこの方法を試しましたが、完全に機能しました。どういうわけか、このルーターはまだウェブサイトをブロックすることができます。 IPアドレスを確認して、トラフィックが実際にリモートサーバーを通過していることを確認したので、設定を台無しにしたり、ブラウザで正しいポートを指定するのを忘れたりしなかったことがわかります。パスワード認証を使用するサーバーとキーのみを使用するサーバーの2つの別々のサーバーを介してトラフィックをルーティングしようとしましたが、どちらの場合もトラフィックはフィルタリングされます。
リモートサーバーとの間で送受信するパケットが暗号化されている場合、ルーターはYouTubeにアクセスしようとしていることをどのようにして知ることができますか?ルーターは中間者攻撃を行っていますか?サーバーのフィンガープリントを確認しましたが、通常どおりでしたが、ルーターがフィンガープリントをスプーフィングできる可能性がありますか?
ルーターがこれをどのように行っているかを理解したいだけです。
tl; dr:DNSリークでした。ヒントをくれた@ user2675345に感謝します!
ブロックされたサイトにアクセスしたときに表示されたページは次のとおりです。
最初にいくつかのWebサイトにpingを実行してみたところ、それらのIPアドレスが同じであることがわかりました。この画像に見られるように:
両方ともブロックされているyoutube.comとmetacafe.comの両方に176.12.107.179
彼らのIPとして。当然のことながら、ブラウザでこのIPに移動すると、上記の「要求されたサイトがブロックされました」ページが表示されます。一方、www.google.comにpingを実行すると、Googleを指す正当なIPが生成されます。
そのため、URLが間違ったIPにマップされていました。 Digを使用してDNSエントリを検査し、これを確認しました。
実際、youtube.comのDNSエントリには176.12.107.179
それはIPです。
次に、Wiresharkを使用してDNS要求をチェックアウトしたところ、要求がSSHで接続されたサーバーのIPからではなく、ローカルIPアドレスから送信されていることがわかりました。
SSHトンネルを使用していましたが、DNS要求がトンネルを通過していませんでした。また、同じネットワーク上のIPアドレスにアクセスしているようです。したがって、バスに搭載されているルーターがDNSサーバーとして機能し、ブラックリストにあるサイトに対して不正なDNS回答を提供していたようです。
これは非常に深刻な脆弱性です。盗聴者は私がアクセスしようとしていたすべてのWebサイトを見ることができただけでなく、ルーター/ DNSサーバーを制御している人は、「ブロックされたサイトのリクエスト」ページではなく、悪意のあるバージョンのYouTubeに簡単にルーティングできました。そしてしばらくの間、私のトラフィックはすべてSSHトンネルを通過していて、完全に安全だと思っています。
@ user2675345が言っているように、ブラウザにDNSプロキシ設定がある場合は、おそらくDNSプロキシ設定を確認する必要があります。
Firefoxのプロキシを介したDNSルックアップを有効にするには、次の手順に従います。
about:config
アドレスバー内proxy
を検索しますnetwork.proxy.socks_remote_dns
からtrue
以前はChromeユーザーでしたが、DNSルックアップがプロキシ設定を使用していないことに気付いたときにFirefoxに切り替えました。それは少し前のことであり、次のように修正する必要があります- this バグレポート。