ARP欺騙***與防護

ARP協議簡單的說就是通過IP查找對應的MAC地址,IP只是一個邏輯地址,而MAC纔是網絡設備的物理地址,只有找到真正的地址(物理地址),才能進行數據傳輸(百度百科的ARP詞條)。ARP是通過發送ARP廣播包通知別的主機自己是誰(通知別人某個IP對應的是某個MAC),如果發送的信息包含有意的不正確IP與MAC地址對應關係,則會影響接收方對網絡地址識別的正確性,這就是ARP欺騙,說白了就是不讓IP與正確的MAC地址建立關聯,從而使數據發送到錯誤的地點,造成的後果有數據被竊聽或劫持(劫持就是不還給你),再通俗的說,就是上不了網或上錯網,再或者和別人“一起”上網。
   
     一般情況下遭遇ARP欺騙上不了網時,重啓電腦或用命令arp -d清空ARP緩存表後會暫時正常,但很快又恢復原樣(再次遭受***),因此可以藉此判斷一下是否遭遇到ARP欺騙,而不是光看所謂的ARP
防火牆在叫囂“ARP欺騙***”。另外如果你是家庭用戶,只有你一個人上網,而不是象公司單位那樣通過局域網上網的,則一般情況下是不會有ARP欺騙***的,即使萬里有一碰上了,那麼要解決的話,需要找你的寬帶提供商,即使他不承認,請相信這時受影響的絕不會只有你一戶,將是一個相當大的網絡故障。如果你家裏也有幾臺電腦一起共享上網(如通過路由器),理論上是存在ARP欺騙的可能,不過,只有幾臺電腦的話,檢查起來也很方便,大不了一臺一臺拔出網線檢查,所以共享上網的電腦數越少,中招的可能性越小,檢查的難度都低。
   
     對於ARP欺騙的防護,除了大量相關的防ARP欺騙的
防火牆與殺毒工具外,簡單的方法就是綁定網卡、網關的IP與MAC地址,如用arp -s ip mac 命令綁定(斜體字符需用實際的值代替,下同),注意這個綁定關係將在電腦重啓後失效,除非再次綁定,或將此命令寫成批處理文件並加入啓動項,本機MAC地址可以通過ipconfig/all命令查得,至於網關的MAC,可以在未中毒前ping一下網關,然後用arp -a命令獲知(當然如果你能直接查到更好)。
   
     但arp -s在vista與win7中行不通,所以,在vista和win7中要用到命令netsh(此命令在2000/xp中也有,但與win7中不同,以下有的命令在xp中不能運行):先運行命令netsh interface ipv4 show interface(或簡寫成netsh i i show in,注意在2000/XP中運行此命令前,會提示先啓動路由與遠程訪問服務,但即使能運行也不能實現與win7/vista中一樣的功能,見後),可以查知本地連接的索引號(即idx),然後就可以進行綁定netsh -c "interface ipv4" add neighbors idx "ip" "mac"(要求以管理員身份運行此命令,即在以管理員身份運行cmd後再運行命令;注:在XP中此綁定命令不能運行),同樣其中的"interface ipv4"可以簡寫成"i i",這個綁定與arp -s不同,是永久綁定,即使重啓電腦。
   
     綁定後,用arp -a檢查,IP與MAC就是static(靜態)關聯,而不是dynamic(動態)了。一般用戶只要在自己的電腦上綁定網關即可,如果需要的話,可以在路由器上綁定各個主機的網卡IP與MAC,在自己的電腦上綁定自己網卡的IP與MAC似乎沒有必要,畢竟我們要是對方(如網關)的真實地址。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章