web-dev-qa-db-ja.com

SSHトンネルでのルーターの盗聴?

だから私は帯域幅を節約するためにYouTubeのようなウェブサイトをブロックするパブリックWiFiネットワークにいます。ルーターがすべてのトラフィックを監視し、ブラックリストにあるサイトに送信されたすべてのリクエストを拒否していると想定しています。これを回避するために、SSHトンネルを使用して、リモートサーバーとの接続を暗号化し、リモートサーバーからWeb要求が行われるようにしました。したがって、接続しているルーターは、送信しているパケットが何であるかを認識していないはずです。

YouTubeなどのサイトへのトラフィックをフィルタリングする他のネットワークで以前にこの方法を試しましたが、完全に機能しました。どういうわけか、このルーターはまだウェブサイトをブロックすることができます。 IPアドレスを確認して、トラフィックが実際にリモートサーバーを通過していることを確認したので、設定を台無しにしたり、ブラウザで正しいポートを指定するのを忘れたりしなかったことがわかります。パスワード認証を使用するサーバーとキーのみを使用するサーバーの2つの別々のサーバーを介してトラフィックをルーティングしようとしましたが、どちらの場合もトラフィックはフィルタリングされます。

リモートサーバーとの間で送受信するパケットが暗号化されている場合、ルーターはYouTubeにアクセスしようとしていることをどのようにして知ることができますか?ルーターは中間者攻撃を行っていますか?サーバーのフィンガープリントを確認しましたが、通常どおりでしたが、ルーターがフィンガープリントをスプーフィングできる可能性がありますか?

ルーターがこれをどのように行っているかを理解したいだけです。

4
eyuelt

tl; dr:DNSリークでした。ヒントをくれた@ user2675345に感謝します!

ブロックされたサイトにアクセスしたときに表示されたページは次のとおりです。

blocked site

最初にいくつかのWebサイトにpingを実行してみたところ、それらのIPアドレスが同じであることがわかりました。この画像に見られるように:

pings

両方ともブロックされているyoutube.comとmetacafe.comの両方に176.12.107.179彼らのIPとして。当然のことながら、ブラウザでこのIPに移動すると、上記の「要求されたサイトがブロックされました」ページが表示されます。一方、www.google.comにpingを実行すると、Googleを指す正当なIPが生成されます。

そのため、URLが間違ったIPにマップされていました。 Digを使用してDNSエントリを検査し、これを確認しました。

digs

実際、youtube.comのDNSエントリには176.12.107.179それはIPです。

次に、Wiresharkを使用してDNS要求をチェックアウトしたところ、要求がSSHで接続されたサーバーのIPからではなく、ローカルIPアドレスから送信されていることがわかりました。

iptrace

SSHトンネルを使用していましたが、DNS要求がトンネルを通過していませんでした。また、同じネットワーク上のIPアドレスにアクセスしているようです。したがって、バスに搭載されているルーターがDNSサーバーとして機能し、ブラックリストにあるサイトに対して不正なDNS回答を提供していたようです。

これは非常に深刻な脆弱性です。盗聴者は私がアクセスしようとしていたすべてのWebサイトを見ることができただけでなく、ルーター/ DNSサーバーを制御している人は、「ブロックされたサイトのリクエスト」ページではなく、悪意のあるバージョンのYouTubeに簡単にルーティングできました。そしてしばらくの間、私のトラフィックはすべてSSHトンネルを通過していて、完全に安全だと思っています。

0
eyuelt

@ user2675345が言っているように、ブラウザにDNSプロキシ設定がある場合は、おそらくDNSプロキシ設定を確認する必要があります。

Firefoxのプロキシを介したDNSルックアップを有効にするには、次の手順に従います。

  1. 入る about:configアドレスバー内
  2. proxyを検索します
  3. セットする network.proxy.socks_remote_dnsからtrue

以前はChromeユーザーでしたが、DNSルックアップがプロキシ設定を使用していないことに気付いたときにFirefoxに切り替えました。それは少し前のことであり、次のように修正する必要があります- this バグレポート。

0
MoonSire