《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 安全通論(9)——紅客篇
安全通論(9)——紅客篇
2016年微型機與應(yīng)用第23期
楊義先,鈕心忻
北京郵電大學 信息安全中心,北京 100876
摘要: 文章揭示了紅客的本質(zhì),即,維護系統(tǒng)的“安全熵”值,避免其突變,當然,如果能夠“使熵減少或不增”就最理想。通過對熵的時變微分方程的討論,分析了各種情況下,系統(tǒng)的安全態(tài)勢以及紅客的業(yè)績評價等。我們過去一直認為,網(wǎng)絡(luò)安全對抗的狀態(tài)只有兩個:此起、彼伏,或者說是“水漲”、“船高”,但卻忽略了另一個更重要的狀態(tài),即納什均衡!那時,攻防雙方的最佳策略都是“靜止不動”,至少表面上是這樣。
Abstract:
Key words :

  楊義先,鈕心忻

 ?。ū本┼]電大學 信息安全中心,北京 100876)

       編者按:文章揭示了紅客的本質(zhì),即,維護系統(tǒng)的“安全熵”值,避免其突變,當然,如果能夠“使熵減少或不增”就最理想。通過對熵的時變微分方程的討論,分析了各種情況下,系統(tǒng)的安全態(tài)勢以及紅客的業(yè)績評價等。我們過去一直認為,網(wǎng)絡(luò)安全對抗的狀態(tài)只有兩個:此起、彼伏,或者說是“水漲”、“船高”,但卻忽略了另一個更重要的狀態(tài),即納什均衡!那時,攻防雙方的最佳策略都是“靜止不動”,至少表面上是這樣。

0引言

  紅客是被黑客逼出來的,沒有黑客就不需要紅客。但遺憾的是,黑客不但沒有絕跡,而且還越來越多,越來越兇!

  在某種意義上,黑客代表“邪惡”,因此,黑客的行動都是在隱蔽環(huán)境下進行的,不敢對外公開。從而,黑客獲勝的主要法寶就是技術(shù)和其他“雞鳴狗盜”。

  在某種意義上,紅客代表“正義”,因此,紅客的行動都是公開的,他們可以光明正大地運用包括法律、法規(guī)、標準、管理、技術(shù)、教育等一切手段來捍衛(wèi)系統(tǒng)的安全。

  從表面上看,紅客的行動包括(但不限于)安裝防火墻、殺病毒、抓黑客、加解密、漏洞掃描、制定標準、頒布(或協(xié)助頒布)相關(guān)法律法規(guī),而且還經(jīng)常刪貼、封網(wǎng)、雇水軍等。但是,這些都是錯覺,如果要單一地考慮紅客的這些防衛(wèi)措施,那么,《安全通論》將無立足之地,而且系統(tǒng)的安全防守工作將越來越亂。過去,也許因為沒有搞清紅客的本質(zhì),所以,紅客才做了許多事倍功半的事情,甚至還做了不少負功,既沒有能擋住黑客的攻擊,又把自己的陣營搞得一團糟,甚至逼反了自己的“友軍”。其實,紅客的本意,是只想做一件事,那就是:維護系統(tǒng)的熵(或秩序)!或更準確地說,最好能夠“減少系統(tǒng)的熵”,次之是要“阻止系統(tǒng)的熵被增大”,至少要確保“系統(tǒng)的熵不要過快地增大”。因此,能夠維護好熵的紅客,才是合格的紅客;否則,就是差紅客,甚至是幫倒忙的紅客。

  過去一直認為,網(wǎng)絡(luò)安全對抗的狀態(tài)只有兩個:此起、彼伏(或者說是“水漲”、“船高”),但卻忽略了另一個更重要的狀態(tài):納什均衡!那時,攻防雙方的最佳策略,都是“靜止不動”,至少表面上是這樣。

  由于紅客可以使用黑客的所有技術(shù),所以,本文不再重復文獻[1-8]中提到過的所有技術(shù)部分,而是充分運用《系統(tǒng)論》[9]來揭示紅客的本質(zhì)。

1安全熵及其時變性研究

  考慮由紅客、黑客、用戶、網(wǎng)絡(luò)和服務(wù)等組成的系統(tǒng)。由“熱力學第二定律”可知該系統(tǒng)的熵(或秩序,或組織性)一定會隨著時間的流逝而不斷地自動增大,這意味著“系統(tǒng)的不安全性”也在不斷地增大。特別是黑客的存在,使得這種“熵增大”的趨勢更明顯,因為,黑客的實質(zhì)就是搞破壞,就是要搞亂系統(tǒng)的既定秩序;而與之相反,紅客的目的就是要有效阻止這種系統(tǒng)崩析(耗散)趨勢,確保用戶能夠按既定的秩序在系統(tǒng)中提供或獲得服務(wù)。當然,用戶的誤操作(或者紅客的亂操作)也會在實際上搞亂系統(tǒng),增大系統(tǒng)的熵。不過,為了清晰起見,本文不考慮諸如用戶誤操作、紅客和黑客失誤等無意行為所造成的亂序問題。

  由于有紅客、黑客等人為因素的影響,所以,網(wǎng)絡(luò)系統(tǒng)顯然不是“封閉系統(tǒng)”(如果只考慮設(shè)備,那么,系統(tǒng)就可看成是“封閉系統(tǒng)”,實際上,它還是一個“有限系統(tǒng)”),更由于紅客和黑客連續(xù)不斷的攻防對抗,使得系統(tǒng)熵(秩序的度量)不斷地被增大和縮小,即系統(tǒng)的熵始終是時變的。

  設(shè)系統(tǒng)的全部不安全因素為q1,q2,…,qn,記t時刻系統(tǒng)的熵為Q(t,q1,q2,…,qn),或者簡記為Q(t)。當Q(t)=0時,系統(tǒng)的熵達到最小值,此時系統(tǒng)的安全性就達到最大值(因為根據(jù)文獻[1],“安全”是“負熵”,或者說“不安全”是“熵”)。當然,一般情況下,熵總是正數(shù)。若Q(t)隨時間而增長,即微分dQ(t)/dt>0,那么,系統(tǒng)將變得越來越不安全;反之,若Q(t)隨時間而減少,即微分dQ(t)/dt<0,那么,系統(tǒng)將變得越來越安全。因此,以下將Q(t)稱為“安全熵”。而紅客的目標就是要努力使得“安全熵”越來越小,黑客則想使“安全熵”越來越大。

  對每個i(i=1,2,…,n),記Q(t,qi)(更簡單地記為Qi(t)或Qi)為在“只存在不安全因素qi”的條件下,在t時刻,系統(tǒng)的“安全熵”。那么,各個Qi(t)的時變情況便可以用方程組(1)來描述:

  QQ圖片20161230190044.png

  這里,任何一個Qi的變化都是所有其他各Qj(j≠i)的函數(shù);反過來,任一Qi的變化也承擔著所有其他量和整個方程組(1)的變化。

  下面針對一些特殊情況來仔細討論方程組(1)。

  如果各個Qi不隨時間而變化,即,dQi/dt=0,i=1,2,…,n(或者說f1(Q1,Q2,…,Qn)=f2(Q1,Q2,…,Qn)=…= fn(Q1,Q2,…,Qn)=0),那么,此時系統(tǒng)的“安全熵”就處于靜止狀態(tài),即系統(tǒng)的安全性既不變壞,也沒有變得更好。如果從系統(tǒng)剛剛投入運行開始(即t=0),紅客就能夠維護系統(tǒng),使其“安全熵”永遠處于靜止狀態(tài),那么,這樣的紅客就是成功的紅客!

  設(shè)Q*1,Q*2,…,Q*n是在靜止狀態(tài)下方程組(1)的一組解。對每個i,i=1,2,…,n,引入新的變量Q′i=Q*i-Qi,那么,方程組(1)就轉(zhuǎn)變成了方程組(2):

  QQ圖片20161230190047.png

  如果這個方程組可以展開為泰勒級數(shù),即得到如下方程組(3):

  QQ圖片20161230190052.png

  該方程組的通解是:

  QQ圖片20161230190056.png

  此處各個G都是常數(shù),λ(i), i=1,2,…,n,則是如下n×n階矩陣B=[bij]的行列式關(guān)于λ的特征方程的根,即方程det(B)=0的根,這里B=[bij],bii=aii-λ, i=1,2,…,n,而當i≠j時,bij=aij。

  上述特征方程的根λ(i)既可能是實數(shù),也可能是虛數(shù)。下面考慮幾種特別情況:

 ?。?)如果所有的特征根λ(i)都是實數(shù)且是負數(shù),那么,根據(jù)通解式可知,各Q’i將隨著時間的增加而趨近于0(因為e-∞=0),這說明紅客正在節(jié)節(jié)勝利,因為,“安全熵”變化率趨于0意味著:各個不安全因素正被逐步控制,系統(tǒng)的秩序也正在恢復之中。

 ?。?)同理,如果所有的特征根λ(i)都是復數(shù)且負數(shù)在其實數(shù)部分,那么,根據(jù)通解式可知,各Q′i也隨著時間的增加而趨近于0。這時,紅客也正在節(jié)節(jié)勝利中。

  由于Qi=Q*i-Q′i,i=1,2,…,n,所以,根據(jù)方程組(2)可知,在情況(1)和(2)中,Qi逼近靜態(tài)值Q*i,此時,系統(tǒng)所處的安全平衡狀態(tài)是穩(wěn)定的,因為,在一個足夠長的時間內(nèi),系統(tǒng)愈來愈逼近靜態(tài),系統(tǒng)的“安全熵”變化率始終逼近于0,即系統(tǒng)的秩序是長期穩(wěn)定的。

  (3)如果有一個特征根λ(i)是正數(shù)或0,那么,系統(tǒng)的平衡就不穩(wěn)定了,即系統(tǒng)的安全性也不穩(wěn)定了,紅客就有可能失控。

  (4)如果有一些特征根λ(i)是正數(shù)和復數(shù),那么,系統(tǒng)中就包含著周期項,因為,指數(shù)為復數(shù)的指數(shù)函數(shù)具有這樣的形式:

  QQ圖片20161230190100.png

  這里i為虛數(shù)單位。

  此時,系統(tǒng)的安全狀態(tài)會出現(xiàn)周期性的振動,即會出現(xiàn)紅客與黑客之間的反復“拉鋸戰(zhàn)”,雖然雙方會各有勝負,但是,總體趨勢是向著對紅客不利的混亂和不安全方向發(fā)展。

  為了使上面的討論更加形象,現(xiàn)在考慮n=2,即此時系統(tǒng)的不安全因素主要有兩個(比如“黑客攻擊”和“用戶操作失誤”這兩個宏觀的因素),那么方程組(1)就簡化為:

  QQ圖片20161230190104.png

  在可以展開為泰勒級數(shù)的假設(shè)下,它的解為:

  QQ圖片20161230190107.png

  其中Q*1和Q*2是使f1=f2=0而得到的Q1和Q2的靜態(tài)解,G是積分常數(shù);而λ(1)和λ(2)是特征方程(a11-λ)(a22-λ)-a12a21=0的根,而此二次方程的根為:

  λ=C/2±√[-D+C2/4]

  其中,C=a11+a22, D=a11a22-a12a21,√表示平方根。

  于是,可知:

 ?。?)若C<0,D>0,E=C2-4D>0,那么,特征方程的兩個根都是負的,因而,系統(tǒng)就會隨著時間的伸展趨向于穩(wěn)定在靜止狀態(tài)(Q*1,Q*2),這時,紅客將居于主動地位,系統(tǒng)的安全盡在掌控中。

  (2)若C<D,D>0,E=C2-4D<0,那么,特征方程的兩個根都是帶有負實數(shù)部分的復數(shù)解。此時,隨著時間的發(fā)展,系統(tǒng)的“安全熵”(Q1,Q2)將沿一個螺旋狀的曲線軌跡而逼近靜止狀態(tài)(Q*1,Q*2),這時,對紅客來說也是有利的。

 ?。?)若C=0,D>0,E<0,那么,特征方程的兩個解都是虛數(shù),因此,方程組的解中就包含有周期項,就會出現(xiàn)圍繞靜止值的擺動或旋轉(zhuǎn),即代表“安全熵”的點(Q1,Q2)會圍繞靜止態(tài)(Q*1,Q*2)畫出一條封閉的曲線,這時,紅客與黑客難分勝負,雙方不斷地進行著“拉鋸戰(zhàn)”。

 ?。?)若C>0,D>0,E>0,那么,特征方程的兩個解都是正數(shù),此時,完全不存在靜態(tài),或者說,此時系統(tǒng)更混亂,紅客完全失控,只能眼睜睜地看著系統(tǒng)最終崩潰!

  更進一步,下面再來考慮n=1這種最簡單的情況,此時,系統(tǒng)的不安全因素只有一個(比如黑客的破壞)。于是,方程組(1)就簡化為方程:dQ/dt=f(Q)。若將f(Q)展開為泰勒級數(shù),那么,就得到如下方程:

  dQ/dt=a1Q+a11Q2+…

  此泰勒式中未包含常數(shù)項,因為,我們可以假定:“不安全因素”不會自然發(fā)生,即,系統(tǒng)剛剛被使用(t=0)的那一刻,系統(tǒng)不會出現(xiàn)安全問題。

  如果粗略地只保留該泰勒級數(shù)中的第一項,那就有dQ/dt=a1Q,這說明:系統(tǒng)的安全態(tài)勢將完全取決于常數(shù)a1是正還是負。如果a1為負,那么“安全熵”整體上向減少的方向發(fā)展,即系統(tǒng)的安全性會越來越好,對紅客有利;如果a1為正,那么“安全熵”整體上向增加的方向發(fā)展,即系統(tǒng)的安全性會越來越差,對紅客不利。而且,系統(tǒng)的這種越來越安全(或越來越不安全)的態(tài)勢遵從指數(shù)定律:Q=Q0ea(1)t,其中,Q0表示初始時刻(t=0)時系統(tǒng)的“安全熵”;而a(1)是a1的等價表達式,這主要是為了簡化公式中足標體系的復雜度(這是因為Q=Q0ea(1)t是方程dQ/dt=a1Q的解)。該指數(shù)定律表明:如果系統(tǒng)的安全態(tài)勢在向好的方面發(fā)展,那么,變好的速度會越來越快;反之,如果系統(tǒng)的安全態(tài)勢在向壞的方面發(fā)展,那么,變壞的速度也會越來越快,甚至瞬間崩潰!

  如果再精細一點,即,保留上述泰勒級數(shù)的前兩項,于是,就有方程:

  dQ/dt=a1Q+a11Q2

  該方程的解為Q=[a1cea(1)t]/[1-a11cea(1)t]。注意,隨著時間的延伸,該解所畫出的曲線就是所謂的“對數(shù)曲線”,它是一個趨向于某極限的S形曲線,也就是說,此時,從安全性角度來看,系統(tǒng)的變好和變壞,還是有“底線”的。

  下面,我們再換一個角度來看系統(tǒng)安全,即,跳出系統(tǒng),完全以旁觀的第三方身份來看紅客與黑客之間如何“道高一尺魔高一丈”地“水漲船高”。

  此時,影響系統(tǒng)安全性的因素只有兩個(即,紅客努力使系統(tǒng)變得更安全,使“安全熵”不增;而黑客卻努力要使系統(tǒng)不安全,增加“安全熵”),而且,假如這兩個因素之間還是相互獨立的,即,各方都埋頭于自己的“攻”或“守”,或者說,紅客(黑客)的“安全熵”隨時間變化的情況與黑客(紅客)的“安全熵”無關(guān),而且還只考慮“主要矛盾”,即,此時在方程組(3)中,每個方程式只保留第1項,其他系數(shù)都為0。于是,方程組(3)被簡化為:

  QQ圖片20161230190113.png

  解此方程組,可得其解為:Q1=c1ea(1)t和Q2=c2ea(2)t,從中再解出時間t,可得:t=[lnQ1-lnc1]/a1=[lnQ2-lnc2]/a2。設(shè)a=a1/a2,b=c1/(c2)a,那么就有如下重要公式:

  Q1=b(Q2)a

  它說明紅客與黑客的“安全熵”(Q1和Q2)彼此之間是冪函數(shù)關(guān)系,比如,紅客維護系統(tǒng)安全所貢獻的“安全熵”是黑客破壞系統(tǒng)安全所增大“安全熵”的冪函數(shù)。為更清楚起見,將上面式(5)重寫如下:

  {[dQ1/dt][1/Q1]}:{[dQ2/dt][1/Q2]}=a或者dQ1/dt=a(Q1/Q2)(dQ2/dt)

  這里,前一部分說明:在只考慮紅客和黑客的“安全熵”(Q1和Q2)的前提下,紅客使其“安全熵”的相對增長率([dQ1/dt][1/Q1])與黑客的“安全熵”的相對增長率([dQ2/dt][1/Q2])之間的比值竟然是常數(shù)!而后一部分,更出人意料地表示:紅客“安全熵”的時變率(dQ1/dt)與黑客“安全熵”的時變率(dQ2/dt)之間的關(guān)系,竟然是如此簡潔!

  若a1>a2,即紅客“安全熵”Q1的增長率大于黑客“安全熵”Q2的增長率,那么,a=a1/a2>1,它表明紅客對系統(tǒng)整體安全性走勢的掌控力更強;反過來,若a1<a2,即紅客“安全熵”Q1的增長率小于黑客“安全熵”Q2的增長率,那么,a=a1/a2<1,它表明紅客對系統(tǒng)安全性走勢的掌控力不如黑客。

  再考慮泰勒級數(shù)方程組(3)的另一種情況:各個不安全因素彼此之間相互獨立(比如,由文獻[1]可知,當這些不安全因素就是系統(tǒng)安全“經(jīng)絡(luò)圖”中的全體“元誘因”時,這些不安全因素之間就是相互獨立的),此時,方程組(3)就簡化為:

  dQi/dt=ai1Qi+ai11(Qi)2+ai111(Qi)3+…

  此時,不安全因素對系統(tǒng)“安全熵”的整體影響,就等于每個不安全因素對系統(tǒng)“安全熵”各自影響的累加,即此時有“整體等于部分和”。

  方程組(3)還有一種特殊情況值得單獨說明,即假如有某個不安全因素qs的泰勒展開式系數(shù)在各個方程中都很大,而其他不安全因素的泰勒系數(shù)卻很小甚至為0,那么,不安全因素qs就是不安全因素的主導部分,系統(tǒng)的不安全性可能主要是由它而引發(fā),因此,這樣的不安全因素qs就應(yīng)該是紅客關(guān)注的重點,要盡力避免它成為系統(tǒng)崩潰的“導火索”。

2結(jié)束語

  雖然紅客與黑客在技術(shù)方面幾乎沒有區(qū)別,甚至他們的技術(shù)可以彼此通用,但是,作為系統(tǒng)安全的正、反兩種力量的代表,他們在角色方面的差別還是很大的,因此,值得專門設(shè)立篇幅來進行研究。

  如果說黑客的手段雜亂無章,那么,紅客的手段更是一團亂麻(甚至紅客還會“好心辦壞事”,即做一些本該黑客搞的破壞),如何找到一條線索來把“這團亂麻”理清,這是一個嚴峻的挑戰(zhàn)。幸好我們偶然從文獻[1-8]中發(fā)現(xiàn)了一個總是伴隨著《安全通論》的“幽靈”,即“熵”,而且,運氣更好的是,經(jīng)過分析,“熵”竟然與紅客的本質(zhì)密不可分,而且還是解開“亂麻”的重要線索。貝塔朗菲的《一般系統(tǒng)論》[9]對系統(tǒng)熵進行了恰到好處的研究,因此,被本文深度參考。文中的許多思路和方法都依賴于“系統(tǒng)論”,只不過貝塔朗菲用它們?nèi)パ芯可锏男玛惔x系統(tǒng),而本文用它們來研究網(wǎng)絡(luò)系統(tǒng);貝塔朗菲研究的是生物熵,而此處研究的是“安全熵”而已。

  本文揭示了紅客的實質(zhì)是“維護系統(tǒng)的安全熵”,并詳細分析了系統(tǒng)“安全熵”的多種情況下的時變特性。但是,到底應(yīng)該怎樣做才能夠有效地阻止“安全熵”變大的趨勢?這當然是一個重要而又困難的問題,過去全球安全界的同行們做了許多“埋頭拉車”的具體工作,但是,在“抬頭看路”方面還真的做得不夠,比如:

  (1)都說安全是“三分技術(shù),七分管理”,但是,真正落實到行動上時,大家在“安全管理”方面花費的精力遠遠未達到“七分”。因此,我們希望能夠在《安全通論》中,專門開辟“管理篇”來詳細研究“如何用管理的辦法來維護系統(tǒng)的安全熵”;

 ?。?)及時反饋也是紅客維護“安全熵”并在必要時對其進行微調(diào)的重要辦法,因此,維納的《控制論》在《安全通論》中也應(yīng)該有特殊的地位,但是,突破口確實很難找。

  對紅客的研究肯定不僅僅限于本文的這些內(nèi)容,但是,為了盡快搭建起《安全通論》的核心骨架,吸引全球盡可能多的安全專家來一起“挖金礦”,我們不得不先放棄一些細節(jié),比如,其實開放系統(tǒng)的“安全熵”永遠不會處于平衡狀態(tài),而是會維持在所謂的“穩(wěn)態(tài)”上,這與有機體的新陳代謝相同,而且,同樣具有“異因同果性”,即,由不同的原因?qū)е孪嗤慕Y(jié)果,比如,或者是因為“黑客太弱”,或者是因為“紅客太強”,而使得系統(tǒng)的安全無恙;反過來,或者是因為“黑客太強”,或者是因為“紅客做了負功”,而使得系統(tǒng)崩潰。系統(tǒng)一旦達到“穩(wěn)態(tài)”,就必定表現(xiàn)出“異因同果性”。

  參考文獻

 ?。?] 楊義先,鈕心忻.安全通論(1)——經(jīng)絡(luò)篇[J].微型機與應(yīng)用,2016,35(15):1-4.

 ?。?] 楊義先,鈕心忻.安全通論(2)——攻防篇之“盲對抗”[J].微型機與應(yīng)用,2016,35(16):1-5.

 ?。?] 楊義先,鈕心忻,安全通論(3)——攻防篇之“非盲對抗”之“石頭剪刀布”[J].微型機與應(yīng)用,2016,35:(17)1-3.

 ?。?] 楊義先,鈕心忻,安全通論(4)——攻防篇之“非盲對抗”之“童趣游戲”[J].微型機與應(yīng)用,2016,35(18):3-5,9.

 ?。?] 楊義先,鈕心忻,安全通論(5)——攻防篇之“非盲對抗”之“勸酒令”[J].微型機與應(yīng)用,2016,35(19):2-6.

 ?。?] 楊義先,鈕心忻,安全通論(6)——攻防篇之“多人盲對抗”[J].微型機與應(yīng)用,2016,35(20):1-4.

  [7] 楊義先,鈕心忻,安全通論(7)——黑客篇之“戰(zhàn)術(shù)研究”[J].微型機與應(yīng)用,2016,35(21):1-4.

 ?。?] 楊義先,鈕心忻,安全通論(8)——黑客篇之“戰(zhàn)略研究”[J].微型機與應(yīng)用,2016,35(22):1-5.

 ?。?] 馮·貝塔朗菲.一般系統(tǒng)論:基礎(chǔ)、發(fā)展和應(yīng)用(第1版)[M].林康義,魏宏森,等,譯.北京:清華大學出版社,1987.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。