任儉
【摘要】 ARP攻擊是一種很專業化的網絡攻擊手段,可以造成網絡的堵塞甚至崩潰,對局域網的安全造成了很大的威脅。本文通過作者經歷的一起ARP攻擊導致網絡故障的處理,分析了ARP攻擊原理,并提出了細分VLAN+端口設置+病毒防范的解決方案。
【關鍵詞】局域網 ARP攻擊 網絡故障 網絡安全
一、引言
近幾年來各種各樣的病毒層出不窮,特別是針對局域網的ARP病毒攻擊,具有隱蔽性、隨機性、突然性,在互聯網上能下載到APR欺騙工具,可對網絡進行拒絕服務攻擊(DoS)、MAC偽裝或中間人攻擊,造成網絡中斷或數據被截取或篡改,對網絡造成了嚴重威脅。
二、ARP攻擊故障經歷
作者身處一家三級乙等醫院網絡中心,醫院的業務網絡(內網)約為1000臺客戶端的規模,包括HIS、LIS、RIS、PACS等系統,擔負著每天掛號、預約、收費、就診、檢驗、檢查、發藥、入院、護理、醫囑、病史、出院等等幾乎涉及全院醫療業務的計算機網絡應用,所以醫院的網絡是一刻也不能中斷的,網絡安全是重中之重。在ARP攻擊導致網絡故障后,組織力量排除故障,并做好了后期防范工作。
2.1 故障現象
突然性的大面積故障,只有少量電腦可以工作
內網電腦程序異常緩慢或不響應
發生故障的為醫院內網的電腦,其他如外網(internet)、政務網等則正常
2.2 故障排查
根據故障現象,組織對故障的排查工作。
主交換機檢查:cisc06509物理特性包括電源、光端口模塊指示燈全部正常;用筆記本聯入主交換機console接口,發現登錄異常緩慢;
數據庫檢查:在主服務器上打開SQL Server,運行SQL命令:sp_wh02 active,查詢是否有進程堵住了其它任務而導致程序緩慢或沒有響應,發現正常,排除數據庫的問題;
根據上述情況,結合進一步掌握的故障現象:聯在同一接入交換機上的PC并不是所有的都不能使用、能使用的程序反應異常緩慢、網絡時斷時續等,初步懷疑ARP攻擊。
所謂ARP,是“Address Resolution Protocol”的英文縮寫,意為地址解析協議,是一種將網絡層32位的lP地址解析成數據鏈路層48位的MAC硬件地址的TCP/IP協議。局域網內的每臺主機都有一個高速緩存區,用以存放IP地址和MAC地址的對應關系,稱之為ARP列表。主機之間通信時,會互相發送與接收包含IP和MAC的ARP包,以確定對方的MAC地址并以此更新自己的ARP列表,然后雙方根據MAC地址開始通信。ARP協議是建立在網絡內各節點互相信任的基礎上的,雖然高效卻并不安全。一些黑客利用這個漏洞制造出病毒:用偽造的MAC地址發送給其他主機,致使該主機形成錯誤的lP與MAC地址對應關系,數據就傳不到正確的地方;ARP協議允許用戶在網絡里大量發送ARP數據包,可以令網絡中充斥著大量數據,占用帶寬,降低網絡速度及性能,直至崩潰無法正常工作。根據故障現象及ARP攻擊的特點,排查工作往ARP攻擊方面考慮。
現場排查:在故障PC上打開命令提示符,利用ping工具ping服務器的IP地址,發現ping不通,再ping網關IP,發現也pmg不通,而核心交換機并沒有任何策略阻止ICMP報文;在可用PC上plng網關,發現ping值多在lOOOms以上,并且丟包嚴重;比較故障與可用PC的查詢ARP表的命令arp-a返回結果,發現兩者的網關物理地址不一樣,故障PC的ARP列表內并非是核心交換機的MAC地址,而是被篡改成了某個其他的MAC地址。由此可判斷,由于故障PC的ARP列表內學習到了錯誤的MAC地址,因此在做地址解析的時候重定向到錯誤的網關地址,從而導致無法訪問到正確的網關,最終無法訪問到服務器。
2.3 故障排除
運用排除法,用SQL命令確定數據庫正常,縮小故障范圍為網絡問題,進而利用相關網絡命令確定了故障原因——ARP攻擊,進一步查看ARP表找出攻擊源MAC,如何來確定攻擊源位置從而排除故障呢?如果能在主交換機上查到故障源來自哪個端口,再根據端口查到接入交換機,確定到故障源聯接在該交換機上的端口,把該端口shutdown就解決問題了。在常規狀態下可使用show mac-address-table dynamiCadd命令在cisco6509上查該MAC的來源端口,但目前主交換機速度異常緩慢,命令幾乎不可用,顯然該方法行不通;查看平時所維護的內網設備信息表,科室、設備名、IP等都有,但未記錄MAC地址,故不能第一時間根據MAC查到故障源。
在應急情況下,根據中心機房到各弱電間的光纖部署,采取逐一斷主交換機上光纖鏈路的方法來判斷故障源的大致位置。在斷開門診四樓弱電間時,網絡恢復正常。經查,該區域是體檢中心,聯入十幾臺內網電腦。暫時不把該光纖接上去,讓全院其他科室先恢復工作,而體檢中心的電腦全部格式化重裝系統后,再接入網絡。
三、原因分析及防范措施
3.1 原因分析
直接原因:ARP病毒攻擊,被攻擊終端電腦的ARP列表中的網關地址被篡改,造成終端不能訪問服務器;帶毒終端持續不斷地發出大量ARP報文,占據了交換機背板帶寬,導致交換機性能下降,網絡速度緩慢;
為何造成大面積故障?當時我院的網絡結構尚未完善,所有終端電腦、網絡打印機、服務器等設備全部位于同一個網段,當發生ARP攻擊時,影響了整個網絡;
為何會有ARP病毒?有些科室需要從內網導出數據并通過外網上報,如體檢中心、檢驗科、肺科等,不可避免地在內外網電腦之間使用U盤等存儲介質;另外,可能存在個別不自覺的員工在內網電腦上使用U盤甚至USB無線上網設備。
3.2 實施解決方案
在明確了原因以后,對醫院網絡進行整改。
首先對幾種方案進行了考查和衡量:①靜態綁定IP和MAC。ARP攻擊的方式是改變主機動態的ARP緩存表。針對這種情況,可以手動設置靜態的ARP表:在windows的命令提示符窗口輸入命令arp-s網關IP網關MAC即可,但該綁定重啟系統就會丟失,且需對每臺主機進行設置,不適用我們主機數量龐大的網絡;②交換機綁定。在局域網核心交換機上綁定主機的lP和MAC,同時將主機的MAC跟接入交換機的端口綁定,這種方法對付ARP欺騙效果較好。但在實際工作中,同樣工作量大,且缺乏靈活性,如要增加新主機,或移動主機,必須重新設置,故不予采用;③ARP服務器。在局域網內專門配備一臺服務器,管理所有主機的IP和MAC映射列表。服務器通過查詢此列表來響應來自網絡上的ARP請求,并且網絡內主機只允許接收該服務器的響應。缺點是這臺服務器不能出問題,否則整個網絡就癱瘓了。風險較高,不能采用。
根據我們網絡用戶數量龐大、安全性要求高的實際情況,最終采取的防御措施是:
劃分VLAN。
對網絡進行合理劃分,分成一個個小的廣播域,這樣,即使發生ARP攻擊,也只局限于當前區域,而不至于造成大面積的網絡故障,并且能快速查找故障源排除故障。根據樓層、科室、病區等的區別劃分不同的VLAN,即門診樓每層分開、每個病區分開、急診單獨分開、行政區單獨分開,像放射科、檢驗科等有醫療設備聯人內網比較特殊,分別給予單獨的VLAN。VLAN的劃分起到了如下作用:
①提高了網絡安全性。一個VLAN內部的廣播和單播流量均不會發送到其它VLAN中,這樣利于減少網絡設備資源消耗、控制信息流量、方便網絡管理;有效控制廣播風暴。所謂廣播風暴,簡單的講,在廣播數據充斥網絡無法得到處理,其存在占用了大量網絡帶寬,導致正常業務不能運行,甚至會導致網絡癱瘓。由于不同的VLAN有著各自獨立的廣播域,而廣播只能在本地VLAN內進行,從而大大減少了廣播對網絡帶寬的占用,提高了帶寬傳輸效率,并可以有效地避免廣播風暴的產生。
②提高了管理效率。由于VLAN的虛擬性,增加、刪除、移動用戶就變得更加簡便快捷。用戶可以隨時隨地通過VLAN在網絡上進行操作。利用VLAN技術將醫院的科室、病區等按不同地理位置或屬性劃分為一個個邏輯網段,在不改動網絡物理連接的情況下即可將工作站在工作組或子網之間移動。
交換機端口報文抑制及綁定網關
設置接入交換機端口允許通過的最大廣播報文流量、在交換機端口視圖下,輸人命令:hroadcast-suppression pps50,設置每秒鐘廣播報文上限為50個,當接口上的廣播流量超過設定值,系統將丟棄超出廣播流量限制的報文,從而使接口廣播流量降低到限定的范圍,保證網絡業務的正常運行。該設定值可根據實際情況作調整。
綁定相對應vlan的網關。在端口視圖下輸入命令:arp filter source本VLAN網關地址,即在該端口上綁定r本VLAN網關,如有偽造網關的ARP報文經過,將被丟棄.。
病毒防范
網絡版殺毒軟件升級到最新版,并設置定時查殺毒;
拔除工作站的光驅、軟驅等,USB口通過管理軟件禁止U盤等存儲介質接入,只允許鍵盤鼠標、打印機、刷卡器等設備接入;如確實工作需要,給予管理軟件允許接入的專用U盤,由專人負責數據的導出上報,同時上報的外網電腦安裝殺毒軟件;
取消某些服務器共享文件夾的允許網絡用戶更改功能,如要更新數據只允許到機房實地操作或通過遠程桌面等方式;
其他
文檔資料的完善。在此次網絡故障中,因為文檔中缺少某些信息,當需要準確定位時,無法及時有效地抓住主要因素,從而延遲了排除故障的時間,導致處理問題效率低下。
重新整理的文檔內容包括資產編碼、科室、lP地址、MAC地址、信息點位號、交換機端口號等等,當有故障發生時,可以根據文檔迅速地找到故障源,快速解決問題。在日常工作中,也可以方便地對網絡及電腦進行管理。
四、結束語
本文通過對ARP攻擊的經歷及研究,提出了適用于醫院防范ARP攻擊的解決方案,加以實施后至今未發生過類似故障。實踐證明,該方案能有效防止ARP病毒攻擊。在實際工作中,除技術手段外,還需要管理手段,如培訓操作人員的安全意識、利用管理制度等來保證信息安全。