王剛,馮云,伍維甲,馬潤年
(空軍工程大學信息與導航學院,710077,西安)
病毒往往能夠在網絡中傳播,對用戶構成潛在威脅。通過病毒源碼解析的傳統病毒防御方法在時間上和成本上處于不利地位[1-3],難以應對日益復雜的網絡環境和變化多樣的病毒攻擊。對于可有效管控自身網絡的企業、政府以及軍隊局域網,動態改變網絡結構(如鏈路中斷或節點隔離)能夠抑制病毒在網絡傳播[4-7],但是網絡結構變化會影響網絡的業務承載,需要在安全和業務承載之間保持均衡,在達成網絡安全的前提下,減少調整的不確定性和隨機性,使得網絡結構調整對網絡業務的影響最小化。網絡結構調整的難點主要表現在2個方面:一是調整的度難以把握,關于這一點,病毒傳播研究[8-12]從理論上給出了網絡中感染節點持續存在的閾值和可能的規模,理論上能夠避免網絡結構的過調整或欠調整;二是網絡及節點狀態信息不明確,在網絡結構的調整過程中,難以做到針對感染目標的精準調整。對此,雖然無法在病毒被完全解析之前完全掌控網絡感染情況,但是可借鑒信任模型[13-17]劃定一個連接感染節點鏈路相對集中的范圍,進而實施針對性調整。
信任模型主要根據目標對象的歷史行為或者相關信息甄別不可信實體,大體上分為直接型和間接型兩類。直接信任模型[13-15]利用網絡實體間的歷史行為實施信任度更新和可信實體的識別,然而現實網絡實體所能接觸的信息是有限的,單一實體很難直接甄別一些未對自身造成危害的惡意實體。間接信任模型[16-21]中的網絡實體從其他實體處獲取相關信息,從而獲取對特定實體的信任程度,并通過用戶間信息共享,實現了比直接信任模型更高效的惡意實體識別。總之,直接信任模型側重實體間歷史行為信息的收集和處理,間接信任模型強調實體間信任度的共享。在網絡安全領域,可借鑒信任模型,探索病毒傳播抑制問題,為抑制病毒傳播提供信任值參考,從而形成科學可行的病毒傳播抑制策略。
在網絡病毒傳播研究過程中,通常按照節點免疫能力和感染情況將節點分為不同狀態,常見狀態有易感狀態S、感染狀態I和免疫狀態R[7,10-11]。一般而言,感染節點具備感染易感節點的能力,網絡結構調整的出發點是減少兩類節點間的連接,延緩攜帶病毒信息的傳輸,進而控制網絡中感染節點的規模。在病毒傳播過程中,節點間的感染行為一定程度上也標示了感染節點的位置。直接信任模型提供了根據歷史感染行為信息調整信任度的思路,能夠對有感染行為的節點進行標記。對于易感節點而言,由于在被感染前缺乏感染行為的歷史信息,無法采用直接信任方式辨識周圍節點狀況,需要借鑒間接信任模式,從相鄰節點處獲取相關信息。
本文首先結合直接信任和間接信任理念,構建了信任值模型:考慮攻擊溯源的復雜性,修改信任值下調機制;考慮計算復雜度和交互數據量,采用離散值表示信任值。其次,融合病毒傳播免疫機理和信任共享理念,借鑒慢啟動算法和路由交換算法,設計了直接信任值更新算法和信任值交互算法。再次,提出了采用可交互信任值機制的病毒傳播抑制策略,以信任值為依據調整網絡,根據感染情況反饋動態調整信任閾值和策略參數。最后,通過仿真實驗:分析了信任值交互對正確率和漏檢率的影響;以鏈路中斷為例,驗證了所提策略的有效性;對比隨機鏈路中斷策略,分析了所提策略在安全-網絡結構方面的優越性。
對于政府、企業等,其內部網絡操作系統、軟件等基本一致,某類病毒只要能感染其中一臺計算機,就可利用已經被感染的用戶終端進行自我復制,并在網絡中傳播。一旦病毒對用戶造成危害,用戶能察覺到病毒的存在,并單方面地認為自身處于一個相對危險的網絡環境中。這種情況下,為了保護自身,用戶可以考慮降低對周圍節點的信任等級,若后續相應節點未表現出感染行為則逐步恢復。通過感染行為調整自身信任值屬于后發地被動信任調節,而通過信任共享,未被感染的節點能夠根據相鄰節點的信任信息先發地主動調整自身信任值。本文在直接信任模型和間接信任模型基礎上,設計可交互信任值機制,實現更加高效地信任管理,協助節點判斷安全環境,進而更加精準地抑制病毒傳播。可交互信任值機制由3部分組成:一是信任值模型,以信任值為核心的可信鏈路判定以及信任值演化規則;二是信任值更新算法及交互算法,病毒傳播過程中對歷史感染行為和共享信任信息的處理算法;三是信任值評估標準,用于評估信任值的標記效果。
對病毒防御,黑白名單機制就是一種較為簡單的信任模型,在反垃圾郵件、騷擾攔截以及病毒防御等領域得到了廣泛的應用。對于政府、企業的內部網絡,多數情況下,網絡中的其他用戶是可信的,而在病毒入侵時,又需要盡可能地將感染節點添加進黑名單,在其恢復后將其從黑名單中移除。考慮這種需求,僅依賴手動管理黑白名單是不現實的,需要建立一種使節點能夠自主調控周圍節點可信程度的信任管理機制。信任值機制[15,22-23]是一種采用信任值量化節點間信任程度的信任管理機制,這種機制能夠根據網絡中感染信息更新信任值,實現節點可信名單的動態調節。但是,這些信任值機制多是對感染信息的直接利用,屬于直接信任模型。本文借鑒這些信任值機制,結合間接信任模型,主要從3個方面改進信任值機制,構建信任值模型:①在病毒被徹底解析之前,節點被感染后難以迅速準確溯源,應下調其所有相鄰節點的信任值;②考慮計算復雜度和交互數據量,信任值采用離散值替代連續值;③充分利用節點間的信息交互,通過信任值交互改善信任值標記效果。
信任值模型如圖1所示。信任值是節點對其自身周圍節點的信任度量。首先,需要考慮信任值的存儲問題。考慮網絡病毒的傳播對象為網絡中斷設備,一般不對集線器、交換機和路由器等中繼設備造成危害,因此可將計算機網絡抽象為有向圖G={V,E},其中:V={vi|i=1,2,…,N},vi表示圖中節點i,對應網絡用戶i;E={(vi,vj)|i,j=1,2,…,N且i≠j},(vi,vj)為有序節點對,是vi到vj的有向邊,表示節點i和節點j之間存在邏輯連接。定義Ti,j(t)為t時刻網絡中用戶vi對vj的信任值。若用戶之間不存在邏輯連接,則信任值為0,否則信任值初始狀態下為-1,表示最高信任等級。Tmin為最低信任值,對應的信任值矩陣可表示為

圖1 信任值模型
T(t)=[Ti,j(t)],(vj,vi)∈E
(1)
網絡中每一個用戶僅需存儲和管理信任值矩陣中屬于自身的部分(對于節點vi而言,即為信任值矩陣的第i列的非0元素),由所有節點共同完成信任值矩陣的存儲和維護。
信任值更新是網絡運維的常態化行為,有直接更新和信任值交互兩種方式。直接更新是指節點根據自身被感染情況更新信任值,若被感染則下調自身對周圍所有節點的信任值,反之則逐步恢復信任值。信任值交互是指節點從相鄰節點處獲取其信任值,并據此修改自身信任值。具體的信任值更新和對應算法見1.2小節。
可信鏈路辨識指節點通過信任值對自身周圍鏈路進行判定。引入信任閾值Tthro。若Ti,j(t)≥Tthro,則表示節點vi認定節點vj為正常節點,相應鏈路為可信鏈路;反之,則節點vi認定節點vj為感染節點,相應鏈路為不可信鏈路。
信任值更新算法包括直接信任值更新算法和信任值交互算法。直接信任值更新算法利用歷史感染行為對信任值進行更新。當vi被感染后,將下調其所有相鄰節點的信任值至最低;若該節點沒有感染,則自動恢復其相鄰節點信任值。
抑制病毒傳播過程中,信任值的作用在于為節點提供判斷周圍安全環境的依據,以便節點實施恰當程度的防御。不同網絡病毒的傳播和感染能力各不相同,需要根據病毒實際感染能力采取不同的調整方案。因此,信任值恢復機制需要滿足如下條件:①恢復至信任狀態的速度動態可調,病毒感染能力越強,則被標記為不可信鏈路、處于不可信狀態的時間需要越長,使得被感染節點和防御方有時間進行免疫和防御;②網絡環境較好時,能夠相對快速地恢復至最高信任值處,以恢復網絡正常運行。
綜合考慮,借鑒TCP擁塞控制機制中的慢啟動算法設計信任值的恢復算法。設置可動態調整的閾值Tthro,若節點信任值小于該閾值則被認定為感染節點,否則被認定為正常節點。通過網絡安全態勢反饋調整信任閾值,實現恢復至信任狀態的速度動態可調。信任值恢復分段控制:當信任值低于閾值時,信任值恢復較慢;當信任值高于閾值時,信任值恢復較快。在不影響不可信狀態持續時間的前提下,實現在較好的網絡安全環境下信任值快速恢復。由此,設計算法1為直接信任值更新算法。
算法1直接信任值更新算法
輸入:上一時刻信任值矩陣T(t-1),單位時間內被感染的節點集合NI,閾值Tthro,鄰接矩陣A,最低信任值Tmin。
輸出:當前時刻信任值矩陣T(t)。
1 fori←1:Ndo
2 forjinA[i,:]do
3 ifiinNIthen
4Ti,j(t)←Tmin
5 else ifTi,j(t-1) 6 thenTi,j(t)←Ti,j(t-1)+1 7 else 9 end 10 end 11 end 12 returnT(t) 設網絡節點的平均度為k,若信任值集中維護,直接信任值更新算法更新一次需要遍歷網絡中所有鏈路。此時,直接信任值更新算法的時間復雜度約為O(Nk)。信任值存儲在網絡所有節點上,網絡節點僅需處理自身對其相鄰節點的信任值,不需要管理和維護整個信任值矩陣。因此,在分布存儲信任值情況下,直接信任值更新算法的時間復雜度為O(k)。 網絡節點按照信任值交互算法處理接受到的信任值信息。在信任值交互過程中,節點vi發送自身信任值信息的格式為 (2) 算法2信任值交互算法 輸出:交互后的信任值矩陣T(t) 6 end 7 forj←1:mdo 9 continue 10 else 12 end 13 end 14 returnT(t) 信任值交互算法的時間復雜度取決于接收到的相鄰節點信任值信息量。對于節點平均度為k的網絡,網絡節點收到的相鄰節點信任值信息包含k個節點信任值信息。因此,信任值交互算法的時間復雜度約為O(k),單個節點需要處理所有相鄰節點發送的節點信任值信息,時間復雜度約為O(k2)。信任值在存儲和交互過程中需要占用存儲空間和帶寬,平均信任值存儲所需空間約為k(li+lt) bit,其中li為節點vi標識信息的長度,lt為信任值本身的長度。從網絡節點層面分析,一個節點將自身信任值信息發送至所有相鄰節點,發送的信息量約為k2(li+lt) bit,網絡節點發送信息量之和為Nk2(li+lt) bit。通常,節點vi發送給其相鄰節點vj的信任值信息包含3類:①vj自身信任值信息;②共同相鄰節點的信任值信息;③其他新節點信任值信息。對于信任值接受方,只有第2類信息是有必要的,為減少信任值共享過程中帶寬占用,考慮僅發送第2類信任值信息。設某個節點的平均聚類系數為clu,則該節點的相鄰節點之間彼此鏈接概率為clu,信息交互過程中所有節點需要發送的信息總量為Nk2clu·(li+lt) bit。在這種情況下,每個節點需要初步掌握相鄰節點鏈接情況,可以在第一次信任值交互后進行反饋,信息接收方在反饋中告知信息發送方哪些信息是必要的,并在自身鏈接發生變化時再次進行反饋。 信任值用于網絡中鏈路可信程度的標記,節點需要根據信任值判斷自身所處的安全環境。因此,信任值標記效果很大程度上決定著最終防御效果。為此,參考文獻[24-25]定義正確率A和漏檢率M (3) 式中:NI表示起點被標記為感染節點的鏈路數量;II表示起點為感染節點且被標記的鏈路數量;IA為網絡中實際起點為感染節點的鏈路數量;A為正確率,表示不可信鏈路標記正確的比例;M為漏檢率,表示不可信鏈路中未被標記的比例。 (4) (5) (6) 圖2是信任值交互前后網絡中鏈路標記情況,在包含6個節點的小型網絡中,節點v4和v6為感染節點,在通信過程中v3被v4感染,同樣轉化為感染節點。 (a)交互前 結合式(3)~(6)及圖2分析可得,信任值能夠有效提升信任值標記的正確率并降低漏檢率,提升信任值標記效果。具體表現為以下兩個方面:①直接信任值更新僅能通過相鄰節點對自身感染行為評估周圍信任值,通過信任值交互,則能使未被感染的節點從被感染的節點處獲取感染信息;②節點信任值一方面反映了自身對周圍節點的信任程度,同時也反映了自身狀態,當節點被感染后下調其所有信任值至最低,相鄰節點一旦接受到類似狀態的信任值信息,即可精準判斷該節點被感染。相對應地,這種信任值交互雖然能夠提升標記效果,但需要網絡中絕大部分節點客觀上可信,不存在惡意發送虛假信任值信息的行為。 在病毒傳播過程中,可交互信任值機制給定了所有鏈路信任值,用于標記節點之間的信任程度。節點可根據信任值評估自身周圍安全環境,為精確有效抑制病毒傳播提供依據。本節給出采用可交互信任值機制的病毒傳播抑制策略,流程如圖3所示。 圖3 網絡病毒傳播抑制流程 管理員根據當前網絡中的感染狀況對感染參數進行粗略估計,根據預估的參數值,計算采取相應病毒傳播抑制策略的閾值。設置信任值相關參數。用戶向管理員反饋感染狀況(新增感染節點數量),管理員根據反饋信息估計當前網絡安全等級并進行針對性調整,網絡安全等級具體表現為信任閾值Tthro和策略參數,可按照如下規則調整:①安全等級提升,網絡中不再出現感染節點,可以初步認定網絡達到安全狀態,Tthro下降;②安全等級下降,根據反饋信息,網絡中感染節點保持增長或數量維持不變,當前參數下不足以完全消除病毒,Tthro上調,當Tthro上調至最大仍然不足以消除病毒時,可考慮調整策略參數,加大調整程度;③維持安全等級,盡管仍然有新增感染節點出現,但總體上感染節點規模開始下降,可保持參數不變。 以鏈路中斷為例,參考文獻[7,26]所構建的SIRS病毒傳播模型描述網絡中病毒傳播情況,構建節點狀態轉化關系,如圖4所示。 S、I、R—易感狀態、感染狀態和免疫狀態;β—接觸感染概率;ω、δ、φ—相應狀態之間的轉化概率。 圖4對應的微分方程為 (7) 式中S(t)、I(t)、R(t)分別為t時刻S、I、R狀態的節點數。 根據文獻[7,26]中的穩定性分析可知,網絡能夠依靠自身免疫能力消除病毒的前提是平均度需滿足 (8) (9) 在抑制病毒傳播過程中,僅需斷開被標記為不可信的鏈路。結合圖3及本節分析,可根據網絡感染情況反饋,按照一定的規則調整信任閾值以及策略參數,即 (10) 仿真過程中,SIRS模型部分參數設置[7]如下:Tmin=-32,k=16,N=2 000,δ=0.1,ω=0.08,φ=0.2,時間單位為h,初始值設定為(S(0),I(0),R(0))=(1 800,200,0)。當β<0.015時,R0<1,網絡在無病毒平衡點處穩定;當β>0.015時,R0>1,網絡在有病毒平衡點處穩定。若采用IP地址作為節點標識,網絡節點存儲信任值信息平均占用空間約為608 bit,在內網環境下,如果系統管理員為每一個用戶設定編號,則僅需288 bit存儲空間。 病毒傳播需要依賴網絡中的信息流,病毒傳播網絡實際上是人的社交網絡在計算機網絡中的映射,因此本文在能夠反映社交網絡的小世界網絡中進行仿真實驗。具體步驟如下:①采用python的networkx復雜網絡工具,生成節點數為2 000、平均度為16的小世界網絡,其重連概率為0.3;②在隨機生成的小世界網絡中,按照圖4所示狀態轉化關系模擬網絡中病毒的傳播情況,記錄病毒傳播過程中的感染情況及節點數量變化;③采用matlab求解式(7)微分方程,將其結果用與步驟②中模擬的病毒傳播情況對比;④為生成的小世界網絡中的每一個節點建立信任值管理表(本文采用信任值矩陣來存儲信任關系),根據步驟②中記錄的信息,實時更新信任矩陣中的信任值。 本小節實驗在β=0.02時進行。無信任值交互和有信任值交互時不同信任值處的正確率如圖5所示。可以看出:無論有無信任值交互,信任值越低處正確率越高,原因是信任值恢復過程中,部分被標記的染節點的免疫,正確率也就隨之降低;可交互信任值機制在較低信任值處正確率較高,可達到無信任值交互時的2倍,在信任值較高處低于無信任值交互時的正確率;正確率隨信任值的曲線由上凸變為下凹,表明通過信任值交互,不可信鏈路在信任值較低處更加集中。 (a)無信任值交互 漏檢率如圖6所示。可以看出,信任閾值為-8、-16和-24時,可交互信任值機制的漏檢率分別下降了約0.72、0.7和0.6。這表明通過信任值交互標記了更多的不可信鏈路,不可信鏈路在信任值較低處的占比更大。 (a)無信任值交互 不可信狀態下的鏈路比例如表1所示。 表1 不可信狀態下的鏈路比例 結合表1、圖5和圖6分析可知,通過信任值交互,更多鏈路被標記為不可信鏈路,不可信范圍擴大,信任值交互加大了不可信范圍內真實不可信鏈路的密度,能為抑制病毒傳播提供更有益的參考。 以鏈路中斷為例,驗證采用可交互信任值機制的病毒傳播抑制策略的有效性,結果如圖7所示。可以看出,當β=0.175時,模擬病毒傳播結果與模型演化結果的均方誤差最小。 (a)β=0.02時的模擬病毒傳播情況 根據文獻[7,24],當β=0.175時,網絡穩定在有病毒平衡點P1(569.5,162.1,1 268.4)處,與模擬病毒傳播情況基本一致。由式(8)(9)可知,當k≤13.714時,能達到無病毒狀態。設置初始參數為Tthro=-24,p=22.8%,新增感染節點統計的時間段設置為20個單位時間。模型演化結果和模擬病毒傳播情況如圖8所示,策略執行過程中的參數變化情況如圖9所示。 (a)模型演化結果 (a)信任閾值 由圖8可知,所提策略能有效抑制網絡中病毒傳播。由圖9a和圖8b可知,信任閾值的變化符合網絡中感染節點數量的變化:當網絡中感染節點數量上升時,上調信任閾值,擴大鏈路中斷可執行范圍;當感染節點清零后,信任閾值及時恢復,使網絡恢復正常狀態。由圖9b可知,當信任閾值調整至最高仍然無法徹底消除病毒時,網絡能夠進一步地通過調整策略參數(不可信鏈路中斷比例)消除病毒。 本小節分析表明,采用可交互信任值機制的病毒傳播抑制策略在執行過程中能夠利用網絡中的感染信息(新增感染節點數量)對網絡安全環境進行評估,進而針對性地調整相關參數,實現徹底抑制病毒傳播。 采取同3.3小節相同的參數配置,在隨機鏈路中斷策略下,模擬病毒傳播情況如圖10所示。 圖10 隨機鏈路中斷策略下的模擬病毒傳播情況 與圖8b對比分析感染節點數量變化趨勢可知,采用可交互信任值機制的病毒傳播抑制策略能夠確保網絡安全,并且能通過信任閾值和鏈路中斷比例的調整加速網絡消除感染節點的速度。 可交互信任值機制的主要目的在于為病毒傳播抑制策略的實施提供依據,以便實施更加精準的隔離。鏈路是網絡中通信業務的載體,鏈路中斷在提升網絡安全性的同時會影響網絡通信能力,因此應對比隨機鏈路中斷策略和采用可交互信任值機制的鏈路中斷策略在實施過程中斷開鏈路的數量,圖11為二者執行過程中的鏈路中斷比例。可以看出,本文策略最高鏈路中斷比例僅為隨機鏈路中斷策略中斷鏈路比例均值的63%,不計感染節點清零后的階段,病毒防御過程中,本文策略中斷鏈路數量僅為隨機鏈路中斷策略的21%。因此,采用可交互信任值機制的隨機鏈路中斷策略較隨機鏈路中斷策略對網絡結構的改變更小。 圖11 不同策略執行過程中的鏈路中斷比例 對比圖8b、圖9和圖11可知,本文策略在執行過程中的鏈路中斷比例和網絡中感染節點的數量以及信任閾值變化趨勢在一定程度上吻合。隨著感染節點的減少,信任閾值和鏈路中斷比例逐漸提高,但鏈路中斷比例卻不斷下降,這是因為隨著感染節點和感染行為的減少,總體上連接感染節點的鏈路和被標記為不可信任的鏈路也隨之減少,并且隨著網絡徹底消除病毒,信任閾值下調,網絡也逐漸恢復至正常狀態。這表明可交互信任值機制能為病毒傳播策略的執行提供有效參考,并且可根據網絡中的具體安全環境調整參數,降低鏈路中斷過程中的隨機性,在提升安全性的同時降低對網絡結構的影響。 根據網絡病毒傳播和免疫特點,提出了可交互信任值機制,設計了新的病毒傳播抑制策略,并以隨機鏈路中斷為例,開展了仿真驗證。本文所提可交互信任值機制通過網絡中感染信息的收集處理和共享,為網絡中節點判斷安全環境提供了有力依據,實現了更加有效的防御。本文主要結論如下。 (1)相比傳統的信任值機制,可交互信任值機制通過信任值共享,提高了網絡中鏈路標記的效果,具體表現為信任值較低處正確率提高、整體漏檢率下降,使得信任值較低處的不可信鏈路密度更大。 (2)在病毒防御過程中,僅對低于信任值閾值的鏈路采取隔離中斷等措施能夠有效抑制病毒傳播。這表明在病毒傳播過程中,感染節點并非完全均勻分布,不同節點所處安全環境有所差異,具體表現為不同節點周圍感染節點數量不同。 (3)采用可交互信任值機制的病毒防御過程中,通過動態調整信任閾值及不可信鏈路隔離比例等參數可實現防御范圍的動態調整。 在后續工作中,將針對節點發布信息的可信度等因素,考慮引入相鄰節點可信因子對可交互信任值機制進行進一步優化。







1.3 信任值評估標準






2 病毒傳播抑制策略




3 仿真分析
3.1 實驗環境
3.2 正確率及漏檢率



3.3 有效性



3.4 安全性與對網絡結構的影響


4 結 論