來源:程序員小灰


程序員小灰-漫畫:什麼是中間人攻擊


程序員小灰-漫畫:什麼是中間人攻擊


程序員小灰-漫畫:什麼是中間人攻擊


程序員小灰-漫畫:什麼是中間人攻擊


程序員小灰-漫畫:什麼是中間人攻擊


故事發生在上世紀40年代......


程序員小灰-漫畫:什麼是中間人攻擊


在解放戰爭初期,東北牡丹江一帶,奶頭山有一個土匪副官叫欒平。他計劃將包含重要信息的先遣圖,獻給威虎山的土匪頭子座山雕。


程序員小灰-漫畫:什麼是中間人攻擊



而後欒平被共軍抓獲,偵查員楊子榮利用審訊欒平獲得的情報以及先遣團,巧妙混入威虎山。


程序員小灰-漫畫:什麼是中間人攻擊



結局不用多說,欒平和座山雕自然都倒了大黴。


程序員小灰-漫畫:什麼是中間人攻擊


雖然那個時候沒有互聯網,但楊子榮採取的謀略卻相當於現在威脅網絡安全的中間人攻擊(MITMA,man in the middle attack)

中間人攻擊是一種間接的入侵攻擊,這種攻擊模式是將一臺計算機虛擬放置在網絡連接中的兩臺通信計算機之間,這臺計算機就稱爲“中間人”。

黑客利用這臺“中間人”計算機模擬相互通信的一端或者兩端,使“中間人”能夠與原通信計算機建立活動連接並允許其讀取或修改通信兩端所傳遞的信息。


程序員小灰-漫畫:什麼是中間人攻擊


在故事裏,欒平與座山雕就好比網絡通信端A和通信端B;楊子榮好比是攻擊者C;幾人傳遞的先遣圖和聯絡暗號,則好比是網絡傳輸的數據信息。大多數情況下,中間人攻擊是發生在局域網中。


程序員小灰-漫畫:什麼是中間人攻擊




程序員小灰-漫畫:什麼是中間人攻擊


1.DNS欺騙:

對於DNS服務器,相信小夥伴們都很熟悉了。在互聯網的世界裏,DNS(Domain Name System,域名系統)用於把訪問域名解析成IP地址,使得用戶發出的網絡請求可以尋找到正確的目標服務器。

攻擊者往往可以通過入侵DNS服務器,或是篡改用戶本地hosts文件,從而截獲到用戶發出的請求。截獲請求以後,根據不同目的,攻擊者既可以讓用戶“誤入歧途”,引導用戶訪問一個假網站,也可以把用戶請求依舊轉發給目標服務器,僅僅實現監聽的目的。

欺騙的流程如下圖所示:


程序員小灰-漫畫:什麼是中間人攻擊


需要注意的是,這裏爲了便於描述,大大簡化了DNS解析的過程。實際場景涉及到DNS的遞歸查詢、root DNS、A記錄解析、CName解析等概念,以後有可能專門寫文介紹相關知識。

2.APR欺騙:

如果說DNS欺騙是在廣域網中的攔截用戶請求,那麼APR欺騙就是在局域網中的攔截用戶請求。ARP(Address Resolution Protocol)地址解析協議,是一種將IP地址轉化成物理地址的協議。

在局域網中,主機A想要跟主機B(假設IP是123)通信,不僅需要知道對方的IP,也要需要知道對方的MAC地址。如果主機A的本地ARP緩存表沒有主機B的地址緩存,主機A就會在向局域網內的所有主機發起廣播,請求IP爲123的主機。


程序員小灰-漫畫:什麼是中間人攻擊



主機B收到廣播,檢查自己的IP地址與主機A請求中的IP地址一致,就會把自己的MAC地址返回給主機A。主機A接收到反饋以後,會把主機B的MAC地址存入本地ARP緩存表,以便下次直接使用。


程序員小灰-漫畫:什麼是中間人攻擊



如何實現APR欺騙呢?攻擊者利用了APR協議的漏洞,通過局域網內部的一臺主機(IP並不是123),冒充主機B,向主機A發送自己的MAC地址。主機A接到消息以後,無法識別消息是真的來自主機B,還是來自一個冒名頂替者,只能照樣把接受到的新MAC地址存入ARP緩存表,取代原先的記錄。


程序員小灰-漫畫:什麼是中間人攻擊


下一次,當主機A想要向主機B發送請求的時候,會先查詢自己的ARP緩存表,查出主機B的MAC地址是def(本來應該是abc),結果把請求發給了主機D。從而讓攻擊者攔截到了請求信息。


程序員小灰-漫畫:什麼是中間人攻擊


3.代理服務器:

這個概念就很簡單了。所謂代理服務器,就是用戶主機在訪問網站時所使用的各種代理,比如wifi,比如VPN,比如翻牆工具。這些代理未必都是可靠的,有些可能會遭到黑客攻擊,有些可能自身就有問題。當用戶通過這些代理髮送請求的時候,請求信息自然而然就會被劫持。


程序員小灰-漫畫:什麼是中間人攻擊


程序員小灰-漫畫:什麼是中間人攻擊


1.使用DNSSEC機制

Domain Name System Security Extensions (DNSSEC)DNS安全擴展,是一系列DNS安全認證的機制,可以驗證用戶訪問的站點地址是否有效,解決DNS欺騙的問題。

2.使用防火牆和殺毒軟件

在局域網內,發起ARP欺騙的主機往往是中了病毒的機器,從而被黑客控制,因此需要定期查殺病毒。而防火牆可以有效地阻擋疑似APR欺騙的消息。

3.使用HTTPS協議

HTTPS協議在HTTP協議的基礎上增加了SSL層,SSL依靠證書來驗證服務器的身份,併爲瀏覽器和服務器之間的通信加密。這樣一來,即使攻擊者截獲了用戶發出的請求信息,也無法解密信息,更無法篡改信息。


程序員小灰-漫畫:什麼是中間人攻擊



—————END—————

相關文章