web-dev-qa-db-ja.com

LAN上でスニファーを探す

LAN上の他の誰かがスニファを使用しているかどうかを見つけるのに役立つ* nixとWindowsで利用できるツールまたはテクニックは何ですか?

そうは言っても、そのような「現象」を発見するためのツールが世の中にあることを強く考えれば、盗聴されないようにするための回避策は何でしょうか。

8
Anand Shah

スニファは受動的に動作するため、スニファを検出することは非常に困難です。一部のスニファは少量のトラフィックを生成しますが、それらを検出するためのいくつかの手法があります。

  • マシンはARP(アドレス解決プロトコル)をキャッシュします。非ブロードキャストARPを送信すると、プロミスキャスモードのマシン(カードにすべてのトラフィックを通過させるネットワークカード)がARPアドレスをキャッシュします。次に、IPを使用してブロードキャストpingパケットを送信しますが、MACアドレスは異なります。スニッフィングされたARPフレームからの正しいMACアドレスを持つマシンのみが、ブロードキャストping要求に応答できます。したがって、マシンが応答している場合は、スニッフィングしている必要があります。
  • ほとんどのスニファはいくつかの解析を行います。大量のデータを送信し、疑わしいマシンにbeforeおよびduringデータフラッディングをpingします。疑わしいマシンのネットワークカードが無差別モードの場合、データを解析して負荷を増やします。このようにすると、pingに応答するのに少し時間がかかります。このわずかな遅延は、マシンがスニッフィングしているかどうかの指標として使用できます。トラフィックが多いためにネットワーク上で「通常の」遅延が発生した場合、誤検知が発生する可能性があります。
  • 次の方法は古く、信頼性がありません。疑わしいマシンのIPアドレスを使用してping要求を送信しますが、MACアドレスは使用しません。理想的には、このパケットはMACアドレスと一致しないため、各ネットワークカードがpingを拒否するため、このパケットは誰にも見られないはずです。疑わしいマシンがスニッフィングしている場合、異なる宛先MACアドレスを持つパケットをわざわざ拒否しないため、応答します。

これらの手法を実装するツールがいくつかあります。たとえば、商用ツールであるWindowsの場合は NepedARP Watch または AntiSniff などのオープンソースツールです。 。

スニッフィングを防止したい場合は、ネットワークアクティビティ(SSH、httpsなど)に暗号化を使用するのが最善の方法です。このようにして、スニファはトラフィックを読み取ることができますが、データは意味をなしません。

16
splattne

パケットスニッフィングは受動的なアクティビティであり、通常、誰かがネットワークをスニッフィングしているかどうかを判断することはできません。ただし、有線のスイッチドLAN上の誰かが、自分のIPとの間だけで送受信される(またはネットワーク/サブネットにブロードキャストされる)トラフィックを確認するには、すべてのトラフィックを複製する監視/ミラーポートにアクセスする必要があります。または、ゲートウェイに「タップ」をインストールします。

スニッフィングに対する最善の防御策は、適切なエンドツーエンドの暗号化と、機密性の高いハードウェアの物理的な制御です。

編集:CPM、Neped、およびAntiSniffは現在10〜15年古くなっています... Linuxカーネル<2.2またはWindowsNT4を考えてください。誰かが蛇口や鏡にアクセスできる場合、一般的に検出するのは非常に困難です。 ARPまたはDNSを操作するのがおそらく最善の策ですが、それは確実なことではありません。

14
nedm

(私が信じる)スイッチドLAN上のすべてのトラフィックをスニッフィングできる唯一の方法は、「中間者」攻撃を使用することです。基本的に、ARPポイズニングを行い、全員のパケットを盗み、それらを読み取り、その後適切なコンピューターに送信します。

これを実行できるツールはおそらく複数ありますが、私が知っているのは1つだけです。

Ettercap Mitm攻撃を実行し、他の誰かが攻撃しているときに1つを検出することができます。

5
Gert M

ソーシャルエンジニアリングはそれを行う別の方法です。ハニーポットのroot/adminアカウントまたはその他の魅力的なターゲットを設定し、そのパスワードを平文でブロードキャストして、ログを監視します。

4
Adam

ほとんどのスニファを検出する簡単な方法があります。 DNSになく、他の目的に使用されていない2つのボックスをネットワークに配置します。定期的にpingを実行するか、その他の方法で相互に通信します。

次に、ネットワークでDNSルックアップやIPのARP要求を監視します。多くのスニファはデフォルトで検出したアドレスを検索するため、これらのデバイスでの検索は確実な警告になります。

巧妙なハッカーはこれらのルックアップをオフにすることができますが、多くの人はそうは思わないでしょう、そしてそれは間違いなく彼を遅くするでしょう。

現在、彼がDNSルックアップを有効にしないほど賢く、これらのデバイスのARPを防止している場合、タスクははるかに困難になります。この時点で、ネットワークは常に盗聴されているという哲学の下で作業し、この仮定の下で発生する脆弱性を防ぐための予防的な手順を制定する必要があります。いくつかが含まれます:

  1. 完全に切り替えられたネットワークを使用する
  2. スイッチポートをMACアドレスにバインドする
  3. NICでの無差別モードの有効化を禁止します(ご使用の環境で可能な場合)
  4. 安全なプロトコルを使用する
3
Rym

Wiresharkは、ネットワークトラフィックを監視するための優れたツールです。また、IPアドレスに一致する名前を検索したり、MACアドレスから製造元を検索したりします。当然、これらのクエリを実行していることを確認すると、実行されていることがわかります。

もちろん、これらの機能をオフにして、検出されないようにすることもできます。そして、意図的に検出されないように設計された他のプログラムがあります。したがって、この質問に答えようとするときに考慮すべきことです。

2
gbarry

これを行う唯一の確実な方法は、サブネット上の各デバイスを調べることです。

ツールがあります、例えば。 nmap ですが、動作が保証されておらず、パッシブタップがその存在を裏切ることはありません。

最善のアプローチは、ネットワークが多かれ少なかれパブリックであると想定し、暗号化を使用することです。アプリケーションベース(SSH、HTTPS IMAPSなど)、またはVPNを介してすべてのトラフィックをトンネリングする

2
John McC

ハブ(またはThinnet/Thicknetなどの実際に古いネットワーク設定)は、すべてのデータを常にネットワーク経由で転送します。プラグを差し込むと、ローカルセグメント上のすべてのパケットが表示されます。ネットワークカードをプロミスキャスモード(直接送信されたものだけでなく、すべてのパケットを読み取る)に設定し、パケットキャプチャプログラムを実行すると、発生したすべてのことを確認したり、パスワードを盗聴したりできます。

スイッチは、古い学校のネットワークブリッジのように動作します。つまり、a)ブロードキャストb)そのデバイス宛ての場合にのみ、ポートからトラフィックを転送します。

スイッチは、どのMACアドレスがどのポートにあるかを示すキャッシュを維持します(ポートからデイジーチェーン接続されたハブまたはスイッチが存在する場合があります)。スイッチは、すべてのトラフィックをすべてのポートに複製するわけではありません。

ハイエンドスイッチ(ビジネス用)には、すべてのトラフィックを複製するように構成できる特別なポート(スパンまたは管理)がある場合があります。 IT部門は、これらのポートを使用してトラフィックを監視します(レギットスニッフィング)。不正なスニッフィングの検出は簡単です。スイッチを調べて、そのポートに何かが接続されているかどうかを確認してください。

1
hellimat

頭のてっぺんから、ホストが平均よりも多くのデータを受信して​​いる、および/または送信しているデータが少ないインターフェイスのSNMPインターフェイスデータを切り替えます。どちらかで標準偏差の範囲外のものを探すと、おそらく、すべきでないことをしている可能性が最も高い人々が見つかるでしょう。

それは単なるスニファーではないかもしれませんが、熱心なhulu/netflixウォッチャーを見つけるかもしれません。

あなたのスイッチ/ルーターはまた、arpテーブルを毒殺しようとしている人々を監視して捕まえる機能を持っているかもしれません、それは同様にかなり大きなギバウェイでしょう。

1
sclarson