彭接招,賴維瑋
(江西財經大學,江西 南昌 330013)
校園網ARP病毒防范研究與應用
彭接招,賴維瑋
(江西財經大學,江西 南昌 330013)
對于ARP病毒防范的常見對策是針對上網主機進行保護,但對有上千或上萬臺主機的高校校園網來說,對每臺上網主機進行安全控制會很難實現。本文從網絡層面對ARP病毒進行分析和研究,通過對網絡設備進行設置實現ARP病毒的完全抑制,從而達到ARP病毒的防范。
PVLAN;ARP病毒抑制;以太網
隨著校園網規模的擴大和上網用戶的增加,校園網建設已經成為高校信息化發展的重中之重。但由于校園網的開放、資源共享等因素,網絡應用中的安全隱患也越來越凸顯。其中利用ARP協議的漏洞對校園網進行攻擊就是網絡攻擊中最常見的一種方式。ARP欺騙和ARP攻擊不僅給個別用戶的上網帶來麻煩,更嚴重的是影響了同一網段的其他用戶,同時對相應網絡的接入層交換機造成影響,從而影響整個校園網的運行穩定。對付ARP攻擊可以針對每臺上網主機進行安全保護,例如:安裝完全的系統補丁、安裝防火墻并合理配置、安裝防病毒軟件并及時更新、安裝惡意軟件清理軟件、安裝ARP防護軟件等。但在網絡規模較大的時候,確保整個網段的主機不受ARP攻擊是件比較困難的事情。本文根據筆者的工作經驗提出防范ARP欺騙和ARP病毒爆發的解決方案。
根據當前Internet使用的TCP/IP模型,如圖1所示,我們可以知道ARP協議位于IP層的底部。IP協議的一個功能是負責實現不同性質的物理網絡互聯并屏蔽網絡底層的細節,但當數據到達網絡層以下的數據鏈路層的時候,需要通過ARP協議實現IP報文封裝,發送至鏈路層接收。

對于以太網而言,則需要ARP協議實現IP地址和MAC地址的轉化,數據封裝為MAC幀后通過CSMA/CD的機制進行數據在數據鏈路層的傳輸。通訊雙方的主機如果不知道對方的MAC地址,則通過發送ARP請求報文和應答報文相互獲得對方的MAC地址,并將映射關系存入本機的ARP緩存表(緩存表記錄IP地址和MAC地址的對應關系),以后的訪問即通過ARP緩存表完成,不需要再發送ARP廣播報文,緩存表是動態的,ARP列表到達老化時間后自動更新。ARP緩存表的更新就是通過ARP請求報文和應答報文實現的。如果組網使用交換機,則交換機也存在一個ARP緩存表(三層交換機)或MAC地址緩存表(二層交換機)。
ARP協議沒有身份驗證機制,發送ARP請求報文的主機以廣播方式的ARP請求報文發送出去后,同一網段上的任何一臺其他主機在收到廣播報文后都可以發送響應報文,而請求主機也會直接接收此應答報文。
正常情況下,不符合請求報文需要的其他主機接收到請求報文后會直接丟棄此報文,不會應答此報文,只有符合要求的主機才處理此報文并返回應答報文,同時雙方進行ARP緩存表的學習或更新,雙方后續的通訊數據在數據鏈路層被封裝為MAC幀進行傳輸。但如果有欺騙主機使用監聽程序進行ARP報文接收,并發送假應答報文,讓請求主機學習到了假主機的MAC地址,則通訊數據會發送給欺騙主機,導致ARP欺騙的結果。
主機之間學習和更新ARP緩存表,正常情況下可以實現數據報文封裝為MAC幀在數據鏈路層發送和接收,但如果ARP緩存表被非法修改,則會導致發送給正確主機的數據報文發送給欺騙主機。
根據ARP欺騙的表現方式,可以分為三種情況:
(1)冒充網關欺騙受害主機。受害主機在發送ARP請求報文的時候,欺騙主機發送假應答報文給受害主機,導致受害主機將欺騙主機MAC地址作為其網關對應的MAC地址。此后受害主機發送的報文都會發送給欺騙主機而不是發送給網關,欺騙主機將報文都接收和篡改后再轉發給真正的網關。此方式下網關發送給受害主機的報文直接發送給受害主機,不經過欺騙主機。
(2)冒充受害主機欺騙網關。欺騙主機發送假應答報文給網關,導致網關更新ARP緩存表,將正確的MAC地址修改為欺騙主機MAC地址,當網關有報文要發送給受害主機時,根據MAC地址查詢結果,網關會將報文發送給欺騙主機,欺騙主機接收和篡改報文后再轉發給受害主機。此方式下受害主機發送給網關的報文直接發送給網關,不經過欺騙主機。
(3)冒充網關欺騙受害主機,同時冒充受害主機欺騙網關。將上述兩種方法組合使用的情況下,當ARP欺騙成功后,可以將受害主機和網關之間的所有通訊報文都截獲并篡改。
由上述三點可以看出,欺騙主機通過更新對方的ARP緩存表實現對數據報文的偵聽、接收或篡改,同時還要將接收或篡改的報文再轉發出去,否則欺騙不能成立,也就是說ARP欺騙要更新對方的ARP緩存表、接收報文和轉發報文。
ARP病毒使用ARP欺騙的原理,取得受害主機的信任后,再將病毒或木馬傳播給受害主機,ARP病毒不是特指某一種病毒,而是指所有包含有ARP欺騙功能的病毒的總稱,病毒變種很多,防護也比較困難,ARP病毒會造成網絡異常、主機被非法控制、傳輸數據被竊取和篡改等,在同一個網段內的電腦,如果有一臺電腦有ARP病毒爆發,則會影響其他上網主機,并通過主機非法控制和數據篡改實現ARP病毒的擴散感染。
高校組網當前基本都使用局域網技術下的以太網方式(CSMA/CD),網絡設備采用二層交換機和三層交換機通過雙絞線進行接入層用戶寬帶接入互聯,交換機通過光纖上行到上級網絡設備匯集后接入校園核心骨干網絡。雖然接入層交換機能夠很好地處理介質共享(CSMA/CD)帶來的沖突問題,將沖突域控制在交換機的每個端口,但以太網還存在廣播域的問題,交換機的VLAN設置就是將廣播域進行劃分和控制。
校園網一般按照一個樓棟、一個部門進行VLAN的劃分和網段劃分,例如:某個樓棟劃分為一個VLAN,同時將VLAN設置一個網段,選擇其中一個地址作為VLAN地址,此地址也作為此網段的網關地址,此樓棟的交換機端口都配置為從屬于這個VLAN,因為端口同屬于一個VLAN,此方式下廣播報文會向所有的交換機端口轉發,ARP請求報文也是一種廣播報文,ARP欺騙主機可以在此VLAN內任何一個端口對這個VLAN內的ARP請求報文進行接收和篡改,然后再轉發出去。這種按照樓棟、樓層或部門進行VLAN和網段劃分的組網方式存在APR欺騙和ARP病毒爆發的隱患,需要對組網方式重新進行設計。
PVLAN(Private VLAN)技術是一種新的VLAN機制,它把一個VLAN劃分為多個子VLAN,原來的VLAN叫做Primary VLAN,新劃分的子VLAN叫做Secondary VLAN。Primary VLAN和Secondary VLAN是通訊關系,而Secondary VLAN之間是隔離關系,也就是說數據報文只能在Primary VLAN和Secondary VLAN之間傳輸,而在Secondary VLAN之間不存在數據傳輸。Secondary VLAN通常劃分在交換機的每個普通端口上,實現交換機每個端口間都相互隔離,Primary VLAN劃分在級聯上行端口。這種讓交換機普通端口都相互隔離,但都可和上行級聯端口通訊的方法可以完全抑制ARP欺騙和ARP病毒爆發。
在實際使用中,將Primary VLAN劃分的交換機上行級聯端口指定為網關接口,將Secondary VLAN劃分的交換機端口指定為主機接入端口,通過交換機設置可以實現各主機只能與自己的默認網關通信,主機相互之間不能通信。前面說過ARP欺騙要更新對方的ARP緩存表、接收報文和轉發報文,三個環節都為必要條件。通過PVLAN技術在交換機上的配置,首先欺騙主機不能偵聽和接收到廣播方式的ARP請求報文;其次欺騙主機發送的ARP應答報文無論其發給誰,最終也只能發送給網關,而不能發送給受害主機;最后因為PVLAN的隔離技術使欺騙主機不能實現報文的轉發,即使接收和篡改了報文也不能發送給受害主機。無論網絡上是否有主機故意或無意地實施ARP欺騙或爆發ARP病毒,它都不會影響到其他上網主機,也就是說通過PVLAN技術雖然不能主動消除ARP欺騙和ARP病毒爆發,但可以阻止ARP欺騙和ARP病毒爆發的擴散,可以將其對網絡的危害降到最低。
不支持PVLAN功能的交換機不能從配置方面進行ARP病毒的完全抑制,但可以通過將IP和MAC地址在交換機端口靜態綁定并關閉ARP動態學習功能的方法實現ARP病毒防范;使用HUB組網的方式需要對網內每臺上網主機做好系統安全工作和安全監控,但上述兩種方法只能應用在網絡主機數量少的情況下,對于存在大量主機的網絡是不適用的。
華為和思科都支持PVLAN技術,這里以華為二層交換機為例,如圖2所示,配置PVLAN機型為S3026T,帶千兆上行級聯端口G2/1,Primary VLAN為VLAN1000,對接上行的網關設備,Secondary VLAN為VLAN11、VLAN12和 VLAN13, 分別接入 PC1、PC2、PC3,3臺 PC連接的交換機端口分別屬于3個不同的VLAN,3臺PC中任何一臺發生ARP欺騙或ARP病毒爆發都不會影響和擴散到其他PC。



PVLAN不僅可以阻止ARP欺騙和ARP病毒的爆發,同時也可以解決VLAN數量不夠用的問題,每個交換機都可以自行劃分Secondary VLAN,不同交換機之間的相同或不同Secondary VLAN都不會相互影響,因此PVLAN可以大規模地在交換機上配置而不必擔心VLAN數量不夠的情況發生。
PVLAN技術已經在江西財經大學青山園校區交換機上設置并投入實際使用,使用結果符合要求,沒有發生ARP病毒爆發導致校園網中斷,校園網運行穩定,校園網用戶存在的上網問題中也沒有因為他人主機ARP病毒爆發和擴散導致不能上網等現象的發生。
PVLAN有待解決的其他問題如下:
(1)由于PVLAN的隔離技術導致同一網段內部的主機間不能直接相互訪問 (不同網段的主機互訪不受影響),需要將數據提交到網絡層以上,例如通過QQ就可以在應用層相互訪問,如何不通過上層網絡就實現同一網段內部的主機相互訪問也是需要探討的問題;
(2)網關對ARP病毒爆發的承受壓力問題;
(3)IP 盜用,MAC 盜用等問題;
(4)校園網接入層的其他問題等。
這些在網絡接入層的問題需要結合認證系統、網絡安全設備和其他網絡設備共同解決,同時也有待和其他高校共同交流探討。PVLAN技術雖然可以解決ARP欺騙和ARP病毒爆發和擴散的問題,但還需要加強主機安全保護、加強上網用戶系統安全和網絡安全意識才能達到最好的防范和防護效果。
[1]巴恩斯.Cisco局域網交換基礎[M].北京:人民郵電出版社,2005.9.
[2]胡道元.計算機局域網[M].北京:清華大學出版社,2002.3.
[3]構建企業級交換網絡[M].華為3COM技術有限公司,2004.7.
[4]周華等.運用ARP欺騙進行網絡安全管理[J].網絡安全技術與應用,2005(3).
TP309.5
B
1673-8454(2010)03-0019-03
(編輯:楊馥紅)