處理ARP欺騙導(dǎo)致小區(qū)用戶上不了網(wǎng)
發(fā)表時間:2023-07-17 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]近日某小區(qū)有用戶反映上網(wǎng)經(jīng)常出現(xiàn)掉線現(xiàn)象, 而當工程人員上門檢修時并未發(fā)現(xiàn)用戶所說的故障現(xiàn)象。 后來幾天內(nèi)又多次接到該用戶電話反映故障, 同時陸續(xù)接到該小區(qū)其他用戶反映有同類故障出現(xiàn), 這時感覺到...
近日某小區(qū)有用戶反映上網(wǎng)經(jīng)常出現(xiàn)掉線現(xiàn)象, 而當工程人員上門檢修時并未發(fā)現(xiàn)用戶所說的故障現(xiàn)象。 后來幾天內(nèi)又多次接到該用戶電話反映故障, 同時陸續(xù)接到該小區(qū)其他用戶反映有同類故障出現(xiàn), 這時感覺到了事態(tài)的嚴重性。
該小區(qū)有一百余戶住戶, 采用光纖+五類線入戶方式開通寬帶上網(wǎng), 一直比較正常, 日常問題均是線路故障或用戶操作引起的問題。 這次出現(xiàn)的問題影響到該小區(qū)的大部分用戶, 故障出現(xiàn)的時間無任何規(guī)律性, 并且往往又能自動恢復(fù)正常。
并非病毒所致
因為有多個用戶反映出現(xiàn)該故障, 可以排除用戶的線路和機器故障的原因, 根據(jù)以往經(jīng)驗懷疑是某用戶機器中毒, 開機后病毒發(fā)作發(fā)送大量數(shù)據(jù)包導(dǎo)致局域網(wǎng)通信擁塞使得用戶掉線。 于是我們將一臺電腦安裝上Sniffer軟件后接入小區(qū)局域網(wǎng), 試圖找出中毒機器。 經(jīng)過長時間觀測, 并未發(fā)現(xiàn)有任何機器的連接數(shù)或發(fā)出的數(shù)據(jù)包異常增多, 可仍有用戶在我們觀測時反映有掉線現(xiàn)象。
查找IP地址沖突點
我們分別更換了位于小區(qū)第一級的光纖收發(fā)器和交換機, 問題仍沒有得到解決。 既然小區(qū)局域網(wǎng)沒有發(fā)現(xiàn)問題, 我們將目光轉(zhuǎn)向了位于機房內(nèi)的匯聚交換機, 懷疑接入該小區(qū)的端口性能不良, 準備更換端口。 該小區(qū)接在一臺huawei-s3526的16號端口上, 登錄到交換機上以后, 看到出現(xiàn)下面一些提示信息:
%1/15/2006 18:32:30-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.50 arped 00-00-6a-60-78-a3 By 00-03-47-52-43-10 resided in port 16 %1/15/2006 18:32:32-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.42 arped 00-00-93-64-48-d2 By 00-03-47-52-43-10 resided in port 16 …… %1/15/2006 18:32:35-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.26 arped 00-00-34-3d-20-65 By 00-03-47-52-43-10 resided in port 16 |
信息中提示出現(xiàn)IP地址沖突, 顯示的端口號正是該小區(qū)的接入端口。 莫非問題的結(jié)癥在這里?仔細觀察, 發(fā)現(xiàn)所有提示均表示一個MAC地址為00-03-47-52-43-10的機器與其他機器在IP地址與MAC地址轉(zhuǎn)換的過程中發(fā)生了沖突, 即所有IP地址均被改成了與00-03-47-52-43-10地址相對應(yīng)。 因為該小區(qū)用戶采用的是DHCP方式分配IP地址, 通過認證計費系統(tǒng)查找MAC地址為00-03-47-52-43-10的用戶, 到該用戶家與用戶進行溝通, 該用戶反映從未手動更改過IP地址, 上網(wǎng)一直很正常, 日常使用中也未感覺到機器有何異樣。
我們在其機器上用Netstat等命令查看, 也未發(fā)現(xiàn)有任何異常連接或過多連接, 不同于一般機器中毒狀況。 后經(jīng)與用戶協(xié)商斷開該用戶與樓棟交換機的連接, 長時間觀察, 小區(qū)不再有用戶反映掉線, 看來掉線的確是由該用戶引起的。
木馬欺騙ARP緩存表
該現(xiàn)象應(yīng)該是軟件方面的問題。 將該用戶機器硬盤拆下, 掛接到另外一臺機器上進行掃描殺毒, 發(fā)現(xiàn)存在十余種病毒, 通過查找資料, 最終發(fā)現(xiàn)肇事者是一個隱藏在外掛中的木馬程序。 通常來說, 木馬程序僅僅竊取用戶的信息, 而這個木馬為何會導(dǎo)致其他用戶掉線呢?
我們知道, 用戶訪問因特網(wǎng)的數(shù)據(jù)包必須通過多次路由才能到達目的服務(wù)器, 目的服務(wù)器返回用戶的數(shù)據(jù)包也必須通過多次路由才能回到用戶端。 數(shù)據(jù)包路由的第一步是用戶機器上填寫的默認網(wǎng)關(guān), 如果網(wǎng)關(guān)出現(xiàn)問題, 那么用戶是無法上網(wǎng)的。 默認網(wǎng)關(guān)填寫的是IP地址, 而用戶機器與網(wǎng)關(guān)通信時采用的是MAC地址, 問題就發(fā)生在這里。
我們先了解一下ARP協(xié)議。
ARP協(xié)議是“Address Resoluti
on Protocol”(地址解析協(xié)議)的縮寫, 在局域網(wǎng)中, 網(wǎng)絡(luò)中實際傳輸?shù)氖?ldquo;幀”, 幀里面有目標主機的MAC地址。 在以太網(wǎng)中, 一個主機要和另一個主機進行直接通信, 必須要知道目標主機的MAC地址。 但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協(xié)議獲得的。 所謂“地址解析”就是主機在發(fā)送幀前將目標IP地址轉(zhuǎn)換成目標MAC地址的過程。 ARP協(xié)議的基本功能就是通過目標設(shè)備的IP地址, 查詢目標設(shè)備的MAC地址, 以保證通信的順利進行。
采用以太網(wǎng)方式接入上網(wǎng)的電腦里都有一個ARP緩存表(見表1), 表里的IP地址與MAC地址是一一對應(yīng)的。
表1 ARP緩存表
主機 | IP地址 | MAC地址 | 主機 |
網(wǎng)關(guān) | 192.168.16.254 | xx-xx-xx-xx-xx-xx | 網(wǎng)關(guān) |
A | 192.168.16.1 | aa-aa-aa-aa-aa-aa | A |
我們以主機A(192.168.16.1)上網(wǎng)為例。 當發(fā)送數(shù)據(jù)時, 主機A會在自己的ARP緩存表中尋找是否有網(wǎng)關(guān)的IP地址。 如果找到了, 也就知道了目標MAC地址, 直接把目標MAC地址寫入幀里面發(fā)送就可以了;如果在ARP緩存表中沒有找到相對應(yīng)的IP地址, 主機A就會在網(wǎng)絡(luò)上發(fā)送一個廣播, 目標MAC地址是“FF.FF.FF.FF.FF.FF”, 這表示向同一網(wǎng)段內(nèi)的所有主機發(fā)出這樣的詢問:“192.168.16.254的MAC地址是什么?”網(wǎng)絡(luò)上其他主機并不響應(yīng)ARP詢問, 只有網(wǎng)關(guān)接收到這個幀時, 才向主機A做出這樣的回應(yīng):“192.168.16.254的MAC地址是xx-xx-xx-xx-xx-xx”。 這樣, 主機A就知道了網(wǎng)關(guān)的MAC地址, 它就可以向網(wǎng)關(guān)發(fā)送信息了。 同時它還更新了自己的ARP緩存表, 下次再向網(wǎng)關(guān)發(fā)送信息時, 直接從ARP緩存表里查找就可以了。 ARP緩存表采用老化機制, 在一段時間內(nèi)如果表中的某一行沒有使用, 就會刪除, 這樣可以大大減少ARP緩存表的長度, 加快查詢速度。
仔細觀察, 發(fā)現(xiàn)所有提示均表示一個MAC地址為00-03-47-52-43-10的機器與其他機器在IP地址與MAC地址轉(zhuǎn)換的過程中發(fā)生了沖突, 即所有IP地址均被改成了與00-03-47-52-43-10地址相對應(yīng)。 因為該小區(qū)用戶采用的是DHCP方式分配IP地址, 通過認證計費系統(tǒng)查找MAC地址為00-03-47-52-43-10的用戶, 到該用戶家與用戶進行溝通, 該用戶反映從未手動更改過IP地址, 上網(wǎng)一直很正常, 日常使用中也未感覺到機器有何異樣。
我們在其機器上用Netstat等命令查看, 也未發(fā)現(xiàn)有任何異常連接或過多連接, 不同于一般機器中毒狀況。 后經(jīng)與用戶協(xié)商斷開該用戶與樓棟交換機的連接, 長時間觀察, 小區(qū)不再有用戶反映掉線, 看來掉線的確是由該用戶引起的。
木馬欺騙ARP緩存表
該現(xiàn)象應(yīng)該是軟件方面的問題。 將該用戶機器硬盤拆下, 掛接到另外一臺機器上進行掃描殺毒, 發(fā)現(xiàn)存在十余種病毒, 通過查找資料, 最終發(fā)現(xiàn)肇事者是一個隱藏在外掛中的木馬程序。 通常來說, 木馬程序僅僅竊取用戶的信息, 而這個木馬為何會導(dǎo)致其他用戶掉線呢?
我們知道, 用戶訪問因特網(wǎng)的數(shù)據(jù)包必須通過多次路由才能到達目的服務(wù)器, 目的服務(wù)器返回用戶的數(shù)據(jù)包也必須通過多次路由才能回到用戶端。 數(shù)據(jù)包路由的第一步是用戶機器上填寫的默認網(wǎng)關(guān), 如果網(wǎng)關(guān)出現(xiàn)問題, 那么用戶是無法上網(wǎng)的。 默認網(wǎng)關(guān)填寫的是IP地址, 而用戶機器與網(wǎng)關(guān)通信時采用的是MAC地址, 問題就發(fā)生在這里。
我們先了解一下ARP協(xié)議。
ARP協(xié)議是“Address Resoluti
on Protocol”(地址解析協(xié)議)的縮寫, 在局域網(wǎng)中, 網(wǎng)絡(luò)中實際傳輸?shù)氖?ldquo;幀”, 幀里面有目標主機的MAC地址。 在以太網(wǎng)中, 一個主機要和另一個主機進行直接通信, 必須要知道目標主機的MAC地址。 但這個目標MAC地址是如何獲得的呢?它就是通過地址解析協(xié)議獲得的。 所謂“地址解析”就是主機在發(fā)送幀前將目標IP地址轉(zhuǎn)換成目標MAC地址的過程。 ARP協(xié)議的基本功能就是通過目標設(shè)備的IP地址, 查詢目標設(shè)備的MAC地址, 以保證通信的順利進行。
采用以太網(wǎng)方式接入上網(wǎng)的電腦里都有一個ARP緩存表(見表1), 表里的IP地址與MAC地址是一一對應(yīng)的。
表1 ARP緩存表
主機 | IP地址 | MAC地址 | 主機 |
網(wǎng)關(guān) | 192.168.16.254 | xx-xx-xx-xx-xx-xx | 網(wǎng)關(guān) |
A | 192.168.16.1 | aa-aa-aa-aa-aa-aa | A |
我們以主機A(192.168.16.1)上網(wǎng)為例。 當發(fā)送數(shù)據(jù)時, 主機A會在自己的ARP緩存表中尋找是否有網(wǎng)關(guān)的IP地址。 如果找到了, 也就知道了目標MAC地址, 直接把目標MAC地址寫入幀里面發(fā)送就可以了;如果在ARP緩存表中沒有找到相對應(yīng)的IP地址, 主機A就會在網(wǎng)絡(luò)上發(fā)送一個廣播, 目標MAC地址是“FF.FF.FF.FF.FF.FF”, 這表示向同一網(wǎng)段內(nèi)的所有主機發(fā)出這樣的詢問:“192.168.16.254的MAC地址是什么?”網(wǎng)絡(luò)上其他主機并不響應(yīng)ARP詢問, 只有網(wǎng)關(guān)接收到這個幀時, 才向主機A做出這樣的回應(yīng):“192.168.16.254的MAC地址是xx-xx-xx-xx-xx-xx”。 這樣, 主機A就知道了網(wǎng)關(guān)的MAC地址, 它就可以向網(wǎng)關(guān)發(fā)送信息了。 同時它還更新了自己的ARP緩存表, 下次再向網(wǎng)關(guān)發(fā)送信息時, 直接從ARP緩存表里查找就可以了。 ARP緩存表采用老化機制, 在一段時間內(nèi)如果表中的某一行沒有使用, 就會刪除, 這樣可以大大減少ARP緩存表的長度, 加快查詢速度。
上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識,學(xué)習(xí)了安全知識,幾乎可以讓你免費電腦中毒的煩擾。