鄭挺
(杭州師范大學(xué)錢江學(xué)院電氣與機(jī)械工程系,浙江 杭州 310012)
GAP技術(shù)是在1997年左右,最早由以色列的Whale,Spearhead等公司研制開發(fā)。2000年1月,為滿足國內(nèi)信息化建設(shè)及電子政務(wù)的需求,國內(nèi)專業(yè)從事網(wǎng)絡(luò)與信息安全研究開發(fā)、技術(shù)支持、產(chǎn)品銷售和安全服務(wù)的北京天行網(wǎng)安信息技術(shù)有限責(zé)任公司率先提出從物理隔離技術(shù)發(fā)展出GAP概念,并且與公安部信息通信局聯(lián)合研制完成國內(nèi)第一款GAP產(chǎn)品一一天行安全隔離與信息交換系統(tǒng),與此同時獲得了國內(nèi)網(wǎng)閘行業(yè)第一個銷售許可證,標(biāo)志著完全由我國自主研發(fā)的國內(nèi)第一臺網(wǎng)閘誕生。
GAP技術(shù)的基本原理是在內(nèi)網(wǎng)和外網(wǎng)的系統(tǒng)之間架構(gòu)“安全隔離網(wǎng)閘”,保證內(nèi)網(wǎng)連通時,斷開與外網(wǎng)的連接;外網(wǎng)連通時,斷開與內(nèi)網(wǎng)的連接,分時地使用內(nèi)外網(wǎng)中的數(shù)據(jù)通路進(jìn)行數(shù)據(jù)交換,以達(dá)到隔離與交換的目的。也就是單個用戶在同一時間、同一空間不能同時使用內(nèi)網(wǎng)和外網(wǎng)兩個系統(tǒng)。只要使兩個系統(tǒng)在空間上物理隔離,在不同的時間運(yùn)行,就可以得到兩個完全物理隔離的系統(tǒng)。在數(shù)據(jù)交換過程中要進(jìn)行防病毒、防惡意代碼等信息過濾,以保證信息的安全。切斷網(wǎng)絡(luò)之間的通用協(xié)議連接;將數(shù)據(jù)包進(jìn)行分解或重組為靜態(tài)數(shù)據(jù);對靜態(tài)數(shù)據(jù)進(jìn)行安全審查,包括網(wǎng)絡(luò)協(xié)議檢查和代碼掃描等;確認(rèn)后的安全數(shù)據(jù)流入內(nèi)部單元;內(nèi)部用戶通過嚴(yán)格的身份認(rèn)證機(jī)制獲取所需數(shù)據(jù)。
物理層是OSI的第一層,它雖然處于最底層,卻是整個開放系統(tǒng)的基礎(chǔ)。物理層為設(shè)備之間的數(shù)據(jù)通信提供傳輸媒體及互連設(shè)備,為數(shù)據(jù)傳輸提供可靠的環(huán)境。
鏈路層是為網(wǎng)絡(luò)層提供數(shù)據(jù)傳送服務(wù)的,這種服務(wù)要依靠本層具備的功能來實現(xiàn)。實際的物理鏈路是不可靠的,總會出現(xiàn)錯誤,數(shù)據(jù)鏈路層的作用就是通過一定的手段 (將數(shù)據(jù)分成幀,以數(shù)據(jù)幀為單位進(jìn)行傳輸)將有差錯的物理鏈路轉(zhuǎn)化成對上層來說沒有錯誤的數(shù)據(jù)鏈路。
網(wǎng)絡(luò)層將數(shù)據(jù)分成一定長度的分組,并在分組頭中標(biāo)識源和目的節(jié)點(diǎn)的邏輯地址,這些地址就象街區(qū)、門牌號一樣,成為每個節(jié)點(diǎn)的標(biāo)識;網(wǎng)絡(luò)層的核心功能便是根據(jù)這些地址來獲得從源到目的的路徑,當(dāng)有多條路徑存在的情況下,還要負(fù)責(zé)進(jìn)行路由選擇。
傳輸層是兩臺計算機(jī)經(jīng)過網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)通信時,第一個端到端的層次,具有緩沖作用。
會話層提供的服務(wù)可使應(yīng)用建立和維持會話,并能使會話獲得同步。會話層使用校驗點(diǎn)可使通信會話在通信失效時從校驗點(diǎn)繼續(xù)恢復(fù)通信。
表示層的作用之一是為異種機(jī)通信提供一種公共語言,以便能進(jìn)行互操作。這種類型的服務(wù)之所以需要,是因為不同的計算機(jī)體系結(jié)構(gòu)使用的數(shù)據(jù)表示法不同。
應(yīng)用層向應(yīng)用程序提供服務(wù),這些服務(wù)按其向應(yīng)用程序提供的特性分成組并稱為服務(wù)元素。有些可為多種應(yīng)用程序共同使用,有些則為較少的一類應(yīng)用程序使用。應(yīng)用層是開放系統(tǒng)的最高層,是直接為應(yīng)用進(jìn)程提供服務(wù)的。
隔離模塊,起到一個數(shù)據(jù)中轉(zhuǎn)站和控制器的作用。隔離硬件通過USB總線與內(nèi)部處理單元和外部處理單元相連,USB總線的數(shù)據(jù)線寬度為16位。數(shù)據(jù)從內(nèi)部處理單元或者外部處理單元的USB端口發(fā)送至隔離硬件的數(shù)據(jù)緩沖區(qū)(雙端口儲存器)中,然后斷開該端同隔離硬件的連接,建立與另一端的連接,將數(shù)據(jù)從數(shù)據(jù)緩沖區(qū)(雙端口儲存器)發(fā)送至外部處理單元或者內(nèi)部處理單元。
外部處理單元需完成的主要功能如下:(1)TCP/IP協(xié)議分解及專用協(xié)議封裝:對TCP/IP協(xié)議類型的數(shù)據(jù)包進(jìn)行分解將TCP/IP包頭剝?nèi)?,把從包頭中提取出有用的信息和原數(shù)據(jù)包的數(shù)據(jù)部分利用專用協(xié)議進(jìn)行封裝。(2)附加消息認(rèn)證印戳:通過MD 5算法計算出原始數(shù)據(jù)部分的消息摘要,然后對消息摘要進(jìn)行加密獲得密文,該密文作為消息認(rèn)證印戳附加在專用協(xié)議包頭中,供消息認(rèn)證使用。
用戶管理子模塊主要完成對內(nèi)網(wǎng)用戶訪問外網(wǎng)進(jìn)行管理的任務(wù)。主要包括:(1)用戶管理:對用戶名,密碼,用戶的信息進(jìn)行管理,對用戶的身份進(jìn)行認(rèn)證。(2)訪問控制:設(shè)定用戶能訪問什么網(wǎng)站或不能訪問什么網(wǎng)站,用戶可使用的端口:80(HTTP),21(FTP)等。(3)用戶訪問歷史記錄管理:查詢、刪除、打印用戶訪問歷史記錄。
數(shù)據(jù)接收模塊包括下而的組件
4.2.1 監(jiān)聽進(jìn)程:監(jiān)聽常見網(wǎng)絡(luò)服務(wù)端口,不斷地檢查是否有新的數(shù)據(jù)包到來,當(dāng)檢測到新的數(shù)據(jù)包之后,接收新的TCP/IP連接。
4.2.2 工作進(jìn)程:負(fù)責(zé)在套接層上異步發(fā)送和接收數(shù)據(jù)。首先需要讀取待處理數(shù)據(jù)的包頭內(nèi)容。
數(shù)據(jù)接收模塊實現(xiàn)主要函數(shù)為:建立Socket:SockRaw=socket(AF-NET,SOCK-AW,0)
綁定本機(jī)IP地址。首先獲得本地主機(jī)名,再根據(jù)本地主機(jī)名獲得本地的IP地址,最后將Socket與本機(jī)端口綁定。
捕獲數(shù)據(jù)包:循環(huán)調(diào)用recv()函數(shù)捕獲數(shù)據(jù)包,每捕獲一個數(shù)據(jù)包就將其存儲在緩沖區(qū)Buf中。
數(shù)據(jù)接收模塊其實現(xiàn)流程如下圖所示:
作為目前安全級別最高的一種安全解決方案,網(wǎng)絡(luò)隔離概念也越來越多的被應(yīng)用在安全產(chǎn)品中,然而目前我們這一技術(shù)并不成熟,產(chǎn)品也各式各樣。作者是在這種大環(huán)境下對網(wǎng)絡(luò)隔離技術(shù)做的一些綜合性探索性的研究活動,鑒于目前網(wǎng)絡(luò)隔離產(chǎn)品硬件壽命周期短、支持應(yīng)用少的缺點(diǎn),提出一種改進(jìn)的網(wǎng)閘實現(xiàn)方案,采用軟件方式實現(xiàn)開關(guān)功能,并采用模塊化的設(shè)計思想可以通過增加協(xié)議分析模塊從而同時支持多種應(yīng)用協(xié)議,實現(xiàn)系統(tǒng)的高可擴(kuò)展性。
[1]鄭海峰,淺淡網(wǎng)絡(luò)防火墻技術(shù),硅谷,2008年
[2]方煒煒,網(wǎng)絡(luò)安全與網(wǎng)絡(luò)隔離GAP技術(shù)的研究,微型電腦應(yīng)用,2008年