如何進(jìn)行有效的 ARP 防御?作為普通用戶怎么防御?作為網(wǎng)絡(luò)/安全管理員又怎么防御?有哪些 ARP 防御軟件?如果被 ARP 攻擊了,如何揪出"內(nèi)鬼",并"優(yōu)雅的還手"?

ARP 防御概述

通過(guò)之前的文章,我們已經(jīng)了解了 ARP 攻擊的危害,黑客采用 ARP 軟件進(jìn)行掃描并發(fā)送欺騙應(yīng)答,同處一個(gè)局域網(wǎng)的普通用戶就可能遭受斷網(wǎng)攻擊、流量被限、賬號(hào)被竊的危險(xiǎn)。

由于攻擊門檻非常低,普通人只要拿到攻擊軟件就可以擾亂網(wǎng)絡(luò)秩序,導(dǎo)致現(xiàn)在的公共網(wǎng)絡(luò)、家庭網(wǎng)絡(luò)、校園網(wǎng)、企業(yè)內(nèi)網(wǎng)等變得脆弱無(wú)比。

所以,如何進(jìn)行有效的 ARP 防御?作為普通用戶怎么防御?作為網(wǎng)絡(luò)/安全管理員又怎么防御?有哪些 ARP 防御軟件?如果被 ARP 攻擊了,如何揪出"內(nèi)鬼",并"優(yōu)雅的還手"?

接下來(lái),我們通過(guò)圖解的方式來(lái)深入了解 ARP 防御原理與解決方案。

ARP 防御原理與解決方案

在講解 ARP 防御之前,我們先回顧下 ARP 攻擊最經(jīng)典的一幕。

當(dāng) PC1 詢問(wèn) PC2 的 MAC 地址時(shí),攻擊者 PC3 返回 ARP 欺騙回應(yīng)包:我的 IP 地址是 IP2,MAC 地址是 MAC3。一旦 PC1 記錄了錯(cuò)誤的 ARP 映射,則發(fā)給 PC2 的數(shù)據(jù),都會(huì)落到 PC3 手里。

也就是說(shuō),ARP 攻擊的罪魁禍?zhǔn)妆闶沁@種"欺騙包",若針對(duì)欺騙包的處理是不相信或不接收的話,則不會(huì)出現(xiàn)問(wèn)題。處理這種欺騙行為我們沒(méi)法提前在黑客端做手腳,因?yàn)?敵在暗處我在明處"。

這樣的話,我們就剩下兩個(gè)解決方法:

保證電腦不接收欺騙包。

保證電腦收到欺騙包之后不相信。

保證電腦不接收欺騙包。

保證電腦收到欺騙包之后不相信。

目前網(wǎng)絡(luò)安全行業(yè)現(xiàn)有的 ARP 防御方案,基本都是上面兩個(gè)方法的具體實(shí)現(xiàn)。

我們來(lái)看看下面這張防御圖:

當(dāng)黑客發(fā)起 ARP 欺騙包時(shí),會(huì)途徑局域網(wǎng)里面的交換機(jī)或無(wú)線路由器等網(wǎng)絡(luò)設(shè)備。

如果網(wǎng)絡(luò)設(shè)備能夠識(shí)別這種欺騙包,并且提前丟棄掉,則電腦/手機(jī)端就不會(huì)被欺騙。

如果網(wǎng)絡(luò)設(shè)備沒(méi)有攔截這種欺騙包,則電腦/手機(jī)端需要做安全防御,然后再丟棄。

當(dāng)黑客發(fā)起 ARP 欺騙包時(shí),會(huì)途徑局域網(wǎng)里面的交換機(jī)或無(wú)線路由器等網(wǎng)絡(luò)設(shè)備。

如果網(wǎng)絡(luò)設(shè)備能夠識(shí)別這種欺騙包,并且提前丟棄掉,則電腦/手機(jī)端就不會(huì)被欺騙。

如果網(wǎng)絡(luò)設(shè)備沒(méi)有攔截這種欺騙包,則電腦/手機(jī)端需要做安全防御,然后再丟棄。

簡(jiǎn)單來(lái)說(shuō),ARP 防御可以在網(wǎng)絡(luò)設(shè)備上實(shí)現(xiàn),也可以在用戶端實(shí)現(xiàn),更可以在網(wǎng)絡(luò)設(shè)備和用戶端同時(shí)實(shí)現(xiàn)。

接下來(lái),我們先來(lái)了解下網(wǎng)絡(luò)設(shè)備(例如這里的交換機(jī))的防御技術(shù)。

上面這張圖,展現(xiàn)的是交換機(jī)的 ARP 防御能力,當(dāng) PC2 發(fā)送 ARP 回應(yīng)包時(shí),交換機(jī)將其轉(zhuǎn)發(fā)給 PC1,而當(dāng) PC3 發(fā)送 ARP 回應(yīng)包(欺騙)時(shí),交換機(jī)直接丟棄。

但是,人家 PC3 上臉上又沒(méi)有寫(xiě)著"hacker",憑什么交換機(jī)要丟棄它的 ARP 回應(yīng)包?憑什么判斷它的包就是"欺騙"的呢?

接下來(lái),我就要給大家介紹下局域網(wǎng)安全里比較常用的防御技術(shù),這種防御技術(shù)被稱為 DAI(Dynamic ARP Inspection)- 動(dòng)態(tài) ARP 檢測(cè)。

它的原理可以用兩句話簡(jiǎn)單概括:

交換機(jī)記錄每個(gè)接口對(duì)應(yīng)的 IP 地址和 MAC,即 port<->mac<->ip,生成 DAI 檢測(cè)表。

交換機(jī)檢測(cè)每個(gè)接口發(fā)送過(guò)來(lái)的 ARP 回應(yīng)包,根據(jù) DAI 表判斷是否違規(guī),若違規(guī)則丟棄此數(shù)據(jù)包并對(duì)接口進(jìn)行懲罰。

交換機(jī)記錄每個(gè)接口對(duì)應(yīng)的 IP 地址和 MAC,即 port<->mac<->ip,生成 DAI 檢測(cè)表。

交換機(jī)檢測(cè)每個(gè)接口發(fā)送過(guò)來(lái)的 ARP 回應(yīng)包,根據(jù) DAI 表判斷是否違規(guī),若違規(guī)則丟棄此數(shù)據(jù)包并對(duì)接口進(jìn)行懲罰。

我們知道,PC3 是在交換機(jī)的 Port3、MAC 地址是 MAC3,IP 地址是 IP3,所以本地 DAI 表項(xiàng)內(nèi)容是<port3-mac3-ip3>。

當(dāng)交換機(jī)從接口 Port3 收到 ARP 回應(yīng)包,內(nèi)容卻是 IP2 和 MAC3 映射,即<port3-mac3-ip2>。

經(jīng)判斷,這個(gè)包就是虛假的欺騙包,交換機(jī)馬上丟棄這個(gè)包,并且可以對(duì)接口做懲罰(不同設(shè)備的懲罰方式有所不同,可以直接將接口"軟關(guān)閉",直接將攻擊者斷網(wǎng);也可以"靜默處理",僅丟棄欺騙包,其他通信正常)。

上面這個(gè)動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù),可以說(shuō)是目前防御 ARP 攻擊最有效的方法之一。

作為初學(xué)者,大家可能還會(huì)有三個(gè)疑問(wèn):

一般的交換機(jī)或網(wǎng)絡(luò)設(shè)備能部署動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù)嗎?

連接用戶的交換機(jī),怎么能識(shí)別 IP 地址信息呢?

上面這張 DAI 表是如何生成的?是不是像 CAM 表一樣能自動(dòng)識(shí)別?

一般的交換機(jī)或網(wǎng)絡(luò)設(shè)備能部署動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù)嗎?

連接用戶的交換機(jī),怎么能識(shí)別 IP 地址信息呢?

上面這張 DAI 表是如何生成的?是不是像 CAM 表一樣能自動(dòng)識(shí)別?

這里要給大家說(shuō)個(gè)稍微悲傷一點(diǎn)的事實(shí),大部分能支持這種動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù)的交換機(jī)或者無(wú)線路由器,都基本是企業(yè)級(jí)的產(chǎn)品。

即便是企業(yè)級(jí)交換機(jī),具備局域網(wǎng)安全防御功能的設(shè)備,價(jià)格都要高出不少。所以很多中小型企業(yè)網(wǎng)或校園網(wǎng),基本都愿意買"閹割版"網(wǎng)絡(luò)接入產(chǎn)品,因?yàn)?能通就行",至于安全性怎樣,這是另外要考慮的問(wèn)題。

所以,簡(jiǎn)單的交換機(jī)不具備動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù),即便市面上有帶安全防御的網(wǎng)絡(luò)產(chǎn)品,企業(yè)、學(xué)校、醫(yī)院等大量網(wǎng)絡(luò),仍然在早期采購(gòu)的時(shí)候,用的是比較基礎(chǔ)版本的交換機(jī)。

當(dāng)然,隨著網(wǎng)絡(luò)與安全市場(chǎng)的激烈競(jìng)爭(zhēng)和網(wǎng)絡(luò)安全意識(shí)的增強(qiáng),以后會(huì)越來(lái)越好。

另外,交換機(jī)能識(shí)別 IP 地址信息嗎?

從現(xiàn)在的網(wǎng)絡(luò)技術(shù)來(lái)看,分層界限越來(lái)越模糊,融合式的網(wǎng)絡(luò)設(shè)備才是主流,現(xiàn)在的接入交換機(jī)基本能被 Telnet/SSH/Web 管理。

更專業(yè)的交換機(jī)同時(shí)支持動(dòng)態(tài) ARP 監(jiān)測(cè)(dai)、IP 源防護(hù)(ipsg)、DHCP偵 聽(tīng)(dhcp snooping)、端口安全、AAA、802.1x 等局域網(wǎng)安全技術(shù),已經(jīng)超越了原有二層交換機(jī)的定義。

所以,交換機(jī)能讀三層甚至七層的數(shù)據(jù)包已經(jīng)不是什么新鮮事了,不要被"交換機(jī)就是二層設(shè)備"給束縛了,這只是紙面上的定義。

最后一個(gè)問(wèn)題,DAI 檢測(cè)表是如何生成的?

在上面圖解中,我們看到交換機(jī)查看的表已經(jīng)不是原來(lái)的 CAM 表了,內(nèi)容也不太一樣,CAM 表的內(nèi)容主要是 MAC 和 Port 的映射,而 DAI 檢測(cè)表則是 Port、MAC、IP三個(gè)信息映射。

目前這張表支持兩種方式來(lái)生成:

第一種方式就是手工靜態(tài)綁定。即用戶接入網(wǎng)絡(luò)之后,管理員根據(jù)此用戶電腦的 MAC 和 IP 地址,然后在接口上綁死,缺點(diǎn)就是用戶數(shù)太多的話,手工綁定管不過(guò)來(lái)。

第二種方式就是目前最主流的做法,即在交換機(jī)上開(kāi)啟 DHCP 偵聽(tīng)技術(shù)。當(dāng)用戶第一次通過(guò) DHCP 獲取到地址的時(shí)候,交換機(jī)就把用戶電腦的 IP、MAC、Port 信息記錄在 DHCP 偵聽(tīng)表,后面 ARP 檢測(cè)直接調(diào)用這張 DHCP 偵聽(tīng)表即可。

第一種方式就是手工靜態(tài)綁定。即用戶接入網(wǎng)絡(luò)之后,管理員根據(jù)此用戶電腦的 MAC 和 IP 地址,然后在接口上綁死,缺點(diǎn)就是用戶數(shù)太多的話,手工綁定管不過(guò)來(lái)。

第二種方式就是目前最主流的做法,即在交換機(jī)上開(kāi)啟 DHCP 偵聽(tīng)技術(shù)。當(dāng)用戶第一次通過(guò) DHCP 獲取到地址的時(shí)候,交換機(jī)就把用戶電腦的 IP、MAC、Port 信息記錄在 DHCP 偵聽(tīng)表,后面 ARP 檢測(cè)直接調(diào)用這張 DHCP 偵聽(tīng)表即可。

小結(jié)

以上便是在網(wǎng)絡(luò)設(shè)備上部署的 ARP 防御技術(shù),通過(guò)動(dòng)態(tài) ARP 監(jiān)測(cè)技術(shù)(DAI),可以很好的解決 ARP 欺騙問(wèn)題。

技術(shù)雖好,但局域網(wǎng)內(nèi)的交換機(jī)、無(wú)線路由器是否支持 DAI,這個(gè)則取決于實(shí)際網(wǎng)絡(luò)情況,尤其是十面埋伏的公共 WiFi 網(wǎng)絡(luò)、脆弱無(wú)比的家庭網(wǎng)絡(luò)、能通就行的校園網(wǎng)絡(luò)......

我們都應(yīng)該持懷疑態(tài)度,至少不能完全信任這些網(wǎng)絡(luò)。

既然這樣的話,普通用戶有沒(méi)有"自救"的方法,能夠抵擋 ARP 攻擊呢?答案是肯定的。

對(duì)于普通用戶,陌生網(wǎng)絡(luò)不要隨意接入,肯定是首選考慮的;當(dāng)然,這里研究的是用戶已經(jīng)接入了網(wǎng)絡(luò),如何做安全防御的問(wèn)題。

從上圖可以看到,用戶(電腦或手機(jī))最重要的是通過(guò)安裝 ARP 防火墻做安全防御,很多普通用戶甚至“以電腦裸奔為豪,以罵安全廠商為榮”,這是對(duì)技術(shù)的嚴(yán)重藐視,對(duì)自己隱私的不負(fù)責(zé)任。

普通小白一定要記住一句話:你沒(méi)有被黑,只是你還沒(méi)有到達(dá)被黑的價(jià)值。

ARP 防火墻在技術(shù)實(shí)現(xiàn)上,一般都有以下功能:

綁定正確的的 IP 和 MAC 映射,收到攻擊包時(shí)不被欺騙。

能夠根據(jù)網(wǎng)絡(luò)數(shù)據(jù)包特征(參考上一篇講解的 ARP 攻擊數(shù)據(jù)包溯源分析),自動(dòng)識(shí)別局域網(wǎng)存在的 ARP 掃描和欺騙行為,并做出攻擊判斷(哪個(gè)主機(jī)做了攻擊,IP 和 MAC 是多少)。

綁定正確的的 IP 和 MAC 映射,收到攻擊包時(shí)不被欺騙。

能夠根據(jù)網(wǎng)絡(luò)數(shù)據(jù)包特征(參考上一篇講解的 ARP 攻擊數(shù)據(jù)包溯源分析),自動(dòng)識(shí)別局域網(wǎng)存在的 ARP 掃描和欺騙行為,并做出攻擊判斷(哪個(gè)主機(jī)做了攻擊,IP 和 MAC 是多少)。

那么,有哪些常見(jiàn)的ARP安全產(chǎn)品呢?

自帶 ARP 防御功能:騰訊電腦管家、360 安全衛(wèi)士……

專業(yè)的 ARP 防火墻:彩影 ARP、金山貝殼、360ARP 防火墻……

自帶 ARP 防御功能:騰訊電腦管家、360 安全衛(wèi)士……

專業(yè)的 ARP 防火墻:彩影 ARP、金山貝殼、360ARP 防火墻……

采用安全產(chǎn)品肯定是普通用戶最省時(shí)省力的做法,而對(duì)于技術(shù)人/工程師而言,如果不屑于使用安全產(chǎn)品,并且希望解決 ARP 攻擊行為,也可以通過(guò)"ARP 雙向綁定"的技術(shù)來(lái)實(shí)現(xiàn)。

什么是"ARP 雙向綁定"呢?

從上圖可以看到,PC1 和 PC2 通信雙方都靜態(tài)綁定對(duì)方的 IP 和 MAC 映射,即便收到 ARP 欺騙包,由于靜態(tài)綁定的 ARP 映射條目?jī)?yōu)先級(jí)高于動(dòng)態(tài)學(xué)習(xí)到的,所以可以保證不被欺騙。

這種做法非常"綠色無(wú)污染",因?yàn)椴恍枰~外的軟件安裝,但是缺點(diǎn)也非常明顯,例如普通用戶不知道如何在電腦上做 ARP 靜態(tài)綁定,另外工作量也比較大,每個(gè)主機(jī)和網(wǎng)關(guān)設(shè)備都需要綁定整個(gè)局域網(wǎng)的 ARP 靜態(tài)映射。

以下面的家庭 WiFi 網(wǎng)絡(luò)為例:

像這個(gè) WiFi 網(wǎng)絡(luò),如果通過(guò) ARP 雙向綁定來(lái)解決安全問(wèn)題,配置量其實(shí)蠻大的,當(dāng)然,這就基本能夠保障內(nèi)網(wǎng)主機(jī)間通過(guò)以及主機(jī)訪問(wèn)互聯(lián)網(wǎng)的安全性了。

Windows ARP 靜態(tài)綁定方法:

進(jìn)入命令行 cmd 界面。

[arp -s ip 地址 mac 地址],例如:arp -s 192.168.1.1 00-11-22-a1-c6-09

注:家用無(wú)線路由器若要進(jìn)行 ARP 綁定,則需要通過(guò) Web 登錄并進(jìn)行圖形操作。

進(jìn)入命令行 cmd 界面。

[arp -s ip 地址 mac 地址],例如:arp -s 192.168.1.1 00-11-22-a1-c6-09

注:家用無(wú)線路由器若要進(jìn)行 ARP 綁定,則需要通過(guò) Web 登錄并進(jìn)行圖形操作。

小結(jié)

用戶端的 ARP 防御方法,要么安裝 ARP 防火墻,要么做 ARP 雙向綁定。

對(duì)于絕大部分用戶來(lái)講,雖然安裝防火墻不能保證百分百安全了,但是能夠解決很大一部分的隱患。

如果被 ARP 攻擊了,如何揪出"內(nèi)鬼"并"優(yōu)雅的還手"?

相比"如何防御 ARP 攻擊",我相信更多人感興趣的是"如何揪出內(nèi)鬼并進(jìn)行還手",因?yàn)?揪出內(nèi)鬼"的時(shí)候,我們充當(dāng)著"網(wǎng)絡(luò)警察"的角色(把小偷逮?。?,而"優(yōu)雅的還手"又充當(dāng)著"法官"的角色(懲治小偷)。

而充當(dāng)網(wǎng)絡(luò)警察或法官這種角色,我可能算是比較有經(jīng)驗(yàn)的。

從我剛接觸網(wǎng)絡(luò)/安全到現(xiàn)在,充當(dāng)?shù)拇螖?shù)多的數(shù)不過(guò)來(lái):在學(xué)校外面租房的時(shí)候(別想歪)、在網(wǎng)吧上網(wǎng)的時(shí)候、在音樂(lè)餐吧吃飯的時(shí)候、在麥當(dāng)勞/德克士蹭網(wǎng)的時(shí)候......

可能普通用戶覺(jué)得稀疏平常的地方,在網(wǎng)絡(luò)世界里實(shí)則暗流涌動(dòng)。

我第一次"抓內(nèi)鬼當(dāng)法官"應(yīng)該是在 2010 年的時(shí)候,當(dāng)時(shí)在學(xué)校旁邊租了一個(gè)房子自己做技術(shù)研究。

有一天晚上,網(wǎng)速變得特別慢,網(wǎng)頁(yè)基本沒(méi)法打開(kāi),QQ 勉強(qiáng)還能掛著,但是租房以來(lái)網(wǎng)絡(luò)一直還可以,雖然不算快,但是也至少滿足平常上網(wǎng)需求啊。

我心想:算了,畢竟租的房子一般,每個(gè)月網(wǎng)費(fèi)也就 30 塊,房東拉的寬帶可能比較垃圾不穩(wěn)定吧,明天再看看。

第二天早上爬起來(lái),發(fā)現(xiàn)網(wǎng)絡(luò)一點(diǎn)問(wèn)題都沒(méi)有,該開(kāi)的網(wǎng)頁(yè),該下載的資料,都沒(méi)有任何影響。嗯,心情不錯(cuò),不用專門跑回學(xué)校一趟下載資源之類的。

但是到了晚上七八點(diǎn)的時(shí)候,網(wǎng)絡(luò)又出現(xiàn)問(wèn)題了,跟昨天晚上的情況一模一樣,基本沒(méi)法上網(wǎng),但是網(wǎng)卡又顯示連接著,這讓我非常的郁悶。

然后我突然想起這幾天,這棟樓好像新來(lái)了一個(gè)租客,這棟樓一共就四層,一層就 3 戶租客,一共也就 10 來(lái)戶,而一樓還是房東自己一家人住,我自己住二樓。

基本上這棟樓里的租客都能記得七七八八,所以如果有陌生面孔的話,一眼就能認(rèn)出來(lái),我們暫且把這個(gè)人稱為 H,看上去是個(gè)上班族。

雖然當(dāng)時(shí)還是個(gè)小菜鳥(niǎo),但是畢竟學(xué)這塊的,還是有點(diǎn)敏感:擦,會(huì)不會(huì)是這個(gè)人白天去上班,晚上回來(lái)宿舍,就開(kāi)始限制我們的網(wǎng)速?。?/p>

你不犯我,相安無(wú)事,你若范我,我必搞你。(年輕人還是有點(diǎn)浮躁啊....)

行,開(kāi)干吧,多想沒(méi)用。然后便拿出了 P2P 終結(jié)者(忘了當(dāng)時(shí)用什么軟件了,不過(guò)八九不離十)一掃描,想探探網(wǎng)絡(luò)究竟。

萬(wàn)萬(wàn)沒(méi)想到啊,居然遇到老司機(jī)了,人家局域網(wǎng)權(quán)限比我還高(很多局域網(wǎng)流控軟件都有權(quán)限的概念,若同一個(gè)局域網(wǎng)同時(shí)有多個(gè)使用這個(gè)流控軟件,則權(quán)限高的優(yōu)先控制,其他人的軟件會(huì)自動(dòng)退出)。

網(wǎng)絡(luò)掃描進(jìn)行一半,就提示"局域網(wǎng)有多人使用,由于你權(quán)限較低暫停退出"這樣的提示,這樣一來(lái),就驗(yàn)證了我的判斷,這個(gè)內(nèi)鬼應(yīng)該是 H。自從他來(lái)了之后,這個(gè)網(wǎng)絡(luò)就出了問(wèn)題。

這棟樓的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)是這樣的:

普通小白遇到這種情況,裝個(gè) ARP 防火墻,咬咬牙也就過(guò)去了。但是咱們學(xué)網(wǎng)絡(luò)和安全的,遇到這種情況,感覺(jué)就好像被人騎在頭上一樣,那咋辦呢?

作為一個(gè)理科男,做事情還是得按步驟走,不能被脾氣牽著走,雖然當(dāng)時(shí)已經(jīng)非常生氣了,但是基本定下來(lái)這個(gè)解決流程:

第一馬上給電腦安裝防火墻,先脫離 H 的控制(當(dāng)時(shí)電腦居然是裸奔的...)。

第二想盡辦法找到 H 的 IP 和 MAC 地址(很多小伙伴看到這里可能會(huì)想:直接上去樓上揍他一頓不就得了,還費(fèi)什么勁找地址啊。

這個(gè)有必要說(shuō)明下:①我個(gè)頭沒(méi)人家大只。②人家要是問(wèn):你有證據(jù)嗎,你取證了嗎?所以,武力不能解決問(wèn)題,但是技術(shù)能力可以。)

第三想方設(shè)法拿到網(wǎng)絡(luò)控制權(quán),把他踢下去。

第一馬上給電腦安裝防火墻,先脫離 H 的控制(當(dāng)時(shí)電腦居然是裸奔的...)。

第二想盡辦法找到 H 的 IP 和 MAC 地址(很多小伙伴看到這里可能會(huì)想:直接上去樓上揍他一頓不就得了,還費(fèi)什么勁找地址啊。

這個(gè)有必要說(shuō)明下:①我個(gè)頭沒(méi)人家大只。②人家要是問(wèn):你有證據(jù)嗎,你取證了嗎?所以,武力不能解決問(wèn)題,但是技術(shù)能力可以。)

第三想方設(shè)法拿到網(wǎng)絡(luò)控制權(quán),把他踢下去。

實(shí)操步驟

第一步:具體就不說(shuō)了,也忘了當(dāng)時(shí)裝的什么安全軟件了。

第二步:怎么找到攻擊者的 IP 和 MAC 地址呢?

2010 年的安全軟件,不像現(xiàn)在的 ARP 防火墻,能夠主動(dòng)告警,并且說(shuō)明攻擊次數(shù)和攻擊源,所以還是需要自己折騰下。

熟練的打開(kāi)電腦之前安裝好了的 Wireshark,監(jiān)聽(tīng)自己電腦網(wǎng)卡的流量,設(shè)置流量過(guò)濾器(僅過(guò)濾 ARP 協(xié)議)。

不出意外,接下來(lái)就是一堆"帶有節(jié)奏的 ARP 掃描包"(還記不記得之前章節(jié)說(shuō)過(guò)的,ARP 攻擊一般會(huì)涉及到持續(xù)的內(nèi)網(wǎng)掃描和欺騙攻擊)。

當(dāng)時(shí)收到的數(shù)據(jù)包大概這樣的:

通過(guò)流量數(shù)據(jù)包分析,很快就確定了攻擊者的 IP 和 MAC 地址。

這里要注意:雖然抓到了攻擊者的 IP 和 MAC 地址。但是,我們還是沒(méi)法實(shí)錘的證明:攻擊者就是 H。

這個(gè)攻擊者是不是真的 H ???怎么確定就是這個(gè)人干的呢?如何把虛擬世界里的地址跟真實(shí)世界的人匹配起來(lái)?

接下來(lái)我便想到了一個(gè)方法:如果我們能先拿到網(wǎng)絡(luò)的控制權(quán),然后把攻擊者給踢下去直接斷網(wǎng),同時(shí)保證其他人網(wǎng)絡(luò)連通;然后,誰(shuí)要是下去跟房東溝通反饋不能上網(wǎng),不就可以基本斷定這個(gè)人就是攻擊者? 說(shuō)白了,就是"誰(shuí)叫誰(shuí)小狗"......

到了計(jì)劃的第三步:如何拿到整個(gè)網(wǎng)絡(luò)的控制權(quán)?這里就沒(méi)走的那么順暢了。

現(xiàn)在的實(shí)際情況是:我和攻擊者同時(shí)開(kāi)啟局域網(wǎng)流控軟件,而是我被踢下來(lái)了,因?yàn)槲覚?quán)限低一些。

當(dāng)時(shí)的第一個(gè)想法是:我換一個(gè)流控軟件不就得了?這樣我不跟你拼這個(gè)軟件的權(quán)限。但是仔細(xì)想了想,即便換一個(gè)流控軟件能用,但是頂多也就是打個(gè)平手,我控制不了你,你也控制不了我,但最終遭殃的還是其他普通小白,這個(gè)方法不能"斬草除根"啊。

怎么辦呢?是不是只能跟他打個(gè)平手。在這里卡了很久但又心有不甘,然后到了大半夜了突然頓悟:擦,為什么要跟他"限來(lái)限去"呢,直接上整棟樓的出口路由器,把他踢出去不就得了?

路由器(應(yīng)該是 TP-LINK)就在一樓樓梯口,然后其他樓層加一個(gè) Hub 級(jí)聯(lián)上去,所以大家都在一個(gè)網(wǎng)絡(luò)里面。

但問(wèn)題是沒(méi)有路由器的后臺(tái)登錄密碼,怎么解決呢?抱著僥幸的心理,查看電腦網(wǎng)關(guān)地址,然后瀏覽器輸入網(wǎng)關(guān)地址,彈出了登錄頁(yè)面,嘗試 admin/admin?不行,再嘗試 admin/123456?還是不行。

就這樣嘗試了常見(jiàn)的十幾二十個(gè)賬號(hào)密碼,都提示賬號(hào)密碼錯(cuò)誤,看來(lái)運(yùn)氣不是很好。

既然這樣的話,就只能拿出暴力破解軟件跑幾個(gè)詞典看看,用 Hydra 掛著用戶名和密碼詞典,慢慢的看著命令行輸出,但輸出結(jié)果基本都是 Failed。

所以,第二天晚上雖然發(fā)現(xiàn)了攻擊者的 IP 和 MAC 地址信息,但是拿他沒(méi)辦法,只能先忍著。

到了第三天白天,腦子里想的都是如何登錄這個(gè)路由器后臺(tái)管理界面,嘗試跑了幾個(gè)詞典都沒(méi)法登錄。

心里又在想:房東不應(yīng)該會(huì)設(shè)置太復(fù)雜的密碼啊,四五十歲的阿姨,完全不懂技術(shù)啊,網(wǎng)絡(luò)應(yīng)該也是叫人搞的,即便別人設(shè)置密碼也應(yīng)該給阿姨設(shè)置比較簡(jiǎn)單的讓她好記的,方便后面維護(hù)之類的。

一想到這里,趕緊從柜子里掏出之前的租房合約和房東名片,然后把房東的手機(jī)號(hào)碼、房東的姓名拼音等信息做成簡(jiǎn)單的密碼詞典,再重新跑一次,還沒(méi)反應(yīng)過(guò)來(lái),就顯示密碼嘗試成功:admin/房東手機(jī)號(hào)碼。

萬(wàn)萬(wàn)沒(méi)想到,以為只要 6 位或者 8 位的密碼,居然是一個(gè) 11 位的手機(jī)號(hào)碼,之前嘗試的詞典都是 8 位以內(nèi)的。

接下來(lái)用瀏覽器訪問(wèn)路由器后臺(tái)管理界面,進(jìn)入主機(jī)列表,還沒(méi)發(fā)現(xiàn)這個(gè)昨晚攻擊者的 IP 地址上線。

等到了晚上七八點(diǎn)的時(shí)候,終于在路由器上發(fā)現(xiàn)這個(gè) IP 地址,而且,Wireshark 同時(shí)也抓到了這個(gè)攻擊者發(fā)起的掃描包。

看來(lái)是攻擊者一回到宿舍,打開(kāi)電腦,就直接掛著攻擊軟件,確實(shí)是個(gè)"慣犯"啊。好吧,看到這個(gè)情況,我直接在出口路由器上把這個(gè) IP 和 MAC 地址禁用,看接下來(lái)發(fā)生什么。

果然,大概過(guò)了半個(gè)鐘,有人從樓上下來(lái),直接去一樓找房東阿姨去了,具體說(shuō)什么這個(gè)不清楚,但是應(yīng)該是詢問(wèn)是不是寬帶欠費(fèi)之類的導(dǎo)致不能上網(wǎng)。

過(guò)了一會(huì),阿姨帶著他上來(lái)二樓,然后敲門詢問(wèn):你們二樓能不能上網(wǎng)啊?大家都陸續(xù)回答:可以啊、沒(méi)問(wèn)題啊。

與此同時(shí),我已經(jīng)確定了:眼前的這個(gè)人,H 就是攻擊者!他大概沒(méi)料到,自己已經(jīng)控制了內(nèi)網(wǎng),怎么可能被踢掉之類呢。

阿姨也不知道怎么辦,只能說(shuō)明天看看吧??粗麩o(wú)辜的眼神回樓上去了,我也覺(jué)得抓到內(nèi)鬼也就算了,先把他解禁看看。然后"慣犯"又上線了,看來(lái)沒(méi)有吃夠苦頭啊,當(dāng)天晚上直接讓他斷網(wǎng)。

之后的幾個(gè)晚上類似的情況慢慢少了,因?yàn)橹灰粧呙璋l(fā)起攻擊,我這邊就斷他網(wǎng),然后隔 10 分鐘或者半個(gè)鐘看看他反應(yīng),就這樣慢慢地把他制服了,整棟樓的網(wǎng)絡(luò)也就逐漸恢復(fù)了平靜。

ARP 防御總結(jié)

1.ARP 攻擊非常低門檻,但是造成的影響卻很大,包括斷網(wǎng)攻擊、流量被限、賬號(hào)被盜等。

2.ARP 防御可以在網(wǎng)絡(luò)端(網(wǎng)絡(luò)設(shè)備)上部署,也可以在用戶端(電腦/手機(jī))上部署。

3.網(wǎng)絡(luò)設(shè)備(例如交換機(jī))部署 ARP 防御,通常需要用到 DAI(動(dòng)態(tài) ARP 監(jiān)測(cè))技術(shù)。

更加專業(yè)的局域網(wǎng)安全防御,還可能結(jié)合 DHCP 偵聽(tīng)、IP 源防護(hù)、端口安全、AAA、802.1X 等技術(shù),這些專業(yè)的防御技術(shù),是由網(wǎng)絡(luò)運(yùn)維和安全運(yùn)維工程師來(lái)實(shí)施的。

4.用戶端(電腦/手機(jī))實(shí)施 ARP 防御,最好的方法就是不要隨意接入陌生網(wǎng)絡(luò),并且安裝 ARP 防火墻。當(dāng)然,技術(shù)宅的話,可以采用"ARP 雙向綁定"的方法,相對(duì)比較麻煩,但是也奏效。

5.作為一名有素養(yǎng)的網(wǎng)絡(luò)/安全工程師,應(yīng)該不作惡。但是如果遭受攻擊,應(yīng)該揪出內(nèi)鬼并"優(yōu)雅的還手",做一個(gè)網(wǎng)絡(luò)警察,還普通用戶一個(gè)干凈的網(wǎng)絡(luò)環(huán)境。

作者:陳鑫杰

編輯:陶家龍、孫淑娟

博客地址:http://chenxinjie.blog.51cto.com/7749507/1960336

有投稿、尋求報(bào)道意向技術(shù)人請(qǐng)聯(lián)絡(luò) editor@51cto.com

作者:陳鑫杰

編輯:陶家龍、孫淑娟

博客地址:http://chenxinjie.blog.51cto.com/7749507/1960336

有投稿、尋求報(bào)道意向技術(shù)人請(qǐng)聯(lián)絡(luò) editor@51cto.com

陳鑫杰

拼客學(xué)院院長(zhǎng)

5 年網(wǎng)絡(luò)/安全行業(yè)經(jīng)歷,專注網(wǎng)絡(luò)/安全項(xiàng)目規(guī)劃與部署 ;4 年 IT 教育創(chuàng)業(yè)經(jīng)驗(yàn),學(xué)員遍布國(guó)內(nèi)一線互聯(lián)網(wǎng)/安全/政企單位;51CTO 學(xué)院金牌講師,總排名 Top10,100 萬(wàn)+在線學(xué)員;與本科院校合作編著《計(jì)算機(jī)網(wǎng)絡(luò)實(shí)踐教程 》(人民郵電出版);技術(shù)棧:CCIE、企業(yè)網(wǎng)/政務(wù)網(wǎng)/數(shù)據(jù)中心網(wǎng)、等級(jí)保護(hù)、滲透測(cè)試、Web 安全、WiFi 安全、SDN(軟件定義網(wǎng)絡(luò))、Python/Django 開(kāi)發(fā)等。

1.《被ARP攻擊了,如何揪出&quot;內(nèi)鬼&quot;,并&quot;優(yōu)雅的還手&quot;?》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識(shí),僅代表作者本人觀點(diǎn),與本網(wǎng)站無(wú)關(guān),侵刪請(qǐng)聯(lián)系頁(yè)腳下方聯(lián)系方式。

2.《被ARP攻擊了,如何揪出&quot;內(nèi)鬼&quot;,并&quot;優(yōu)雅的還手&quot;?》僅供讀者參考,本網(wǎng)站未對(duì)該內(nèi)容進(jìn)行證實(shí),對(duì)其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請(qǐng)保留本站內(nèi)容來(lái)源地址,http://f99ss.com/guonei/10093.html