什么是ARP?
什么是ARP
ARP(Address Resolution Protocol)是地址解析協議,是一種將IP地址轉化成物理地址的協議。從IP地址到物理地址的映射有兩種方式:表格方式和非表格方式。ARP具體說來就是將網絡層(也就是相當于OSI的網絡層)地址解析為數據鏈路層(也就是相當于OSI的數據鏈路層)的物理地址(注:此處物理地址并不一定指MAC地址)。
ARP原理(li):某機(ji)(ji)(ji)器(qi)A要向(xiang)主(zhu)機(ji)(ji)(ji)B發送報(bao)文(wen),會(hui)查(cha)詢本地(di)(di)(di)的(de)(de)(de)(de)ARP緩(huan)存(cun)(cun)(cun)(cun)表,找到(dao)B的(de)(de)(de)(de)IP地(di)(di)(di)址對應的(de)(de)(de)(de)MAC地(di)(di)(di)址后,就會(hui)進行數據傳輸(shu)。如果未找到(dao),則廣(guang)播A一個(ge)ARP請(qing)(qing)求(qiu)報(bao)文(wen)(攜帶(dai)主(zhu)機(ji)(ji)(ji)A的(de)(de)(de)(de)IP地(di)(di)(di)址Ia——物(wu)理(li)地(di)(di)(di)址Pa),請(qing)(qing)求(qiu)IP地(di)(di)(di)址為Ib的(de)(de)(de)(de)主(zhu)機(ji)(ji)(ji)B回(hui)答(da)物(wu)理(li)地(di)(di)(di)址Pb。網上所有(you)主(zhu)機(ji)(ji)(ji)包括B都收到(dao)ARP請(qing)(qing)求(qiu),但只(zhi)有(you)主(zhu)機(ji)(ji)(ji)B識別自己的(de)(de)(de)(de)IP地(di)(di)(di)址,于是(shi)向(xiang)A主(zhu)機(ji)(ji)(ji)發回(hui)一個(ge)ARP響應報(bao)文(wen)。其中就包含有(you)B的(de)(de)(de)(de)MAC地(di)(di)(di)址,A接(jie)收到(dao)B的(de)(de)(de)(de)應答(da)后,就會(hui)更新本地(di)(di)(di)的(de)(de)(de)(de)ARP緩(huan)存(cun)(cun)(cun)(cun)。接(jie)著使用這(zhe)個(ge)MAC地(di)(di)(di)址發送數據(由網卡附加MAC地(di)(di)(di)址)。因此,本地(di)(di)(di)高速緩(huan)存(cun)(cun)(cun)(cun)的(de)(de)(de)(de)這(zhe)個(ge)ARP表是(shi)本地(di)(di)(di)網絡流通的(de)(de)(de)(de)基礎(chu),而且這(zhe)個(ge)緩(huan)存(cun)(cun)(cun)(cun)是(shi)動態的(de)(de)(de)(de)。
什么是ARP欺騙
ARP協(xie)議并不(bu)只在(zai)發送(song)了(le)ARP請(qing)求(qiu)才接收(shou)ARP應(ying)答。當計算機接收(shou)到(dao)ARP應(ying)答數(shu)據包的(de)(de)(de)時候(hou),就會(hui)(hui)對本地(di)(di)的(de)(de)(de)ARP緩(huan)存(cun)進(jin)行(xing)更(geng)新,將應(ying)答中的(de)(de)(de)IP和MAC地(di)(di)址(zhi)存(cun)儲在(zai)ARP緩(huan)存(cun)中。因(yin)此(ci),當局域(yu)網(wang)(wang)中的(de)(de)(de)某(mou)臺機器(qi)B向(xiang)A發送(song)一個(ge)自己偽(wei)造的(de)(de)(de)ARP應(ying)答,而如果這(zhe)(zhe)個(ge)應(ying)答是(shi)B冒充C偽(wei)造來(lai)的(de)(de)(de),即IP地(di)(di)址(zhi)為C的(de)(de)(de)IP,而MAC地(di)(di)址(zhi)是(shi)偽(wei)造的(de)(de)(de),則當A接收(shou)到(dao)B偽(wei)造的(de)(de)(de)ARP應(ying)答后,就會(hui)(hui)更(geng)新本地(di)(di)的(de)(de)(de)ARP緩(huan)存(cun),這(zhe)(zhe)樣(yang)在(zai)A看(kan)來(lai)C的(de)(de)(de)IP地(di)(di)址(zhi)沒有變,而它的(de)(de)(de)MAC地(di)(di)址(zhi)已經不(bu)是(shi)原來(lai)那個(ge)了(le)。由于局域(yu)網(wang)(wang)的(de)(de)(de)網(wang)(wang)絡流通不(bu)是(shi)根據IP地(di)(di)址(zhi)進(jin)行(xing),而是(shi)按照MAC地(di)(di)址(zhi)進(jin)行(xing)傳輸。所以,那個(ge)偽(wei)造出(chu)來(lai)的(de)(de)(de)MAC地(di)(di)址(zhi)在(zai)A上被改變成一個(ge)不(bu)存(cun)在(zai)的(de)(de)(de)MAC地(di)(di)址(zhi),這(zhe)(zhe)樣(yang)就會(hui)(hui)造成網(wang)(wang)絡不(bu)通,導致A不(bu)能(neng)Ping通C!這(zhe)(zhe)就是(shi)一個(ge)簡單的(de)(de)(de)ARP欺(qi)騙。
ARP欺騙的種類
ARP欺騙作為黑客常用的攻擊手段之一,ARP欺騙分為二種,一種是對路由器ARP表的欺騙;另一種是對內網PC的網關欺騙。
第一種ARP欺騙的原理是——截獲網關數據。它通知路由器一系列錯誤的內網MAC地址,并按照一定的頻率不斷進行,使真實的地址信息無法通過更新保存在路由器中,結果路由器的所有數據只能發送給錯誤的MAC地址,造成正常PC無法收到信息。第二種ARP欺騙的原理是——偽造網關。它的原理是建立假網關,讓被它欺騙的PC向假網關發數據,而不是通過正常的路由器途徑上網。在PC看來,就是上不了網了,“網絡掉線了”。
一般來說,ARP欺騙攻擊的后果非常嚴重,大多數情況下會造成大面積掉線。有些網管員對此不甚了解,出現故障時,認為PC沒有問題,交換機沒掉線的“本事”,電信也不承認寬帶故障。而且如果第一種ARP欺騙發生時,只要重啟路由器,網絡就能全面恢復,那問題一定是在路由器了。為此,寬帶路由器背了不少“黑鍋”。

