彭接招,賴維瑋
(江西財經(jīng)大學(xué),江西 南昌 330013)
校園網(wǎng)ARP病毒防范研究與應(yīng)用
彭接招,賴維瑋
(江西財經(jīng)大學(xué),江西 南昌 330013)
對于ARP病毒防范的常見對策是針對上網(wǎng)主機進行保護,但對有上千或上萬臺主機的高校校園網(wǎng)來說,對每臺上網(wǎng)主機進行安全控制會很難實現(xiàn)。本文從網(wǎng)絡(luò)層面對ARP病毒進行分析和研究,通過對網(wǎng)絡(luò)設(shè)備進行設(shè)置實現(xiàn)ARP病毒的完全抑制,從而達(dá)到ARP病毒的防范。
PVLAN;ARP病毒抑制;以太網(wǎng)
隨著校園網(wǎng)規(guī)模的擴大和上網(wǎng)用戶的增加,校園網(wǎng)建設(shè)已經(jīng)成為高校信息化發(fā)展的重中之重。但由于校園網(wǎng)的開放、資源共享等因素,網(wǎng)絡(luò)應(yīng)用中的安全隱患也越來越凸顯。其中利用ARP協(xié)議的漏洞對校園網(wǎng)進行攻擊就是網(wǎng)絡(luò)攻擊中最常見的一種方式。ARP欺騙和ARP攻擊不僅給個別用戶的上網(wǎng)帶來麻煩,更嚴(yán)重的是影響了同一網(wǎng)段的其他用戶,同時對相應(yīng)網(wǎng)絡(luò)的接入層交換機造成影響,從而影響整個校園網(wǎng)的運行穩(wěn)定。對付ARP攻擊可以針對每臺上網(wǎng)主機進行安全保護,例如:安裝完全的系統(tǒng)補丁、安裝防火墻并合理配置、安裝防病毒軟件并及時更新、安裝惡意軟件清理軟件、安裝ARP防護軟件等。但在網(wǎng)絡(luò)規(guī)模較大的時候,確保整個網(wǎng)段的主機不受ARP攻擊是件比較困難的事情。本文根據(jù)筆者的工作經(jīng)驗提出防范ARP欺騙和ARP病毒爆發(fā)的解決方案。
根據(jù)當(dāng)前Internet使用的TCP/IP模型,如圖1所示,我們可以知道ARP協(xié)議位于IP層的底部。IP協(xié)議的一個功能是負(fù)責(zé)實現(xiàn)不同性質(zhì)的物理網(wǎng)絡(luò)互聯(lián)并屏蔽網(wǎng)絡(luò)底層的細(xì)節(jié),但當(dāng)數(shù)據(jù)到達(dá)網(wǎng)絡(luò)層以下的數(shù)據(jù)鏈路層的時候,需要通過ARP協(xié)議實現(xiàn)IP報文封裝,發(fā)送至鏈路層接收。
對于以太網(wǎng)而言,則需要ARP協(xié)議實現(xiàn)IP地址和MAC地址的轉(zhuǎn)化,數(shù)據(jù)封裝為MAC幀后通過CSMA/CD的機制進行數(shù)據(jù)在數(shù)據(jù)鏈路層的傳輸。通訊雙方的主機如果不知道對方的MAC地址,則通過發(fā)送ARP請求報文和應(yīng)答報文相互獲得對方的MAC地址,并將映射關(guān)系存入本機的ARP緩存表(緩存表記錄IP地址和MAC地址的對應(yīng)關(guān)系),以后的訪問即通過ARP緩存表完成,不需要再發(fā)送ARP廣播報文,緩存表是動態(tài)的,ARP列表到達(dá)老化時間后自動更新。ARP緩存表的更新就是通過ARP請求報文和應(yīng)答報文實現(xiàn)的。如果組網(wǎng)使用交換機,則交換機也存在一個ARP緩存表(三層交換機)或MAC地址緩存表(二層交換機)。
ARP協(xié)議沒有身份驗證機制,發(fā)送ARP請求報文的主機以廣播方式的ARP請求報文發(fā)送出去后,同一網(wǎng)段上的任何一臺其他主機在收到廣播報文后都可以發(fā)送響應(yīng)報文,而請求主機也會直接接收此應(yīng)答報文。
正常情況下,不符合請求報文需要的其他主機接收到請求報文后會直接丟棄此報文,不會應(yīng)答此報文,只有符合要求的主機才處理此報文并返回應(yīng)答報文,同時雙方進行ARP緩存表的學(xué)習(xí)或更新,雙方后續(xù)的通訊數(shù)據(jù)在數(shù)據(jù)鏈路層被封裝為MAC幀進行傳輸。但如果有欺騙主機使用監(jiān)聽程序進行ARP報文接收,并發(fā)送假應(yīng)答報文,讓請求主機學(xué)習(xí)到了假主機的MAC地址,則通訊數(shù)據(jù)會發(fā)送給欺騙主機,導(dǎo)致ARP欺騙的結(jié)果。
主機之間學(xué)習(xí)和更新ARP緩存表,正常情況下可以實現(xiàn)數(shù)據(jù)報文封裝為MAC幀在數(shù)據(jù)鏈路層發(fā)送和接收,但如果ARP緩存表被非法修改,則會導(dǎo)致發(fā)送給正確主機的數(shù)據(jù)報文發(fā)送給欺騙主機。
根據(jù)ARP欺騙的表現(xiàn)方式,可以分為三種情況:
(1)冒充網(wǎng)關(guān)欺騙受害主機。受害主機在發(fā)送ARP請求報文的時候,欺騙主機發(fā)送假應(yīng)答報文給受害主機,導(dǎo)致受害主機將欺騙主機MAC地址作為其網(wǎng)關(guān)對應(yīng)的MAC地址。此后受害主機發(fā)送的報文都會發(fā)送給欺騙主機而不是發(fā)送給網(wǎng)關(guān),欺騙主機將報文都接收和篡改后再轉(zhuǎn)發(fā)給真正的網(wǎng)關(guān)。此方式下網(wǎng)關(guān)發(fā)送給受害主機的報文直接發(fā)送給受害主機,不經(jīng)過欺騙主機。
(2)冒充受害主機欺騙網(wǎng)關(guān)。欺騙主機發(fā)送假應(yīng)答報文給網(wǎng)關(guān),導(dǎo)致網(wǎng)關(guān)更新ARP緩存表,將正確的MAC地址修改為欺騙主機MAC地址,當(dāng)網(wǎng)關(guān)有報文要發(fā)送給受害主機時,根據(jù)MAC地址查詢結(jié)果,網(wǎng)關(guān)會將報文發(fā)送給欺騙主機,欺騙主機接收和篡改報文后再轉(zhuǎn)發(fā)給受害主機。此方式下受害主機發(fā)送給網(wǎng)關(guān)的報文直接發(fā)送給網(wǎng)關(guān),不經(jīng)過欺騙主機。
(3)冒充網(wǎng)關(guān)欺騙受害主機,同時冒充受害主機欺騙網(wǎng)關(guān)。將上述兩種方法組合使用的情況下,當(dāng)ARP欺騙成功后,可以將受害主機和網(wǎng)關(guān)之間的所有通訊報文都截獲并篡改。
由上述三點可以看出,欺騙主機通過更新對方的ARP緩存表實現(xiàn)對數(shù)據(jù)報文的偵聽、接收或篡改,同時還要將接收或篡改的報文再轉(zhuǎn)發(fā)出去,否則欺騙不能成立,也就是說ARP欺騙要更新對方的ARP緩存表、接收報文和轉(zhuǎn)發(fā)報文。
ARP病毒使用ARP欺騙的原理,取得受害主機的信任后,再將病毒或木馬傳播給受害主機,ARP病毒不是特指某一種病毒,而是指所有包含有ARP欺騙功能的病毒的總稱,病毒變種很多,防護也比較困難,ARP病毒會造成網(wǎng)絡(luò)異常、主機被非法控制、傳輸數(shù)據(jù)被竊取和篡改等,在同一個網(wǎng)段內(nèi)的電腦,如果有一臺電腦有ARP病毒爆發(fā),則會影響其他上網(wǎng)主機,并通過主機非法控制和數(shù)據(jù)篡改實現(xiàn)ARP病毒的擴散感染。
高校組網(wǎng)當(dāng)前基本都使用局域網(wǎng)技術(shù)下的以太網(wǎng)方式(CSMA/CD),網(wǎng)絡(luò)設(shè)備采用二層交換機和三層交換機通過雙絞線進行接入層用戶寬帶接入互聯(lián),交換機通過光纖上行到上級網(wǎng)絡(luò)設(shè)備匯集后接入校園核心骨干網(wǎng)絡(luò)。雖然接入層交換機能夠很好地處理介質(zhì)共享(CSMA/CD)帶來的沖突問題,將沖突域控制在交換機的每個端口,但以太網(wǎng)還存在廣播域的問題,交換機的VLAN設(shè)置就是將廣播域進行劃分和控制。
校園網(wǎng)一般按照一個樓棟、一個部門進行VLAN的劃分和網(wǎng)段劃分,例如:某個樓棟劃分為一個VLAN,同時將VLAN設(shè)置一個網(wǎng)段,選擇其中一個地址作為VLAN地址,此地址也作為此網(wǎng)段的網(wǎng)關(guān)地址,此樓棟的交換機端口都配置為從屬于這個VLAN,因為端口同屬于一個VLAN,此方式下廣播報文會向所有的交換機端口轉(zhuǎn)發(fā),ARP請求報文也是一種廣播報文,ARP欺騙主機可以在此VLAN內(nèi)任何一個端口對這個VLAN內(nèi)的ARP請求報文進行接收和篡改,然后再轉(zhuǎn)發(fā)出去。這種按照樓棟、樓層或部門進行VLAN和網(wǎng)段劃分的組網(wǎng)方式存在APR欺騙和ARP病毒爆發(fā)的隱患,需要對組網(wǎng)方式重新進行設(shè)計。
PVLAN(Private VLAN)技術(shù)是一種新的VLAN機制,它把一個VLAN劃分為多個子VLAN,原來的VLAN叫做Primary VLAN,新劃分的子VLAN叫做Secondary VLAN。Primary VLAN和Secondary VLAN是通訊關(guān)系,而Secondary VLAN之間是隔離關(guān)系,也就是說數(shù)據(jù)報文只能在Primary VLAN和Secondary VLAN之間傳輸,而在Secondary VLAN之間不存在數(shù)據(jù)傳輸。Secondary VLAN通常劃分在交換機的每個普通端口上,實現(xiàn)交換機每個端口間都相互隔離,Primary VLAN劃分在級聯(lián)上行端口。這種讓交換機普通端口都相互隔離,但都可和上行級聯(lián)端口通訊的方法可以完全抑制ARP欺騙和ARP病毒爆發(fā)。
在實際使用中,將Primary VLAN劃分的交換機上行級聯(lián)端口指定為網(wǎng)關(guān)接口,將Secondary VLAN劃分的交換機端口指定為主機接入端口,通過交換機設(shè)置可以實現(xiàn)各主機只能與自己的默認(rèn)網(wǎng)關(guān)通信,主機相互之間不能通信。前面說過ARP欺騙要更新對方的ARP緩存表、接收報文和轉(zhuǎn)發(fā)報文,三個環(huán)節(jié)都為必要條件。通過PVLAN技術(shù)在交換機上的配置,首先欺騙主機不能偵聽和接收到廣播方式的ARP請求報文;其次欺騙主機發(fā)送的ARP應(yīng)答報文無論其發(fā)給誰,最終也只能發(fā)送給網(wǎng)關(guān),而不能發(fā)送給受害主機;最后因為PVLAN的隔離技術(shù)使欺騙主機不能實現(xiàn)報文的轉(zhuǎn)發(fā),即使接收和篡改了報文也不能發(fā)送給受害主機。無論網(wǎng)絡(luò)上是否有主機故意或無意地實施ARP欺騙或爆發(fā)ARP病毒,它都不會影響到其他上網(wǎng)主機,也就是說通過PVLAN技術(shù)雖然不能主動消除ARP欺騙和ARP病毒爆發(fā),但可以阻止ARP欺騙和ARP病毒爆發(fā)的擴散,可以將其對網(wǎng)絡(luò)的危害降到最低。
不支持PVLAN功能的交換機不能從配置方面進行ARP病毒的完全抑制,但可以通過將IP和MAC地址在交換機端口靜態(tài)綁定并關(guān)閉ARP動態(tài)學(xué)習(xí)功能的方法實現(xiàn)ARP病毒防范;使用HUB組網(wǎng)的方式需要對網(wǎng)內(nèi)每臺上網(wǎng)主機做好系統(tǒng)安全工作和安全監(jiān)控,但上述兩種方法只能應(yīng)用在網(wǎng)絡(luò)主機數(shù)量少的情況下,對于存在大量主機的網(wǎng)絡(luò)是不適用的。
華為和思科都支持PVLAN技術(shù),這里以華為二層交換機為例,如圖2所示,配置PVLAN機型為S3026T,帶千兆上行級聯(lián)端口G2/1,Primary VLAN為VLAN1000,對接上行的網(wǎng)關(guān)設(shè)備,Secondary VLAN為VLAN11、VLAN12和 VLAN13, 分別接入 PC1、PC2、PC3,3臺 PC連接的交換機端口分別屬于3個不同的VLAN,3臺PC中任何一臺發(fā)生ARP欺騙或ARP病毒爆發(fā)都不會影響和擴散到其他PC。
PVLAN不僅可以阻止ARP欺騙和ARP病毒的爆發(fā),同時也可以解決VLAN數(shù)量不夠用的問題,每個交換機都可以自行劃分Secondary VLAN,不同交換機之間的相同或不同Secondary VLAN都不會相互影響,因此PVLAN可以大規(guī)模地在交換機上配置而不必?fù)?dān)心VLAN數(shù)量不夠的情況發(fā)生。
PVLAN技術(shù)已經(jīng)在江西財經(jīng)大學(xué)青山園校區(qū)交換機上設(shè)置并投入實際使用,使用結(jié)果符合要求,沒有發(fā)生ARP病毒爆發(fā)導(dǎo)致校園網(wǎng)中斷,校園網(wǎng)運行穩(wěn)定,校園網(wǎng)用戶存在的上網(wǎng)問題中也沒有因為他人主機ARP病毒爆發(fā)和擴散導(dǎo)致不能上網(wǎng)等現(xiàn)象的發(fā)生。
PVLAN有待解決的其他問題如下:
(1)由于PVLAN的隔離技術(shù)導(dǎo)致同一網(wǎng)段內(nèi)部的主機間不能直接相互訪問 (不同網(wǎng)段的主機互訪不受影響),需要將數(shù)據(jù)提交到網(wǎng)絡(luò)層以上,例如通過QQ就可以在應(yīng)用層相互訪問,如何不通過上層網(wǎng)絡(luò)就實現(xiàn)同一網(wǎng)段內(nèi)部的主機相互訪問也是需要探討的問題;
(2)網(wǎng)關(guān)對ARP病毒爆發(fā)的承受壓力問題;
(3)IP 盜用,MAC 盜用等問題;
(4)校園網(wǎng)接入層的其他問題等。
這些在網(wǎng)絡(luò)接入層的問題需要結(jié)合認(rèn)證系統(tǒng)、網(wǎng)絡(luò)安全設(shè)備和其他網(wǎng)絡(luò)設(shè)備共同解決,同時也有待和其他高校共同交流探討。PVLAN技術(shù)雖然可以解決ARP欺騙和ARP病毒爆發(fā)和擴散的問題,但還需要加強主機安全保護、加強上網(wǎng)用戶系統(tǒng)安全和網(wǎng)絡(luò)安全意識才能達(dá)到最好的防范和防護效果。
[1]巴恩斯.Cisco局域網(wǎng)交換基礎(chǔ)[M].北京:人民郵電出版社,2005.9.
[2]胡道元.計算機局域網(wǎng)[M].北京:清華大學(xué)出版社,2002.3.
[3]構(gòu)建企業(yè)級交換網(wǎng)絡(luò)[M].華為3COM技術(shù)有限公司,2004.7.
[4]周華等.運用ARP欺騙進行網(wǎng)絡(luò)安全管理[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2005(3).
TP309.5
B
1673-8454(2010)03-0019-03
(編輯:楊馥紅)