2010-05-27 65 views
7

中間人攻擊有多頻繁(和/或複雜)?中間人攻擊造成的威脅

關於

在密碼學中,中間人攻擊(通常縮寫MITM),或戽鏈攻擊,或有時詹納斯攻擊,是有源竊聽的形式,其中攻擊者與受害者建立獨立的連接,並在他們之間傳遞消息,使他們相信他們通過私人連接直接對話,而實際上整個對話是由攻擊者控制的。攻擊者必須能夠攔截所有在兩個受害者之間傳遞的消息並注入新的消息,這在很多情況下都很簡單(例如,未加密的Wi-Fi無線接入點的接收範圍內的攻擊者可以將自己插入爲人-在中間)。

http://en.wikipedia.org/wiki/Man-in-the-middle_attack

我想問的原因是試圖衡量是否值得加密我發送給用戶,或者它是否是安全的,只是繼續前進,發送內容的重要部分的額外開銷它未加密。

注意:我知道這不是一個嚴格的「編程」問題,因爲沒有代碼解決方案,但它影響編碼決策並且是基於編碼的,所以它看起來仍然適用。

+0

你的問題的一個相關的想法是:給定的安全系統失敗時,(阻止它的(感知)好處超過成本和努力這樣做。 – 2010-05-27 17:06:11

回答

9

它不需要MITM攻擊來讀取根本沒有加密的數據。 MITM攻擊被用來允許攻擊者讀取已加密的數據

編輯:有關MITM攻擊的相關問題是而不是是否應該進行加密。在建立加密連接時,是否應該進行某種身份驗證(即,驗證遠程方的身份)。

根本沒有加密,一個「窺探者」只是看着你的數據,因爲它經歷,並看到那裏到底是什麼。當您執行加密時,MITM攻擊適用,但不要驗證您要將加密數據發送給。在這種情況下,攻擊者會將自己插入到對話中 - 您連接到攻擊者並向他發送加密數據。他連接到您想與之通話的人,並與您建立了加密連接。然後,在您發送數據時,他會收到數據,用密鑰對其進行解密,然後使用目標密鑰對其進行重新加密,然後將其發送到目標。同樣,他使用目標密鑰解密的任何返回數據,並用您的密鑰重新加密。

通過這種方式,您和目標看起來好像通訊正常 - 但攻擊者可以讀取您發送的所有內容。但是,如果您根本不加密數據,那麼這些都不是必需的 - 因爲您發送的是純文本,所以攻擊者可以隨時查看它。

+2

....顯然。 OP不需要關心這個,他想知道是否值得設置TLS或類似的防禦MITM ... – 2010-05-27 17:51:58

+0

@Longpoke:也許 - 但你的結論似乎主要基於你自己的假設,而不是OP實際所說/詢問的內容。 – 2010-05-27 17:54:35

+2

「中間人攻擊有多頻繁(和/或複雜)?」...... – 2010-05-27 19:37:27

3

取決於應用程序,但如果所發送的數據是非常敏感的,那麼絕對要防範中間人!尤其是隨着Wi-Fi的興起,這是一個非常相關的危險,而且很容易做到;一位朋友和我在去年很難複製Gmail MIMA。

4

MITM攻擊不一定受加密阻礙。例如,如果您使用所謂的「自簽名證書」進行加密,則您的通信將被加密,但MITM攻擊仍可能發生。例如,使用自簽名證書,如果您將「Fiddler」加載到客戶端框中,它將執行MITM練習,以便它可以觀看所有流量。客戶端和服務器不會意識到MITM正在發生。

如果您使用真正的PKI(涉及真正的可信第三方),那麼MITM是不可能的。

在任何情況下,如果數據的價值對攻擊者來說「值得」,那麼MITM很容易實現。

+1

並不是說這不可能,只是當你下載你的web瀏覽器時,它必須通過修改他們感興趣的關鍵驗證者的公鑰來啓動,然後作爲每個安全事務的驗證者每時每刻。你的ISP可以做到這一點,但是防止它進入安全矯枉過正的領域。 – tloach 2010-05-27 17:11:38

+0

@tloach:答案特別提到了自簽名證書,所以這不是真的 - 我們不是在談論網絡瀏覽器... – 2010-05-27 17:27:14

+0

@BlueRaja - 自簽名被一個簡單的MITM擊敗爲答案狀態。它不是網絡瀏覽器並不重要,問題是如果中間人可以攔截並修改將執行安全通信的程序的傳輸,那麼攻擊仍然是可能的。 – tloach 2010-05-27 17:34:14

1

無論何時你談論安全性,它總是在你的數據的敏感性的背景下。你的祕密對某個人來說越有價值,他們將越有決心去獲得它,並且他們會擴展更多的資源。相反,保守祕密越有價值,你應該擴大保護它的資源越多。

2

對於任何有關Internet上攻擊類型頻率的問題,我都會向您推薦Internet Storm Center(isc.sans.org)。

請記住,MITM是一個非常廣泛的術語,您似乎更專注於會話嗅探(即竊聽)攻擊。嗅探攻擊是微不足道的。完整的MITM有助於修改會話,與簡單查看信息相比,會有不同的含義。這種修改需要更復雜一些,但不需要定製工具。

在您的站點上使用TLS/SSL將提供對窺探數據的保護,並確保客戶端確實與正確的服務器通信。

要解決關於編碼的注意事項 - 無論您是否決定使用密碼術,您都應該設計您的Web應用程序,以便稍後添加加密程序並不麻煩。

0

任何人都可以訪問中間人攻擊,特別是在公共網絡上。這取決於你是否想要任何人能夠讀取你的數據或不...