什么是ARP欺騙?它的原理是什么,會造成哪些危害?
今天講講什么是ARP欺騙,在了解ARP欺騙之前,先要弄懂什么是ARP? ARP(英文全寫:Address Resolution Protocol),翻譯成中文的意思是“地址解析協(xié)議”。 在局域網(wǎng)中,網(wǎng)絡(luò)以“幀”的形式傳輸數(shù)據(jù),一個主機(jī)要和另一個主機(jī)進(jìn)行直接通信,就必須要知道目標(biāo)主機(jī)的MAC地址(翻譯成中文就是“介質(zhì)訪問控制地址”,網(wǎng)絡(luò)中的每臺設(shè)備都有一個的網(wǎng)絡(luò)標(biāo)識,這個網(wǎng)絡(luò)標(biāo)識就是MAC地址)。 顯然,在雙方通信之初,發(fā)送方是無法知道目標(biāo)主機(jī)的MAC地址的。那么,目標(biāo)主機(jī)的MAC地址是如何獲得的呢?它就是通過“地址解析協(xié)議”獲得的。 所謂的“地址解析”就是主機(jī)在發(fā)送“幀”之前,將目標(biāo)主機(jī)的“IP地址”轉(zhuǎn)換成目標(biāo)主機(jī)的“MAC地址”的過程。ARP協(xié)議的基本功能就是通過目標(biāo)設(shè)備的IP地址,查詢目標(biāo)設(shè)備的MAC地址,以保證通信的順利進(jìn)行。 一、ARP(地址解析協(xié)議)的工作原理 主機(jī)A的IP地址為192.168.1.1,MAC地址為0A-11-22-33-44-01; 主機(jī)B的IP地址為192.168.1.2,MAC地址為0A-11-22-33-44-02; 當(dāng)主機(jī)A要與主機(jī)B進(jìn)行通信時,地址解析協(xié)議可以將主機(jī)B的IP地址(192.168.1.2)解析成主機(jī)B的MAC地址(0A-11-22-33-44-02),以下為工作流程: 第1步:根據(jù)主機(jī)A上的路由表內(nèi)容,IP確定用于訪問主機(jī)B的轉(zhuǎn)發(fā)IP地址是192.168.1.2。然后主機(jī)A在自己的“本地ARP緩存”中,檢查主機(jī)B的匹配MAC地址。 第2步:如果主機(jī)A在ARP緩存中沒有找到映射,它將詢問主機(jī)B(192.168.1.2)的MAC地址,從而將“ARP請求包”廣播到本地網(wǎng)絡(luò)上的所有主機(jī)。 源主機(jī)A的“IP地址和MAC地址”都包含在“ARP請求包”中。本地網(wǎng)絡(luò)上的每臺主機(jī)都會接收到ARP請求,并且檢查該“ARP請求包”請求的IP地址,是否與自己的IP地址匹配。如果主機(jī)發(fā)現(xiàn)請求的IP地址與自己的IP地址不匹配,它將丟棄ARP請求。 第3步:主機(jī)B確定ARP請求中的IP地址與自己的IP地址匹配,則將主機(jī)A的“IP地址和MAC地址”映射添加到“本地ARP緩存表”中。 第4步:主機(jī)B將包含自己MAC地址的ARP回復(fù)消息,直接發(fā)送回主機(jī)A。 第5步:當(dāng)主機(jī)A收到從主機(jī)B發(fā)來的ARP回復(fù)消息時,會把主機(jī)B的“IP地址和MAC地址”映射更新到“本地ARP緩存表”中。這樣,主機(jī)B的“MAC地址”一旦確定,主機(jī)A就可以和主機(jī)B進(jìn)行通信了。 二、什么是ARP欺騙? ARP(地址解析協(xié)議)是建立在局域網(wǎng)中各個主機(jī)互相信任的基礎(chǔ)上的,它的誕生使得網(wǎng)絡(luò)能夠更加的運行,但由于它沒有認(rèn)證機(jī)制,本身存在著很多漏洞和不足: ARP轉(zhuǎn)換映射表,是依賴于計算機(jī)中“高速緩沖存儲器”動態(tài)更新的,而“高速緩沖存儲器”的更新,是受到更新周期的限制的,只能保存近使用的“地址映射的關(guān)系表項”,這使得攻擊者有了可乘之機(jī),可以在“高速緩沖存儲器”更新表項之前,修改ARP轉(zhuǎn)換映射表,以實現(xiàn)攻擊。 ARP請求,是以廣播的形式發(fā)送的,局域網(wǎng)上的所有主機(jī),都可以自主地發(fā)送ARP應(yīng)答消息,并且當(dāng)其他主機(jī)收到應(yīng)答消息時,不會檢測該消息的真實性,就將其記錄在本地的“ARP緩存表”中。這樣攻擊者就可以向目標(biāo)主機(jī)發(fā)送偽造的“ARP請求包”(錯誤的IP地址和MAC地址的映射關(guān)系),從而篡改目標(biāo)主機(jī)的本地“ARP緩存表”。 ARP欺騙,可以導(dǎo)致目標(biāo)主機(jī)與網(wǎng)關(guān)通信失敗,更會導(dǎo)致通信重定向,所有的數(shù)據(jù)都會通過攻擊者的機(jī)器,因此存在極大的隱患。 三、ARP欺騙有什么危害? 1、ARP(地址解析協(xié)議)是以廣播的方式發(fā)送ARP請求的,只要是同一個網(wǎng)段內(nèi)的主機(jī)都可以接收到,這就讓攻擊者有了可乘之機(jī)。攻擊者可以發(fā)送大量的“ARP請求包”,阻塞正常的網(wǎng)絡(luò)帶寬,使局域網(wǎng)中有限的網(wǎng)絡(luò)資源,被這些無用的廣播信息所占用,造成網(wǎng)絡(luò)擁堵。 2、ARP(地址解析協(xié)議)沒有認(rèn)證機(jī)制,局域網(wǎng)內(nèi)的所有主機(jī)是建立在互相信任的基礎(chǔ)上的,攻擊者可以發(fā)送錯誤的“IP地址/MAC地址”的映射關(guān)系。只要攻擊者持續(xù)不斷地發(fā)出偽造的“ARP請求包”,就能更改目標(biāo)主機(jī)“本地ARP緩存表”中的IP地址/MAC地址條目,造成網(wǎng)絡(luò)中斷或者中間人攻擊。 四、 ARP欺騙的防御措施有哪些? 1、 不要把網(wǎng)絡(luò)信任關(guān)系,單純地建立在IP基礎(chǔ)上或MAC基礎(chǔ)上,理想的關(guān)系應(yīng)該建立在“IP + MAC”基礎(chǔ)上。 2、 設(shè)置添加靜態(tài)的“ARP映射表”,不要讓主機(jī)刷新設(shè)定好的“ARP映射表”。 3、 除非很有必要,否則停止使用ARP(地址解析協(xié)議),將ARP(地址解析協(xié)議)作為條目保存在“ARP映射表”中。 4、 使用ARP服務(wù)器,通過該服務(wù)器查找自己的“ARP映射表”,以此來響應(yīng)其他機(jī)器的ARP請求廣播,并確保這臺ARP服務(wù)器不被黑。 5、 IP的傳輸,使用“proxy”代理。 6、 使用硬件屏蔽主機(jī),設(shè)置好路由,確保IP地址能到達(dá)合法的路徑(靜態(tài)配置路由ARP條目)。 7、 使用防火墻連續(xù)監(jiān)控網(wǎng)絡(luò)。注意有使用SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)的情況下,ARP欺騙有可能導(dǎo)致陷阱包丟失。 8、 若感染ARP病毒,可以通過“清空ARP緩存、指定ARP對應(yīng)關(guān)系、添加路由信息、使用防病毒軟件”等方式解決。 在復(fù)雜多變的網(wǎng)絡(luò)環(huán)境中,隨時都有可能面臨著如“ARP欺騙、DDoS攻擊、CC攻擊”等多種網(wǎng)絡(luò)攻擊方式。一般的網(wǎng)站運營者和普通的企業(yè)用戶,并不具備處理和應(yīng)對這些網(wǎng)絡(luò)攻擊的能力。因此,業(yè)務(wù)和網(wǎng)站可選擇托管在具有高防御能力的高防服務(wù)器上,由此可保證業(yè)務(wù)的正常穩(wěn)定運行和網(wǎng)站的。 葵芳為用戶提供的高防服務(wù)器,具有“木馬病毒檢測、暴力防護(hù)、系統(tǒng)漏洞掃描”等基礎(chǔ)防護(hù)功能,超大防護(hù)帶寬 + 清洗能力,專門應(yīng)對各類網(wǎng)站攻擊行為,保障用戶網(wǎng)站業(yè)務(wù)服務(wù)的正常穩(wěn)定運行。億速云在部署高防服務(wù)器的高防機(jī)房,接入了T級(1000G)超大防護(hù)帶寬,單機(jī)(單臺高防服務(wù)器)防御峰值高可達(dá)數(shù)百G,并附有CC攻擊的防御能力,可防御超大規(guī)模的DDoS攻擊和高密度的CC攻擊,可識別多種類型的DDoS攻擊,并通過清洗過濾惡意流量,進(jìn)而保障源站可用。