eBlocker (http://www.eblocker.com) は、Raspberry Pi や同様のアーキテクチャ (Banana Pi など) 上で実行され、不要な Web トラッカーや広告をブロックすることを目的としています。
驚いたのは、Pi をコンシューマー ルーターの標準イーサネット ポート (監視ポートなどではない) に接続するだけで、その後 (数分以内に) 有線接続か無線接続かに関係なく、ネットワーク上のあらゆるデバイス上のすべての HTTP (HTTPS ではない) トラフィックを傍受できることです。
クライアント デバイスでもルーターでもデバイスをゲートウェイとして設定する必要はなく、ネットワークを変更する必要もまったくありませんでした。Windows、OS X、iOS、Android、Linux、カスタム マイクロコントローラー ネットワーク スタックのいずれを実行しているかに関係なく、すべてのデバイスでデバイスが自動的に構成されました。
私はデバイスの製造元に連絡しましたが、当然ながら彼らはこのことを秘密にしておきたいようです。
いくつか調査してみましたが、UPnP または ZeroConf が関係しているのではないかと疑っていますが、これらのテクノロジーについてあまり理解していないため、確実な評価を行うことができません。
私の関連する2つの質問は次のとおりです。
eBlocker はどのようにしてこれを実現するのでしょうか? (決定的な答えを出すために必要な調査は喜んで行います。) ネットワーク上のマシンにアクセスできない (つまり、パスワードや BIOS へのアクセスがない) が、ルーターに物理的にしかアクセスできない人が、すべてのネットワーク トラフィックをキャプチャするデバイスをインストールできる可能性があるのは懸念されます。コンシューマー ルーター (OpenWrt を実行) でこれを防ぐには、どのような方法がありますか?
アップデート: 方法の特定に役立つ場合に備えて、eBlocker のインストール手順を以下に示します。
- Raspberry Pi / Banana Pi のイーサネット ポートをインターネット ルーターまたはスイッチの空いているイーサネット ポートに接続します。
- マイクロUSBケーブルをRaspberry Pi / Banana Piに接続し、電源アダプタに接続します。
- Raspberry Pi / Banana Pi の起動が完了し、設定が完了するまで 5 分間待ちます。
- HTTP(HTTPSではない)でランダムにウェブサイトにアクセスします。画面の右上隅にeBlockerアイコンが表示されます。これはeBlockerがアクティブで保護されていることを示します。アイコンをクリックするとeBlockerコントロールバーが開き、さらに設定を行うことができます。
自動構成
自動ネットワーク構成がネットワーク環境で機能しない場合は、eBlocker ネットワーク ウィザードを使用して手動で構成することをお勧めします...
自動構成は同じネットワークセグメントでのみ機能します
自動構成では、同じネットワーク セグメント内のネットワーク デバイスのみが認識されます (例: 192.168.1.X と 192.168.2.X は同じネットワーク セグメント内にありません)。 2 つの異なるネットワーク セグメントを運用し、両方で eBlocker のメリットを享受する場合は、インターネット アクセスのゲートウェイとして eBlocker を手動で構成してください。 eBlocker では、元のインターネット ゲートウェイを「ゲートウェイ」として設定してください。
DHCP を使用しない IPv6 ネットワークと IPv4 ネットワーク
新しい IPv6 プロトコルのみを使用するホームネットワークはまだサポートされていません。DHCP サーバーのない IPv4 ネットワークでは、eBlocker をゲートウェイとして手動で構成する必要があります。これを行うには、IP アドレスを使用して eBlocker に接続してください。http://169.254.94.109:3000/インターネット クライアントは、同じネットワーク セグメント (169.254.94.0/24) に存在する必要があります。
答え1
おそらくそれはARPキャッシュポイズニングデフォルト ゲートウェイに送信されたすべてのパケットを自分自身に再ルーティングします。中間者として、http トラフィックを検査し、転送またはドロップすることができます。また、LAN ホストとインターネット Web サイト間の http (https ではない) 会話に HTML オブジェクトを挿入することもできます。
答え2
まず、eblocker はサブネット内のすべてのアクティブな IP ステーションの MAC アドレスを検索します。次に、デフォルト ゲートウェイの MAC アドレスが eblocker の MAC アドレスであることを通知する ARP 応答フレームを各ステーションに送信します。
これにより、すべてのサブネット ノードの arp キャッシュが変更されます。
Wiresharkなどのツールは警告を送信します: 異なるMACアドレスで重複したIPアドレスが検出されました