web-dev-qa-db-ja.com

接続がMITMプロキシを経由していないことを確認するにはどうすればよいですか?

MITMプロキシが私のプライバシーにもたらす可能性のある問題に気づき、クライアントとして検出する方法を確認するためにさらに調査を始めました。これまでに確認しておくべきことは次のとおりです。

  • 証明書の発行者を確認し、それが自分のルート証明書ストアにインストールされている自己署名証明書かどうかを確認します。
  • 外部サーバーIPではなくローカルIPからWebコンテンツが提供されているかどうか、およびローカルIPが常に同じかどうかを確認します。
  • システムのプロキシ設定がlocalhostに設定されているかどうかを確認しています。

私の質問は:
証明書のピン留めに加えて、上記のすべてが否定的であるかどうかを他に確認できますが、それでもMITMプロキシ化されていると信じる理由がありますか?適例:アバストは、一部の銀行のホワイトリストに記載されたURLを除くすべてのWebトラフィックをスキャンするためにMITMプロキシを使用していると主張していますが、MITMの通常のサインがアクティブになっているのを見ていません。私はどこかで、メモリから直接読み取ることができると読みましたが、すでに製品にMITMプロキシがバンドルされていて、それを使用していることを公然と伝えている場合、実装と維持にコストがかかりそうです。リストされているチェックをトリガーせずにMITMを実行する方法はありますか? Windowsマシン用のある種の透過MITMプロキシ?

3
miyagisan

あなたが言及したこれら3つのポイントのうち、中間者攻撃を確実に検出するために使用できるものはありません。

証明書の発行者を確認し、それが自分のルート証明書ストアにインストールされている自己署名証明書かどうかを確認します。

すべてのルート証明書は自己署名されています。それと、それらが認証局になることができるという事実がmakesそれらをルート証明書にします。

ただし、できることは、証明書ストアを手動で既知の適切な証明書ストアと比較することです。たとえば、MicrosoftとAppleは、デフォルトで信頼するルート証明書を公開しています。設定が不可解に変化する場合、それはmayは妥協の兆候です。

もちろん、企業環境では、IT部門が独自のCAを所有している可能性が高く、CAがコンピューターに展開されます。ですから、会社のコンピュータが危険にさらされる心配があるかどうか、彼らに確認してください。

外部サーバーIPではなくローカルIPからWebコンテンツが提供されているかどうか、およびローカルIPが常に同じかどうかを確認します。

ホームネットワークにいる場合は、コンテンツをWebサーバーから直接取得するのではなく、多くのネットワークノードを介してルーティングされます。それらのそれぞれが、理論的には、送信元IPアドレスを変更する可能性があります。

ホームルーターが危険にさらされており、中間者攻撃を行っているとします。理論的には、IPパケットの宛先を変更して、攻撃者に到達させることができます。応答すると、ルーターはパケットを元に戻し、正しい送信元から送信されたように見せることができます。

もちろん、これは注目に値します。HTTPSを使用する場合、攻撃者が侵害されたルート証明書をマシンにインストールしていない限り、攻撃者はおそらくサイトの有効な証明書を持っていないからです。

システムのプロキシ設定がlocalhostに設定されているかどうかを確認しています。

システムプロキシ設定は、それらを気にするアプリケーションにのみ関連します。実際、アプリケーションはシステムのプロキシ設定を使用しないことを簡単に決定できます。そうしないと、localhostで実行されているプロキシが自分自身を呼び出そうとして、無限ループに陥るからです。

さらに、プロキシ構成は、プロキシがすべてのトラフィックをプロキシに送信するようにコンピュータに指示するだけで、プロキシが応答を処理することを期待します。これは、本質的に、ルーターと同じ仕事です。そのため、トラフィックがルーターを通過する場合、それらは一種の「プロキシ」と考えることができます。もちろん、それは完全に真実ではありませんが、簡潔にするために、十分に近いです。

ただし、そこに配置していないプロキシ構成が表示された場合は、妥協の兆候である可能性があります。ただし、localhostである必要はありません。

上記が正常に見える場合、どのようにプロキシを検出できますか?

おそらくできません。奇妙なルート証明書がインストールされていないことを完全に確信している場合は、中間者攻撃で攻撃されていない可能性があります。または、少なくとも、HTTPSを使用している限り、それについて知っているでしょう。平文通信の場合は、知る方法がまったくありません。

証拠がない場合でも、アバストは中間者プロキシを使用してWebサイトをスキャンするにはどうすればよいですか?

多くの可能性があります。

  • アバストをインストールしたため、ルート証明書がインストールされている可能性があります。
  • ウイルス対策ソフトウェアはOSの奥深くまで行くのが大好きなので、ユーザーには見えなくても、すべての接続が従わなければならないプロキシシステムを挿入している場合があります。
1
MechMK1