范慧莉,李裕康
(北京空間機電研究所,北京 100094)
隨著計算機技術、網絡技術和通信技術的快速發展和應用,信息化的建設也在不斷發展,普及程度也在不斷的提高,特別是在促成企業單位發生轉變的過程,起到了至關重要的角色。它通過實現信息資源的高度共享,高度整合,極大的解放、發展了生產力,更是優化了生產關系,成為了企業提高市場競爭力和可持續發展的重要手段[1]。現代信息技術確實為企事業單位帶來無窮的便利,卻也帶來了幸福的煩惱。信息的高度共享與整合帶來的不僅僅是生產效率的提升,更是帶來了巨大的安全隱患。病毒、木馬、非授權訪問、數據竊聽、暴力破解等各種黑客手段,都旨在獲取這些信息資源以從中謀取不當利益[2]。
為了保護企業信息免受來自互聯網的攻擊,企業紛紛建立了自己的內部專用網絡,并在裝有各種控件的專用硬件的幫助下,在航天專網與互聯網之間建立起了一扇“安全網絡之門”,以控制企業內部寶貴信息的進出,從而實現網絡安全。這種手段可以統稱為“物理隔離”[3]。物理隔離確實可以非常有效的控制、保護航天專網,能直接將來自網絡的攻擊隔離在企業之外。然而,經過實踐發現,單純的物理隔離是遠遠不過的。物理隔離的實現前提,是所有航天專網的設備能且只能通過企業為他設置的“安全網絡之門”與互聯網發生聯系。這就意味著,黑客仍然可以通過,使網內終端設備直接連接企業外部其他的違規設備的方式,來達到繞過企業設置的“安全網絡之門”,進而攻擊終端,滲透到航天專網以偷竊信息的目的。為了解決違規外聯問題,市場上應運而生了眾多的違規外聯檢測監控系統,然而這些系統的側重點往往使事后取證而非事前防控,且對于內部設備連接互聯網之后的控制能力十分有限,對于內網和互聯網物理連接的情況還是無能為力,且統一安裝代理客戶端的部署方式,需要策略以及客戶端的整體配合,一旦卸載代理或代理失效,那將讓航天專網設備處于毫無防控的狀態,而且隨著企業航天專網接入設備的日趨多樣化、跨平臺化、跨語言化,使得常規的基于安裝軟件代理的防護手段適用性越來越窄,軟件生產者必須付出極大的精力與投入才有可能保障代理手段能夠適用于各種設備[4]。不具備通用性,和全范圍的包容性,顯然是此類代理軟件在設計思路上的缺陷,因此這樣的處置方式遠遠不能滿足網絡安全管理的要求。
鑒于企業內部網絡設備的種類多樣性,功能復雜性,以及新違規外聯手段的層出不窮,本文提出了一種無代理違規外聯檢測方式:通過從底層通訊協議入手,無需安裝客戶端,能全面覆蓋網絡內部所有終端的方式,補充了現有違規外聯防護手段短板,提高了網絡內部的安全性。
國際標準化組織(ISO)將安全定義為“為數據處理系統建立和采取的技術與管理方面的安全保護,保護硬件、軟件數據不因偶然和惡意的原因而遭到破壞、更改和泄露”。這是安全在網絡定義上的延伸,而對于網絡安全管理人員來說,是需要時刻扼守的底線準則。航天專網中,現有的網絡安全防護手段措施,大多將防護重點放在了內外網隔離,以及如何抵抗源自外部網絡的攻擊上(物理隔離,防火墻,入侵防御系統等),而內部網絡更多的是通過劃分安全域的方式予以一定程度的限制與分隔。然而,對于航天專網內部同一安全域內的各個網絡終端,則賦予了極大的“信任”,這導致一旦安全威脅源自內部,這類攻擊將具有更大的威脅,更高的可能性對企業造成巨大傷害。而在所有的信息安全事故中,由于網絡終端的使用者的疏忽誤操作或蓄意泄密所造成的事故約占70%,也就是說,如果企業單位不能有效的控制來自內部的網絡安全問題,核心數據和涉密信息的損失將是不可估量的。
對于航天專網而言,最基礎的安全手段就是與互聯網物理隔離。雖然物理隔離能夠從原則上保障外部網絡和航天專網之間不存在可以產生通訊的物理鏈路,切斷了信息外泄的外部通道,但是網絡安全的重點從來不單單限于免受外部網絡的攻擊,同時也要時刻監視網絡內部的安全情況。由于個人產生誤操作,或是外來人員通過外來設備,使內外網互通,最終導致失、泄密或影響信息系統性能,這些行為可以統一定義為“違規外聯”。
違規外聯使原本物理隔離的航天專網與外部的網絡環境之間出現了新的不可控通道,外部網絡可能借助此通道,病毒、木馬、非授權訪問、數據竊聽、暴力破解等多種手段侵入違規外聯的計算機,非法竊取敏感數據,甚至利用該機器作為跳板進一步滲透內網的重要服務器,甚至進行跨安全域、跨網絡破壞,進而導致整個內部網絡面臨巨大安全風險[5]。
違規外聯的手段有很多種,常見手段如表1所示。
通過表1看出,無論是何種方式的違規外聯,只要發生,就會產生巨大的安全問題,并極有可能泄露企業核心機密內容,導致巨大的不可挽回的損失。
基于違規手段進行檢測,會因為研發周期的不確定性,導致新違規手段一段時間內將沒有相應的防護手段。因此,基于違規手段進行檢測的方式因其適應性差,不可預期性強的缺點,不適合作為有效的檢測手段[6]。
傳統違規外聯的檢測技術主要是利用在計算機上安裝代理軟件,以此對設備進行管理。但隨著網絡內接入的終端設備類型越來越復雜多樣,此方式也并不能適用于檢測特殊設備是否會產生違規外聯行為。
本文提出的無代理違規外聯檢測技術分為兩類,一類是主動掃描技術,一類是被動檢測技術。其中主動掃描技術適合于非Windows的特殊設備,而被動檢測技術適合于具有交互能力但無法安裝檢測代理軟件的辦公機。
此技術的探測原理使通過探測設備與被探測設備之間建立TCP的半連接,通過判斷通信是否成功建立以來判定目標機是否產生了違規外聯。在TCP/IP協議中,要建立TCP連接需要進行三次握手,如圖1所示。
所謂三次握手(Three-Way Handshake)即建立TCP連接,就是指建立一個TCP連接時,需要客戶端和服務端總共發送3個包以確認連接的建立[7]。

表1 常見的違規外聯方式

圖1 三次握手流程
基于SYN+ACK的回復來判斷目標機器是否產生違規外聯的方式有兩種,一種是在互聯網上部署取證服務器,一種是無需互聯網取證服務器,純內網方式檢測。
2.2.1 互聯網取證
在互聯網上部署取證服務器,然后取證服務器上進行抓包,只要抓到內網的特定探測響應數據包,即可確定有內網機器產生了違規外聯行為,其基本原理如圖2所示。
探測器模擬外網取證服務器的IP地址向測試機發送TCP SYN掃描數據包,如果測試機沒有違規外聯,則探測包最終將由于沒有路由而被內網路由器(交換機)丟棄;如果測試機產生了違規外聯,則測試機會向互聯網取證服務器回復TCP SYN+ACK的數據包;如果互聯網取證服務器收到探測發送來的TCP SYN+ACK包,則判定有內網機器發生了違規外聯,具體違規外聯的機器可以根據構造TCP SYN的序列號,并基于TCP SYN+ACK此序列號區分具體機器。
2.2.2 純內網取證
純內網探測無需在互聯網部署取證服務器,內網探測服務器根據是否有響應數據包來判斷測試機是否產生了違規外聯,基本原理圖如圖3所示。
探測器模擬外網IP地址向測試機發送TCP SYN掃描數據包,如果測試機無外網出口,則其TCP SYN+ACK回復包會原路返回給探測器;如果測試機有外網出口,則其TCP SYN+ACK回復包會從外網出口轉到互聯網上;探測器基于是否收到TCP SYN+ACK的響應包來判斷測試機是否產生了外聯行為。
主動掃描的檢測技術需要一定的前提條件:
1)測試機必須開啟某一個TCP監聽端口供探測器發送TCP SYN探測包;
2)測試機必須啟用路由轉發功能(很多操作系統,比如Windows7以及更高版本Windows默認都是不啟用此轉發功能的,所以不能用此探測技術)。
基于以上兩點可見,主動探測技術對于Windows辦公機的檢測具有一定局限性。基于此本文提出了被動檢測技術,以配合主動探測。被動檢測技術分為在線違規外聯檢測和離線違規外聯檢測兩種。
2.3.1 在線檢測

圖2 互聯網取證過程

圖3 純內網取證
在線違規外聯檢測是測試機同時聯通內外網,檢測代碼實時與外網取證服務器進行通信,根據通信的結果進行取證,基本原理如圖4所示。
探測器首先要對WEB服務器頁面進行抓取,并進行修改將檢測代碼附加到頁面中,并進行緩存;測試機通過瀏覽器訪問內網WEB服務器,此訪問請求會被探測器和內網WEB服務器收到;探測器和內網WEB服務器都給測試機的瀏覽器回復頁面信息,由于探測器的回復比WEB服務器要快,所以瀏覽器接收并使用了探測器回復的頁面,此頁面帶有檢測代碼,而WEB服務器回復的頁面會被瀏覽器當做重復數據而丟棄;瀏覽器執行檢測代碼,此代碼首先從內網探測器上獲取測試機自身信息;檢測代碼將測試機內網信息提交給互聯網取證服務器,如果提交失敗,則表示測試機沒有違規外聯行為,如果提交成功則表示測試機產生了違規外聯行為,此時互聯網取證服務器記錄測試機的內網信息;如果檢測代碼確認違規行為,則將互聯網取證信息提交給內網探測器,內網探測器在內部對違規行為進行記錄。
2.3.2 離線檢測
離線違規外聯檢測就是利用了檢測瀏覽器Cookie的技術[8],來查看本地是否存留了互聯網服務器的殘留Cookie信息,并通過技術手段,解決了不同域名之間Cookie無法訪問的技術壁壘,基本原理流程如圖5所示。

圖4 在線檢測原理圖

圖5 離線檢測原理圖
測試機離開內網,違規訪問互聯網,此時瀏覽器會遺留訪問互聯網的Cookie在硬盤上;探測器首先將檢測JavaScript代碼附加到頁面中,并進行緩存;測試機斷開互聯網,接入內網,并通過瀏覽器訪問內網WEB服務器;探測器和內網WEB服務器都給測試機的瀏覽器回復頁面信息,由于探測器的回復比真實WEB服務器要快,所以瀏覽器接收并使用了探測器回復的頁面,此頁面帶有檢測代碼,而真實WEB服務器回復的頁面會被瀏覽器當做重復數據而丟棄;瀏覽器執行檢測代碼,檢測代碼首先訪問互聯網服務器,此時瀏覽器會向內網DNS服務器發送域名IP地址解析請求;內網DNS服務器已經提前配置好將對應IP地址解析為內網探測器IP地址,所以內網DNS服務器回復測試機瀏覽器對應域名為內網探測器IP;檢測代碼通過瀏覽器訪問本地的Cookie信息成功,如果發現有互聯網殘留的Cookie則表示機器曾經接入過互聯網,此時向探測器發送違規記錄并進行取證。
本文提出的主動掃描和被動檢測的無代理違規外聯檢測技術,并不是取代當前傳統基于代理軟件的檢測模式,而是使兩者協同配合,令其在各自適合的環境和適用范圍發揮作用,相互輔助,相互彌補,在面臨復雜的終端網路設備時,能最終確實的保證網絡的安全。