信息化高速發(fā)展帶給人類社會的變革正在不斷升華,云計算、大數(shù)據(jù)、搜索引擎、智能手機、網絡購物、在線社交等新興科技產物已走進千家萬戶,使人們有機會在短短幾十年就看到互聯(lián)網時代帶給人類歷史上從沒有過的精彩與新奇。利益與風險總是并存,網絡攻擊像夢魘一樣伴隨著信息化的過程,網絡安全已成為影響人類社會發(fā)展的全球性問題。隨著信息系統(tǒng)復雜度的增大以及攻擊手段的不斷演進,傳統(tǒng)靜態(tài)網絡防護手段已難以滿足網絡空間安全需求,動態(tài)防御策略是網絡空間安全防護的新思路。本文在分析網絡空間防御基本現(xiàn)狀基礎上,結合信息系統(tǒng)探討了網絡空間動態(tài)防御的相關概念和技術。
一、網絡空間防御基本現(xiàn)狀
在信息技術研發(fā)、應用的整個生命周期中,漏洞總是存在,不可避免。首先,馮·諾依曼架構自身的缺陷以及基于TCP/ IP協(xié)議棧互聯(lián)網體系的不安全性問題,導致了安全漏洞的不可避免;其次,計算機軟件系統(tǒng)規(guī)模的快速增長、新技術和新應用的推陳出新以及軟件系統(tǒng)復雜度的提高,增大了漏洞產生的概率;最后,軟件和系統(tǒng)是由人設計和實現(xiàn)出來的,人的天生惰性和認知局限性導致漏洞無法避免。而現(xiàn)有的網絡安全防御體系綜合采用防火墻、入侵檢測、主機監(jiān)控、身份認證、防病毒軟件、漏洞修補等多種手段構筑堡壘式的剛性被動防御體系,阻擋或隔絕外界入侵,這種靜態(tài)分層的深度防御體系基于先驗知識,在面對已知攻擊時,具有反應迅速、防護有效的優(yōu)點,但無法應對未知漏洞攻擊,而且單個攻擊手段一旦對局部生效,很容易擴散開來,對全網造成大面積影響。漏洞的客觀存在以及現(xiàn)有防護的被動性,導致了易攻難守的網絡攻防不對稱局面。
為了扭轉網絡攻防不對稱局面,美國在對國家網絡安全防御進行深入研究后,提出了“改變游戲規(guī)則”的網絡安全防御新思路。這一思路可以追溯到2008年1月美國發(fā)布的《國家綜合網絡安全倡議》和2009年5月發(fā)布的《網絡空間政策評審》,后者確定了美國政府應實施網絡空間“改變游戲規(guī)則”的安全研發(fā)思路,同時啟動了國家網絡飛躍年,開始探索改變未來網絡空間安全游戲規(guī)則的構想。2011年12月,美國國家科學技術委員會(NITRD)發(fā)布《可信網絡空間:聯(lián)邦網絡空間安全研發(fā)戰(zhàn)略規(guī)劃》,核心是針對網絡空間所面臨的現(xiàn)實和潛在威脅來發(fā)展能“改變游戲規(guī)則”的革命性技術,確定了內置安全、移動目標防御、量身定制可信空間、網絡經濟激勵4個“改變游戲規(guī)則”的研發(fā)主題,作為美國白宮網絡安全研究與發(fā)展戰(zhàn)略規(guī)劃的四大關鍵領域。其中,動態(tài)目標防御(Moving Target Defense,MTD)技術被學術界、工業(yè)界看作是最有希望進入實戰(zhàn)化應用的研究方向。
二、動態(tài)防御相關概念與技術
(一)相關概念
在軍事領域,動態(tài)防御的思想可謂源遠流長。《孫子兵法》云:“兵者,詭道也。”意思是用兵之道,在于千變萬化,出其不意。動態(tài)目標防御就是將“變”的思想運用于網絡空間防御,其創(chuàng)新性在于一反常態(tài),由陣地戰(zhàn)改為運動戰(zhàn)或游擊戰(zhàn)。在部署、運行信息系統(tǒng)時,通過有效降低信息系統(tǒng)的確定性、相似性和靜態(tài)性,增加其隨機性,降低其可預見性,從而構建持續(xù)變化、不相似、不確定的信息系統(tǒng),讓信息系統(tǒng)對外呈現(xiàn)不可預測的變化狀態(tài),攻擊者難以有足夠時間發(fā)現(xiàn)或利用信息系統(tǒng)的安全漏洞,更不容其持續(xù)探測、反復攻擊,從而提高了攻擊難度和代價。顯然,這是防護策略和游戲規(guī)則的大轉變,改變了易攻難守的網絡攻防不對稱局面。
2016年,楊林等人在動態(tài)目標防御基礎上,將“變”的思想全面應用于網絡空間各個環(huán)節(jié),提出動態(tài)賦能的基本概念,即:“動態(tài)賦能是一種需要在網絡空間信息系統(tǒng)全生命周期設計過程中貫徹的基本安全理念,其目的在于通過一切可能的途徑,在維護網絡空間信息系統(tǒng)可用性的同時,使得信息系統(tǒng)全生命周期運轉過程中的所有參與主體、通信協(xié)議、信息數(shù)據(jù)等都具備主動或被動地在時間和空間兩個領域單獨或者同時變換自身所有可能特征屬性或屬性對外呈現(xiàn)信息的能力,從而達到以下全部或部分效果:①攻擊者難以發(fā)現(xiàn)目標;②攻擊者發(fā)現(xiàn)的目標是錯誤的;③攻擊者發(fā)現(xiàn)了目標但無法實施攻擊;④攻擊者能實施攻擊但不可持續(xù);⑤攻擊者能實施攻擊但很快被檢測到。任何符合以上特點的技術都隸屬于動態(tài)賦能網絡安全防御技術的范疇。”這一個概念比“動態(tài)目標防御”有更大的作用域,它不僅是描述一種安全技術,更多的是描述信息系統(tǒng)自身組成通過變化所形成的一種內在安全能力。
(二)動態(tài)防御技術
在動態(tài)賦能網絡空間防御體系中,動態(tài)防御的核心技術基礎是多種多樣的動態(tài)技術,每一種技術都是以保護信息系統(tǒng)中的某種實體為目的。一般來說,信息系統(tǒng)中的實體主要包括軟件、網絡節(jié)點、計算平臺、數(shù)據(jù)等。因此,可相應地歸納出四大類動態(tài)防御技術:軟件動態(tài)防御技術、網絡動態(tài)防御技術、平臺動態(tài)防御技術以及數(shù)據(jù)動態(tài)防御技術。
1.軟件動態(tài)防御技術
軟件動態(tài)防御技術主要應用隨機化的思想,以密碼技術、編譯技術、動態(tài)運行時技術等為基礎,對程序代碼在控制結構、代碼布局、執(zhí)行時內存布局以及執(zhí)行文件的組織結構等多層面進行隨機性、多樣性和動態(tài)性的處理,消除軟件的同質化現(xiàn)象,實現(xiàn)軟件的多態(tài)化,減小或者動態(tài)變化系統(tǒng)攻擊面,增加攻擊者漏洞利用難度,有效抵御針對軟件缺陷的外部代碼注入型攻擊、文件篡改攻擊、數(shù)據(jù)泄露攻擊、感染攻擊等攻擊類型。相關技術主要有:地址空間布局隨機化技術、指令集隨機化技術、二進制代碼隨機化技術、軟件多態(tài)化技術以及多變體執(zhí)行技術等。
2.網絡動態(tài)防御技術
網絡動態(tài)防御技術是指在網絡層面實施動態(tài)防御,具體是指在網絡拓撲、網絡配置、網絡資源、網絡節(jié)點、網絡業(yè)務等網絡要素方面,通過動態(tài)化、虛擬化和隨機化方法,打破網絡各要素靜態(tài)性、確定性和相似性的缺陷,抵御針對目標網絡的惡意攻擊,提升攻擊者網絡探測和內網節(jié)點滲透的攻擊難度。相關技術主要有:動態(tài)網絡地址轉換技術、網絡地址空間隨機化分配技術、端信息跳變防護技術網以及基于覆蓋網絡的相關動態(tài)防護技術。
3.平臺動態(tài)防御技術
傳統(tǒng)平臺系統(tǒng)設計往往采用單一的架構,且在交付使用后長期保持不變,這就為攻擊者進行偵察和攻擊嘗試提供了足夠的時間。一旦系統(tǒng)漏洞被惡意攻擊者發(fā)現(xiàn)并成功利用,系統(tǒng)將面臨服務異常、信息被竊取、數(shù)據(jù)被篡改等嚴重危害。平臺動態(tài)防御技術是解決這種系統(tǒng)同構性固有缺陷的一種有效途徑。平臺防御技術通過構建多樣化的運行平臺,動態(tài)改變應用運行的環(huán)境來使系統(tǒng)呈現(xiàn)出不確定性和動態(tài)性,從而縮短應用在某種平臺上暴露的時間窗口,給攻擊者造成偵察迷霧,使其難以摸清系統(tǒng)的具體構造,從而難以發(fā)動有效的攻擊。相關技術主要包括:基于動態(tài)可重構的平臺動態(tài)化、基于異構平臺的應用熱遷移、Web服務的多樣化以及基于入侵容忍的平臺動態(tài)化。
4.數(shù)據(jù)動態(tài)防御技術
數(shù)據(jù)動態(tài)防御技術主要是指能夠根據(jù)系統(tǒng)的防御需求,動態(tài)化更改相關數(shù)據(jù)的格式、句法、編碼或者表現(xiàn)形式,從而加大攻擊者的復雜度,達到提高攻擊難度的效果。在當前已知的研究中,數(shù)據(jù)動態(tài)化技術主要指面向內存數(shù)據(jù)的隨機化和多樣化技術,但部分研究中也將應用程序中協(xié)議語法和配置數(shù)據(jù)方面的多樣化技術歸結為數(shù)據(jù)動態(tài)化技術研究范疇。相關技術主要包括:數(shù)據(jù)隨機化技術、N變體數(shù)據(jù)多樣化技術、面向容錯的N-Copy數(shù)據(jù)多樣化以及面向Web應用安全的數(shù)據(jù)多樣化技術等。
(三)動態(tài)防御技術的本質
前文介紹了針對軟件、網絡、平臺和數(shù)據(jù)的多種可能的動態(tài)防御技術,信息系統(tǒng)可采用基于這些技術本身,或是基于這些技術的改進或者組合的防御手段,網絡空間動態(tài)防御技術絕不局限于以上技術。除這些技術外,還需要研究者根據(jù)信息系統(tǒng)發(fā)展以及攻防成本等諸要素的博弈模型來選擇合適的動態(tài)策略。但這些技術能給我們以啟示,其應用實踐也促使我們在面臨不同的信息系統(tǒng)實體時,恰當?shù)剡x擇動態(tài)技術。這些啟示可概括為以下兩個原則。
原則一:隱藏實體特征信息最好的也最為通用的方法就是基于加/解密的信息隨機化方法。這一概念運用在軟件實體動態(tài)化上,就是軟件隨機化技術以及指令集隨機化技術;運用在網絡實體動態(tài)化上,就產生了IP地址隨機化、端口隨機化和網絡特征的隨機化;運用在數(shù)據(jù)實體動態(tài)化上,就產生了特殊類型數(shù)據(jù)的隨機化或者分類數(shù)據(jù)的隨機化。隨機化技術的特點不在于用來發(fā)現(xiàn)攻擊,而在于力求從本質上直接遏制攻擊的發(fā)生。
原則二:多態(tài)化技術也是一種通用的動態(tài)化方法,這一方法的核心在于讓實體同時存在多個形態(tài)。其對抗攻擊的核心思想在于攻擊者很難用一種攻擊方式同時侵入多個變體。盡管攻擊者仍可能突破其一,但只要多個變體出現(xiàn)差異化行為,就可以很快鎖定攻擊,進而對抗攻擊,這一動態(tài)理念也在多個實體相關的動態(tài)技術中得到了體現(xiàn),如軟件多樣化技術、平臺多樣化技術、數(shù)據(jù)多樣化技術等。
深入分析原則一和原則二中提到的動態(tài)變化技術,可以更為本質地看到動態(tài)防御技術的本質,即時空動態(tài)化。一方面,隨機化技術更多地呈現(xiàn)為實體在時間軸上實現(xiàn)的動態(tài)變化。以軟件隨機化為例,某一軟件在時間點T1中采用的加密密鑰會隨著時間的推移而發(fā)生變化,在時間點T2軟件就會可能因為加密密鑰發(fā)生變化而產生不同的指令集、不同的內存地址空間分布或者差異化軟件實體本身。另一方面,多變體技術更多地呈現(xiàn)為一個實體在空間上的動態(tài)變化。以平臺多變體技術為例,對外提供同一種Web網頁服務的后臺可能是具有多種不同體系架構的多臺服務器,如同時采用Linux+Apache、Windows+IIS兩種完全不同的架構來提供對外呈現(xiàn)完全一致的Web網頁服務。
總的來說,多數(shù)動態(tài)技術在本質上都是針對實體的某種組成部分或者實體呈現(xiàn)形式,在空間、時間或者空間+時間上實施規(guī)律性的變化或者驅動性的變化。通過總結以上規(guī)律,不僅使我們更容易對這些已有的動態(tài)技術進行區(qū)分和分類,還能讓我們在未來思考更多、更可行的動態(tài)防御技術時,以這些規(guī)律來指導我們做出更快、更明智的判斷。
三、結語
網絡空間動態(tài)防御是對網絡空間安全防御技術的一種探索,是將安全能力作為信息系統(tǒng)自身標準的一種設想,未來的網絡空間防御體系將是在動態(tài)防御思想指導下的安全體系。本文探討的動態(tài)防御相關思想將有助于推動未來網絡空間主動防御體系的構建,讓安全不再是信息系統(tǒng)發(fā)展的障礙,而是讓安全成為信息系統(tǒng)發(fā)展的內生能力。
(原載于《保密科學技術》雜志2020年6月刊)