網(wǎng)速變慢、設(shè)備互聯(lián)異常?小心是 ARP 出了問(wèn)題
前兩天,我們公司突然出現(xiàn)了網(wǎng)絡(luò)異常。開始只是幾臺(tái)電腦網(wǎng)頁(yè)打不開,沒(méi)人在意,大家以為是臨時(shí)波動(dòng)。結(jié)果短短半小時(shí),整個(gè)辦公室的網(wǎng)絡(luò)幾乎癱瘓,連內(nèi)部文件服務(wù)器都連不上。
當(dāng)時(shí)的感覺(jué)很奇怪:外網(wǎng)能ping通,但訪問(wèn)特別慢,本地的打印機(jī)、共享文件夾這些內(nèi)部資源,卻完全連接不上。我們馬上開始排查。
第一反應(yīng)是看出口,路由器和防火墻都沒(méi)問(wèn)題。后來(lái)查看交換機(jī),發(fā)現(xiàn)局域網(wǎng)內(nèi)的流量異常高,大量是廣播包。更奇怪的是,MAC地址表里很多端口的綁定在不斷變化,像有人在瘋狂插拔網(wǎng)線一樣。再深入看,才發(fā)現(xiàn)問(wèn)題出在ARP協(xié)議上。
ARP工作流程如下圖: PC1 想與 PC2 通信(知道 IP,不知道 MAC)
簡(jiǎn)單說(shuō),就是有人在局域網(wǎng)里發(fā)了大量偽造的ARP應(yīng)答包,導(dǎo)致各個(gè)設(shè)備都把錯(cuò)誤的MAC地址寫進(jìn)了自己的緩存,結(jié)果整個(gè)網(wǎng)絡(luò)通信混亂,流量打滿,最終癱瘓。
說(shuō)起來(lái),ARP(地址解析協(xié)議)本來(lái)是很基礎(chǔ)的東西,局域網(wǎng)里大家互相靠它來(lái)找到對(duì)方。但問(wèn)題是,ARP這種協(xié)議天生就沒(méi)設(shè)計(jì)安全機(jī)制,誰(shuí)發(fā)個(gè)應(yīng)答,別人就信了。這次,有設(shè)備(懷疑是中了毒的軟件或者配置錯(cuò)誤的機(jī)器)持續(xù)發(fā)送假的ARP包,把局域網(wǎng)攪得一團(tuán)亂。如下圖:
ARP攻擊并不新鮮,但真正遇到,還是挺讓人頭疼的。特別是我們的交換機(jī)是二三層混合型,默認(rèn)允許ARP廣播到整個(gè)VLAN,一旦出問(wèn)題,影響面非常廣。
解決的方法其實(shí)也不是特別復(fù)雜:
- 臨時(shí)封掉可疑端口,隔離問(wèn)題源頭
- 核查關(guān)鍵設(shè)備(網(wǎng)關(guān)、服務(wù)器)上的ARP緩存,必要時(shí)手動(dòng)清除
- 重新加載靜態(tài)ARP表,把常用IP-MAC關(guān)系固定下來(lái)
- 在交換機(jī)上啟用ARP防護(hù),比如限制一個(gè)端口最多只能綁定幾個(gè)MAC地址,超過(guò)就自動(dòng)斷開
事后復(fù)盤,發(fā)現(xiàn)公司內(nèi)部網(wǎng)絡(luò)平時(shí)安全配置做得還是有些松,尤其是內(nèi)網(wǎng)部分。大家總覺(jué)得有防火墻,外部攻擊進(jìn)不來(lái)就萬(wàn)事大吉了,結(jié)果內(nèi)部出了問(wèn)題,一下子放大了影響。
這件事情也提醒了我們一個(gè)很現(xiàn)實(shí)的問(wèn)題:局域網(wǎng)安全,不能靠運(yùn)氣。
ARP攻擊雖然看起來(lái)是很“低級(jí)”的手段,但只要環(huán)境允許,破壞力一點(diǎn)也不比高深的入侵技術(shù)差。而且執(zhí)行門檻極低,一些網(wǎng)絡(luò)掃描、釣魚工具本身就帶ARP欺騙功能,普通人稍微摸一下教程就能操作。
未來(lái)我們準(zhǔn)備做幾件事情來(lái)防范類似問(wèn)題:
- 核心設(shè)備上啟用靜態(tài)ARP
- VLAN進(jìn)一步劃分,減少?gòu)V播域
- 內(nèi)網(wǎng)重要段開啟ARP防護(hù)策略
- 定期巡檢局域網(wǎng)異常廣播和MAC地址漂移情況
總的來(lái)說(shuō),安全防護(hù),不是等出問(wèn)題才補(bǔ)救,而是日常把基本功打牢。哪怕是像ARP這樣小小的一個(gè)環(huán)節(jié),一旦出事,后果也遠(yuǎn)比想象中嚴(yán)重。