嵌入式網(wǎng)絡(luò)地址監(jiān)控系統(tǒng)研究與設(shè)計(jì)
很多中小型企業(yè)在網(wǎng)絡(luò)安全方面的投入很少,通常僅依靠帶簡(jiǎn)單防火墻功能的寬帶路由器設(shè)備,這雖然能夠防止外部黑客的入侵,但對(duì)處在防火墻內(nèi)部的員工或訪客造成的安全問題沒有任何作用。由于安全意識(shí)的缺失,在網(wǎng)絡(luò)布線工程完成之后,就很少投入人力物力,很少配備專職的網(wǎng)絡(luò)管理員,因此很容易出現(xiàn)各式各樣的網(wǎng)絡(luò)安全事件。最常見的問題是網(wǎng)絡(luò)IP地址盜用問題。
本文引用地址:http://butianyuan.cn/article/201706/348372.htm本文給出一種利用SoPC(System-on-a-Programmable-Chip)技術(shù)實(shí)現(xiàn)的、面向中小網(wǎng)絡(luò)、低價(jià)位、可靠的嵌入式IP地址防盜監(jiān)控方案。從管理學(xué)層面對(duì)網(wǎng)內(nèi)IP地址的管理進(jìn)行探討;在技術(shù)層面研究網(wǎng)絡(luò)協(xié)議,分析發(fā)生原理,找出IP地址盜用問題的原因和表現(xiàn)形式,從而找出根治辦法,在實(shí)現(xiàn)層面對(duì)開放源代碼的嵌入式操作系統(tǒng)進(jìn)行深入分析和裁剪,利用嵌入式系統(tǒng)開發(fā)技術(shù),實(shí)現(xiàn)基于嵌入式硬件的網(wǎng)絡(luò)監(jiān)控,能顯著降低企業(yè)中兼職網(wǎng)管的工作量,確保網(wǎng)絡(luò)正常使用。
1 地址防盜機(jī)理
1.1 地址盜用分析
經(jīng)過對(duì)企業(yè)網(wǎng)絡(luò)跟蹤監(jiān)控發(fā)現(xiàn),地址盜用的用戶,除Legitimate(合法的)用戶以外,還有3種類型的惡意用戶:Masquerader(偽裝者)、Misfeasor(違法者)和Clandestined User(秘密活動(dòng)者)[1]。
(1) Masquerader:此類人可能是為了逃避網(wǎng)絡(luò)計(jì)費(fèi),事先收集到別的用戶地址,用IP地址盜用的辦法,將網(wǎng)絡(luò)流量計(jì)費(fèi)轉(zhuǎn)嫁到他人身上。
(2) Misfeasor:此類人一般是合法用戶,由于重裝系統(tǒng)等因素重新設(shè)定IP地址,但是輸入錯(cuò)誤或是忘記自己的合法地址而胡亂設(shè)置。近兩年ARP類病毒或木馬也造成類似的網(wǎng)絡(luò)故障。
(3) Clandestined User:此類人可能是無上網(wǎng)權(quán)限的人或外來人員,為了某種目的,隱藏自己的身份或企圖冒充合法用戶身份來逃避追蹤。
1.2 對(duì)策分析
為了解決這些問題,大型網(wǎng)絡(luò)一般采用可網(wǎng)管型交換機(jī)進(jìn)行地址綁定,更好的方式是用認(rèn)證計(jì)費(fèi)系統(tǒng),但硬件改造投資比較大,不適合小規(guī)模網(wǎng)絡(luò)。中小型企業(yè)網(wǎng)中更多的是依靠兼職網(wǎng)管人工操作,工作量非常大。故采用嵌入式技術(shù)開發(fā)廉價(jià)的網(wǎng)絡(luò)地址監(jiān)控系統(tǒng),以實(shí)現(xiàn)實(shí)時(shí)監(jiān)控和自動(dòng)化響應(yīng)與處理。
對(duì)網(wǎng)絡(luò)進(jìn)行全天候監(jiān)控,將網(wǎng)絡(luò)上所有ARP廣播信息截獲,提取信息生成IP-MAC二元組對(duì)照表。對(duì)當(dāng)前網(wǎng)段所有未用IP地址也生成特殊的IP-MAC二元組,即MAC字段設(shè)為000000000001這種非法的值。該表經(jīng)由網(wǎng)管員確認(rèn)后,作為合法用戶表。如果網(wǎng)管員無暇處理時(shí),自動(dòng)對(duì)某一時(shí)間段的數(shù)據(jù)利用概率統(tǒng)計(jì)算法生成該表。
對(duì)于Masquerader和Misfeasor:對(duì)照合法用戶列表,只需發(fā)現(xiàn)ARP廣播包中IP-MAC二元組不相符合,就表明有盜用的嫌疑。如果此用戶是Legitimate,會(huì)自行重復(fù)修改IP地址,不斷試驗(yàn),此時(shí)發(fā)送一個(gè)ARP-Relay包,告知該IP已經(jīng)使用,則對(duì)方的PC機(jī)會(huì)提示“IP地址重復(fù)”并自動(dòng)禁用網(wǎng)卡的TCP/IP棧。系統(tǒng)自動(dòng)記錄盜用次數(shù),如果發(fā)現(xiàn)超過設(shè)定次數(shù),最終封閉MAC地址,并產(chǎn)生Alert消息,由網(wǎng)管員通過行政手段處理。ARP類病毒或木馬,一種是盜用網(wǎng)關(guān)設(shè)備的地址,攔截用戶發(fā)送的數(shù)據(jù);一種是盜用用戶的IP從中截獲數(shù)據(jù)。還有些蠕蟲病毒為了加快傳播,會(huì)發(fā)送虛假的IP數(shù)據(jù)包,處理方法同上。
對(duì)于Clandestined User:通常先利用可上網(wǎng)的電腦來探測(cè)網(wǎng)絡(luò),找出合法IP及對(duì)應(yīng)的MAC地址,通過修改網(wǎng)卡的Flash芯片或者修改注冊(cè)表,獲得合法地址,繼而進(jìn)行秘密活動(dòng)。這是最復(fù)雜的情況,即使合法用戶和盜用者同時(shí)開機(jī),也不會(huì)出現(xiàn)IP沖突的提示。但對(duì)于可網(wǎng)管型的交換機(jī)內(nèi)部維護(hù)的FDB(Forwarding Database)地址表中,相應(yīng)的MAC地址對(duì)應(yīng)的端口就會(huì)經(jīng)常變化,據(jù)此就能予以辨別,隨后詳細(xì)記錄日志,并發(fā)送警報(bào)信息通知管理員處理。這樣就需要監(jiān)控器能讀取FDB表,才能得知是否有相同的MAC從不同端口進(jìn)入,進(jìn)而關(guān)閉該端口,隔離破壞者。
1.3 封鎖方法
為了封鎖用戶上網(wǎng),一般需要可網(wǎng)管交換機(jī)的配合。一般中小企業(yè)的核心交換機(jī)通常都是可網(wǎng)管型的,但是配置交換機(jī)需要專業(yè)人士,本設(shè)備可以實(shí)現(xiàn)自動(dòng)配置,降低了對(duì)網(wǎng)管的技術(shù)要求。與交換機(jī)交互設(shè)置的常見方案為采用SNMP協(xié)議,但由于編程復(fù)雜,且很多交換機(jī)廠商并沒有嚴(yán)格遵循SNMP協(xié)議,故很難實(shí)現(xiàn)。本設(shè)備采用另外一種方法,就是模擬管理員手工配置交換機(jī)的過程,先利用Telnet協(xié)議登錄交換機(jī),輸入用戶名和密碼,再輸入超級(jí)管理員密碼,發(fā)送配置指令。例如要禁止MAC地址為000c.2927.fe4d的計(jì)算機(jī),在港灣的交換機(jī)上輸入命令:
C:telnet xxx.xxx.xxxx.xxx(核心交換機(jī)IP)
Login:admin 輸入用戶名和密碼
Password:
Harbour>en 進(jìn)入特權(quán)模式,輸入超極管理員密碼
2 系統(tǒng)功能設(shè)計(jì)
2.1 功能
(1) IP沖突檢測(cè)與處理:判斷IP的合法性,再對(duì)檢測(cè)出的非法IP依據(jù)既定的處理方式進(jìn)行處理,從而有效防止局域網(wǎng)內(nèi)的IP沖突和盜用。
(2) 計(jì)算機(jī)聯(lián)網(wǎng)信息統(tǒng)計(jì):適時(shí)分析網(wǎng)內(nèi)計(jì)算機(jī)的活動(dòng)狀況,把在線狀態(tài)、活動(dòng)時(shí)間等作為日志信息保存。為網(wǎng)絡(luò)管理員提供材料作為IP地址管理與分析的依據(jù)。
(3) 服務(wù)器通信:系統(tǒng)設(shè)置了NTP和FTP兩個(gè)服務(wù)器。NTP時(shí)間服務(wù)器部署在局域網(wǎng)內(nèi),做為本系統(tǒng)時(shí)間同步的時(shí)鐘源;FTP服務(wù)器用于保存系統(tǒng)日志文件,并存有系統(tǒng)使用的配置文件信息以及合法IP-MAC地址信息。
(4) 時(shí)間同步:時(shí)間同步是從局域網(wǎng)內(nèi)的NTP時(shí)間服務(wù)器獲取當(dāng)前標(biāo)準(zhǔn)時(shí)間,從而可以為本系統(tǒng)提供時(shí)間校準(zhǔn)與維護(hù)。
硬件實(shí)現(xiàn)的基本功能如表1所示,軟件實(shí)現(xiàn)的基本功能如表2所示。
2.2 開發(fā)平臺(tái)
本開發(fā)平臺(tái)可選用SoPC技術(shù)[2]、單片機(jī)(MCU)和ARM嵌入式系統(tǒng)。由于單片機(jī)對(duì)TCP/IP協(xié)議棧支持很差,而ARM雖處理能力強(qiáng),但有些大材小用,因此最終采用SoPC技術(shù)實(shí)現(xiàn)。在Altera DE2上進(jìn)行原型設(shè)計(jì)與開發(fā)測(cè)試,最終使用HardCopy系列器件實(shí)現(xiàn)產(chǎn)品化。
2.3 系統(tǒng)使用方法
根據(jù)TCP/IP棧中ARP協(xié)議原理,計(jì)算機(jī)在開始通信前都會(huì)發(fā)出廣播包,告知本機(jī)使用的IP地址信息,并獲取網(wǎng)管及各個(gè)服務(wù)器的IP-MAC信息。因此與其他網(wǎng)絡(luò)監(jiān)控或入侵檢測(cè)系統(tǒng)不同,所安裝的網(wǎng)絡(luò)無需改造,也不用增加TAP(網(wǎng)絡(luò)分接器)或集線器等設(shè)備,接到核心交換機(jī)的任意端口即可。
3 硬件系統(tǒng)設(shè)計(jì)
本系統(tǒng)以嵌入式處理器NiosII[4]為核心,設(shè)計(jì)了顯示系統(tǒng)、存儲(chǔ)系統(tǒng)、鍵盤控制系統(tǒng)、網(wǎng)絡(luò)數(shù)據(jù)接口。系統(tǒng)框圖如圖1所示。
為了完成監(jiān)視和控制功能,還需要利用網(wǎng)絡(luò)中的網(wǎng)管專用機(jī)提供FTP服務(wù)器完成日志的備份和配置信息的更新,并利用因特網(wǎng)上的NTP網(wǎng)絡(luò)時(shí)間服務(wù)器進(jìn)行自動(dòng)校時(shí)服務(wù)。
系統(tǒng)硬件在SoPC Builder上設(shè)計(jì),采用的IP軟核清單如表3所示。
4 軟件系統(tǒng)設(shè)計(jì)
4.1操作系統(tǒng)選型
嵌入式操作系統(tǒng)有μcLinux、μC/OSII[3]、eCos。每個(gè)操作系統(tǒng)各有特色,從移植的難易程度、內(nèi)核的大小、實(shí)時(shí)性等因素出發(fā),選擇μC/OSII。NiosII IDE中嵌入了μC/OSII,可以快速地為NiosII處理器建立RTOS應(yīng)用。這個(gè)內(nèi)核是可移植、可固化、可裁剪,具有搶占式的實(shí)時(shí)多任務(wù)功能的操作系統(tǒng)。
4.2 TCP/IP協(xié)議棧選型
支持TCP/IP協(xié)議棧的主要有μIP、TinyTcp、μC/IP、lwIP幾種,每一種都有其特點(diǎn)與使用范圍。lwIP是開源的輕量型協(xié)議棧,沒有操作系統(tǒng)針對(duì)性,通過系統(tǒng)模擬層將協(xié)議棧中與平臺(tái)相關(guān)的代碼抽象出來,具有靈活可移植性,并且lwIP網(wǎng)絡(luò)應(yīng)用開發(fā)提供了API接口,極大的方便了應(yīng)用開發(fā)。由于本系統(tǒng)開發(fā)中選用的操作系統(tǒng)是μC/OS,且Nios II IDE支持lwIP協(xié)議棧,使得移植更方便,所以選用lwIP。
4.3 應(yīng)用軟件功能設(shè)計(jì)
應(yīng)用軟件是建立在操作系統(tǒng)基礎(chǔ)上的軟件系統(tǒng),得益于μC/OSII良好的實(shí)時(shí)多進(jìn)程的優(yōu)點(diǎn),能夠同時(shí)完成人機(jī)交互、數(shù)據(jù)處理等主要工作。最核心的功能模塊是IP沖突檢測(cè)與處理模塊,主要完成對(duì)ARP包的解析、判斷是否合法、記錄日志等工作。另一個(gè)模塊是包發(fā)送模塊,它是主動(dòng)方式運(yùn)作,能夠掃描整個(gè)網(wǎng)絡(luò),強(qiáng)制更新ARP表,對(duì)照合法的IP-MAC地址列表找出盜用者,還可以對(duì)盜用IP地址的人發(fā)出警告,阻止其上網(wǎng),還可以探測(cè)并記錄各主機(jī)的開機(jī)或關(guān)機(jī)狀態(tài)。
4.4 文件系統(tǒng)選型
本系統(tǒng)采用SD卡存儲(chǔ)數(shù)據(jù),在其上建立文件存取時(shí),首先要建立文件系統(tǒng)。表4是三種類型數(shù)據(jù)文件所需的文件操作、保密要求及其空間占用情況。
Altera公司雖提供了Zip File System,但它在存儲(chǔ)介質(zhì)、存儲(chǔ)量以及寫入操作方面已經(jīng)不能滿足要求;而SD卡的可拔插性和FAT/FAT32的通用性,使建立在SD卡上的FAT/FAT32并不具有很強(qiáng)的保密性,同時(shí)在寫入數(shù)據(jù)到文件之前需要查表,不能滿足高速的要求,而且實(shí)現(xiàn)文件系統(tǒng)的建立也需要一定的代碼量;NTFS雖然具有保密性,但其存取速度同樣不能滿足要求,實(shí)現(xiàn)起來則更為復(fù)雜?;谝陨显?,本系統(tǒng)在實(shí)現(xiàn)了基本的SD卡讀取操作后,對(duì)SD卡存取空間進(jìn)行了劃分,實(shí)現(xiàn)了一個(gè)簡(jiǎn)單、高效同時(shí)具有保密性的自定義文件系統(tǒng)。對(duì)分區(qū)數(shù)據(jù)的讀寫操作是通過對(duì)SD卡驅(qū)動(dòng)的直接讀寫操作進(jìn)行簡(jiǎn)單封裝實(shí)現(xiàn)的,同時(shí)數(shù)據(jù)的存儲(chǔ)無需查表等額外操作,因此具有高效性。分區(qū)數(shù)據(jù)的記錄則是將需要存儲(chǔ)的數(shù)據(jù)放入程序內(nèi)部的數(shù)據(jù)結(jié)構(gòu)后寫入SD卡來存儲(chǔ)的,具有一定的保密性。
4.5 網(wǎng)絡(luò)服務(wù)規(guī)劃
本設(shè)備可以作為手持式設(shè)備臨時(shí)地調(diào)試監(jiān)控,也可以固定在機(jī)柜中進(jìn)行長(zhǎng)期觀察。為了方便網(wǎng)絡(luò)管理員的操作,提供了Telnet遠(yuǎn)程操作功能,可以自動(dòng)將系統(tǒng)日志、警報(bào)信息等上傳至網(wǎng)管專用機(jī)上,還能自動(dòng)下載最新的配置文件進(jìn)行設(shè)置,并且,為了生成規(guī)范的日志,還提供了自動(dòng)校時(shí)功能。這些功能依次對(duì)應(yīng)Telnet服務(wù)模塊、FTP服務(wù)模塊、NTP服務(wù)模塊。
4.6 軟件流程圖
應(yīng)用軟件中最重要的模塊是IP沖突檢測(cè)與處理的實(shí)現(xiàn)。IP沖突檢測(cè)是在捕獲ARP包的基礎(chǔ)上對(duì)ARP包中的源IP和源MAC進(jìn)行分析,從而判斷該數(shù)據(jù)包的IP地址是否產(chǎn)生了沖突或者是非法的IP地址。其中檢測(cè)通過包的主分析進(jìn)程完成,其流程圖如圖2所示。處理操作通過包發(fā)送進(jìn)程完成,其流程如圖3所示。
基于SoPC技術(shù),利用QuartusII開發(fā)軟件,在以Nios II為核心的嵌入式系統(tǒng)設(shè)計(jì)平臺(tái)上進(jìn)行設(shè)計(jì),能靈活、快捷地完成系統(tǒng)設(shè)計(jì)開發(fā)。該設(shè)備使用方便、靈活、高效價(jià)格低廉,可作手持式臨時(shí)調(diào)試監(jiān)控,也可長(zhǎng)期固定實(shí)現(xiàn)網(wǎng)絡(luò)監(jiān)視和IP盜用處理,非常適合于中小企業(yè)網(wǎng)。
評(píng)論