2010-10-18 177 views
2

有人可以告訴我「測試ICMP」的工作原理嗎? (在本地網絡中檢測嗅探的方法之一)嗅探檢測

+1

你的措辭對我沒有任何意義。也許你可以澄清? – jdizzle 2010-10-18 22:09:00

+0

我聽說發送數據包ICMP到懷疑是嗅探器的主機。這個數據包應該有一些變化(MAC地址),但我不確定是什麼和爲什麼。 – Saint 2010-10-18 22:38:32

回答

5

嗅探檢測基本上檢測網絡中是否存在嗅探器。用於檢測它們的嗅探器的主要功能是將網卡置於混雜模式,監聽所有流量。通常,嗅探器被放置在具有完整TCP/IP堆棧的機器上,該堆棧將受到該模式的影響。

ICMP是ping命令的後面的協議。爲了ping一臺機器,你發送一個ICMP迴應請求包給它,並等待一個ICMP響應。通常,ICMP請求被嵌入在以太網數據包中,並通過網絡傳送。標準的以太網數據包將包括所尋址網卡的MAC地址以及嵌入式ICMP數據包中該機器的IP地址。數據包將被適當的卡檢測到,並且該機器將響應ping。這是標準過程。

現在讓我們看看,如果我們用懷疑的嗅探器地址的IP地址,但隨着以太網信封不同,錯誤的MAC地址發送一個數據包ping(ICMP迴應請求一個)會發生什麼。

  1. 如果嗅探機網卡是上混雜模式,則分組將不由該機器接收。當然,機器不會迴應。 ping嘗試將失敗。

  2. 如果嗅探器中的網卡處於混雜模式,則機器將在網絡中看到所有數據包。該機器上的TCP/IP堆棧因此將通過識別接收到的分組IP地址來接受該分組。這個堆棧會發送一個響應。嘗試ping成功

與其他檢測方法類似,這具有誤報和漏報。嗅探機可能被指示忽略所有的ICMP請求。檢測混雜模式並不能完全檢測嗅探器,儘管這是一個非常重要的線索。

+0

非常感謝。這正是我需要:)你知道也許如何發送這樣的icmp數據包(懷疑ip,但不同的,錯誤的mac地址)在.NET/C#中? – Saint 2010-10-19 06:01:22