劉其源,焦 健,曹宏盛
(1.北京信息科技大學 網絡文化與數字傳播北京市重點實驗室,北京 100101; 2.北京信息科技大學 計算機學院,北京 100101)(*通信作者電子郵箱jiaojian@bistu.edu.cn)
Android平臺上的隱私信息泄漏檢測主要采用污點分析技術,該技術先確定敏感信息源Source和泄漏點Sink,然后再對敏感信息從Source到Sink的傳播路徑進行靜態分析[1-2]或動態監控[3-4],最終判斷信息源和泄漏點間是否存在一條傳播路徑。污點分析本質是一種信息流分析技術,信息流分為顯式和隱式,顯式信息流(Explicit Information Flow, EIF)產生于數據依賴,而隱式信息流(Implicit Information Flow, IIF)產生于控制依賴[5]。然而,現有的污點分析技術如FlowDroid[1]、TaintDroid[3]都只考慮了EIF,它們在EIF(數據依賴)泄露檢測領域是有效的;然而對于IIF(控制依賴)而言,由于控制結構無規律的內容轉換會對分支結構的執行造成影響,進而影響程序控制流的走向[6],且控制結構的條件語句變量與分支變量間無直接的EIF傳遞關系,因此,上述方法對隱式流的分析是無效的。
文獻[6]的實驗表明FlowDroid不支持隱式流漏洞的檢測,說明傳統的污點分析方法在隱式流中的污點傳播存在缺陷,污點標記會在控制結構進行內容轉換時丟失,導致基于該技術的隱私泄漏檢測出現較高的漏報率。文獻[7]將動態污點分析與靜態分析結合以追蹤IIF,使用Dytan工具首先靜態地分析出所有的控制結構,然后將控制結構條件表達式中謂詞變量的污點不加區分地傳遞給每一個分支中的一般語句變量;該方法雖然降低甚至避免了漏報率,但產生了過度污染的問題,使得檢測系統的誤報率較高。文獻[5]專門針對IIF展開研究,分析了Android環境,總結出了五大類能夠產生IIF的結構,同時通過構建的PoC(Proof of Concept)對幾款Android惡意應用進行了驗證;它們雖然對隱式流和控制結構之間的關系進行了研究,但并沒有深入地給出控制結構內各關鍵元素間關系結構的抽象模型。
為了解決Android應用中隱式流的檢測問題,使得基于污點分析的檢測方法在控制結構中能夠獲得準確的變量傳遞關系,最終提高檢測的準確率,本文使用本體技術[8]對產生控制依賴的控制結構進行建模,描述控制結構中各關鍵元素(如結構類型、條件語句謂詞變量、操作符、分支語句變量等)間的語義關系。本體能夠描述控制結構中各組分的概念以及它們之間的關系[9],并且是可計算的,結合語義網規則語言(Semantic Web Rule Language, SWRL)規則[10]可以實現基于嚴格控制依賴(Strict Control Dependence, SCD)關系[11]的隱式信息流的準確判定,最終得到隱式流的變量傳遞關系。本文的創新點在于:利用本體對控制結構建模,建立了可共享的領域知識模型,使得程序源碼的語義被明確定義,將靜態的程序結構轉化為本體實例,結合推理引擎與SWRL規則,解決基于SCD的IIF檢測問題。
Android程序語句間的控制依賴關系是導致隱式信息流的原因,分析隱式信息流首先定義程序語句間的控制依賴關系。控制依賴關系可以分為兩類,如圖1所示,其中,嚴格控制依賴關系導致的隱式信息流是本文要研究的內容,它在本質上類似于程序中的數據依賴關系,能夠將隱私信息準確地泄露給外界。

圖1 控制依賴關系的分類


嚴格控制依賴關系可以分為兩類:基于等價(“==”“!=”)測試和基于非等價(“>”“<”“>=”“<=”)測試,兩類SCD關系產生的形式不同,但其本質是一致的,即都能產生變量間的強相關性。比較操作“==”的真分支產生SCD,比較操作“!=”的假分支產生SCD,“!=”操作也會產生一種隱式的SCD,它由執行忽略導致。其余非等價比較操作通過條件語句嵌套產生數值限制,從而產生SCD。
為了描述不同性質信息流的差異,給出變量間相關系數的定理說明,也是變量間相關性的一個粗粒度劃分。
定理1 變量相關系數。給定同一程序中存在的兩個變量var1與var2,變量間的關系為一個二元函數:
r=R(var1,var2); 0≤r≤1
其中,r稱為變量var1與var2間的相關系數,通過相關系數r的值表示變量間相關性的強弱,計算規則如式(1):

(1)
1)r=0時,變量間無直接相關性,變量var1值的任何變化不會影響變量var2的值。
2)0 3)r=1時,變量間存在強相關性,變量var1值的任何變化一定會影響變量var2的值。 以程序1為例,變量secret的值表示接收的隱私數據,而變量pub是受條件語句限制的一般語句變量。語句S2的執行是一種顯式的信息流傳遞,變量間的數值傳遞通過賦值操作完成,此時相關系數r=1;觀察語句S3~S5,變量secret與變量pub間也存在一種信息流傳遞關系,這種傳遞關系控制依賴于對應的條件表達式滿足與否,與S2的顯式值傳遞關系有本質不同,這種信息流被稱為隱式信息流。 程序1 S1 secret=get_input(); S2 m=secret; S3 if (secret==0) pub=0; S4 else if (secret>0) pub=1; S5 else pub=-1; 對于IIF而言,盡管兩個變量間無直接的數據流傳遞關系,但依據不同的控制依賴關系仍可由pub值推導出關于secret值的部分或全部信息[12];例如:由變量pub值為0知語句S3被執行,能推知變量secret值也為0,這種語句分支稱之為SCD分支,僅考慮S3的單個分支時,變量相關系數也為r=1;由變量pub值為1知語句S4被執行,只能推知變量secret的值大于0,這種分支的控制依賴關系是松散控制依賴。兩種控制依賴關系的本質區別在于其條件表達式的控制條件不同,松散控制依賴存在多個滿足控制條件的值,而SCD只有一個。根據污點分析技術[3]可知,若變量secret為污點變量,污點標記會隨著控制轉換的發生停止傳播,變量pub不會被污染;攻擊者若能夠根據獲取的pub值準確推知變量secret的值,那么存在一條隱式的隱私信息泄露路徑(因為未被污染的變量在離開系統邊界時不會被檢出),它是基于SCD的隱式流;攻擊者利用松散控制依賴引發的IIF只能得到變量的值范圍,威脅較小;因此,相較于松散控制依賴引發的IIF,基于SCD的IIF更具威脅,也是本文要研究的內容。IIF分析的關鍵在于得到準確的變量傳遞關系。 為實現Android隱式信息流的檢測,給出控制結構領域本體的定義和模型構建說明,包括類的劃分與屬性的確定。其次,結合該本體模型分析基于SCD的IIF的產生條件并給出判定規則,最后給出判定規則對應的SWRL推理規則。 程序控制結構中存在多種元素。在構建控制結構本體的時候,把控制結構及它的變量、變量值、操作符和參數設置為類或數據屬性,類與類之間的關系設置成關聯屬性[13]。文獻[5]對能夠產生Android應用中存在的IIF的控制結構類型進行了總結,本文歸納如表1所示;綜合分析給出控制結構的六元組模型,該模型能準確描述單分支或多分支組合控制結構。 表1 控制語句結構特征 除了For循環和Exception-prone控制結構外,其他4類分支數最多可達n的控制結構均能構造出符合六元組模型的程序段,本研究在本體構建中單獨對這兩種分支數為2的結構進行了相應的處理。 定義3 控制結構。基本控制結構是一個六元組K,K=(secret,Sa,Vi,cb,Nc,Pv),其中:secret是各分支條件表達式中的共有謂詞變量,且secret?Nc;Sa是各分支語句比較操作符的集合,記作Sa={si|si∈{“==”,“!=”,“>”,“>=”,“<”,“<=”}};Vi是各分支條件表達式中與變量secret參與條件判定操作的謂詞變量或常量集;cb為控制結構K的分支數;Nc是各分支中一般語句P的變量集;Pv為變量在各分支中的取值集合,v∈Nc。 根據基本控制結構K中的元素組成,定義控制結構領域本體,給出本體類及其對象屬性和數據屬性,如表2~3所示。由控制結構定義可以描述惡意代碼中的基本控制結構,根據相應的推理規則可判定該結構中是否存在隱式流,進而使得惡意代碼中的隱式流漏洞顯式輸出。程序1的解析說明了結構模型與惡意代碼功能間的聯系。 表2 控制結構本體的部分類信息 表3 控制結構本體的部分對象屬性和數據屬性信息 表2中,K-structure、For-loop、Secret_var_name、Pub_var_name、First_operator、Second_operator是六個平行的基本類。分別代表控制結構的名稱、for循環類結構的名稱、條件表達式謂詞變量、一般語句變量以及for循環結構的循環控制條件的第一個變量和第二個變量。對象屬性和數據屬性的部分信息如表3所示。 首先給出基本SCD關系的識別及其特殊形式轉化的方法,使其能在模型中被實例化[14];其次,根據SCD隱式流(單分支或多分支組合)的產生特點給出變量間關系的判定規則。 SCD關系產生的來源分為兩類:基于等價測試與非等價測試。等價測試操作“==”和“!=”能直接產生SCD,可以直接處理。對于由“!=”操作產生的隱式SCD如圖2(a)所示,“!=”操作的假分支產生SCD關系,但是當假分支被執行,通過發送變量x1(x1為真分支變量)可以知道變量x1的值為0,此時可知真分支未被執行,假分支條件滿足,確定a的值為5,這種SCD產生的原因是假分支中忽略了x1的存在;解決方法如圖2(a)、(b)所示:“!=”操作的真分支變量集T1減去假分支變量集T2有{x1}-{x2}={x1},在假分支中添加語句x1=x1;不會改變原程序的語義,同時變量x1對假分支的SCD關系也被轉化為顯式的,問題得解。 圖2 隱式SCD及處理方法 非等價測試操作“<”“>=”等不能直接產生SCD,需要在實例化前進行處理轉化成一般的SCD,處理步驟為: 1)確定各層嵌套條件表達式謂詞變量是否一致; 2)若一致,確定謂詞變量數據類型; 3)若為整型數據,將最外層條件逐步與內層條件結合,分析能否確定謂詞變量的值; 4)若前n層的條件結合確定了謂詞變量值,那么在第n層產生了SCD。 基于“==”操作的SCD非常普遍,If-else語句、Switch語句、Throw異常拋出語句以及Polymorphism多態語句等結構均能通過“==”操作(或本質是等價比較操作)構造實用的SCD,通過不同的方式完成基于SCD的數據控制轉換。基于SCD的多分支結構判定規則為:多個分支的條件表達式存在一致的謂詞變量,變量不一致時的處理方法是先將分支按不同謂詞變量分類,再分別處理。基于SCD的隱式流變量間關系判定規則分兩種情況:1)基于SCD的單分支語句結構。變量間相關性恒為1。2)基于SCD的多分支組合語句結構。變量間關系的判定規則與定理1中的式(1)一致。根據以上的判定規則有3種變量關系存在,去除變量相關性為零的情況,還有弱相關性與強相關性兩種:r∈(0,1)表示變量間具有弱相關性,這是由一般語句變量在多個分支中存在相同版本值導致的;r=1表示變量間具有強相關性,變量在多個分支中的版本值均不等,存在當條件語句變量secret值變化,變量的值一定隨之變化的嚴格對應關系。 隱式泄露判斷條件為:相關性r∈(0,1)與r=1的變量間存在基于SCD的隱式信息泄露。 根據2.1節控制結構領域本體的定義以及2.2節基于SCD的IIF判定部分得到的結論,分別給出基于SCD的單分支結構和多分支組合結構的SWRL規則。3.1節的推理實驗表明:由這些規則得到的推理結果與隱式流樣本集中所標識的情況基本一致,所以該推理規則具有一定的合理性。 1)單分支結構。單分支一般語句中每個變量的取值僅有一個,條件表達式的判定操作直接決定了該隱式流的性質。單分支結構的一條SWRL規則如Rule- 1所示: Rule- 1: K-structure(?x)∧hasbranch(?x,1)∧ hassecretname(?x,?sn)∧hasoperator1(?x,?op)∧ swrlb:equal(?op,"==")∧haspubname(?x,?pub)→ strongRbetween(?sn,?pub) 對規則1解析如下:K-structure(?x)表示x是K-structure類的一個實例;hasbranch(?x,1)表示實例x為單分支結構;hassecretname(?x,?sn)表示實例x的條件語句謂詞變量為“sn”;hasoperator1(?x,?op)表示實例x的比較操作為“op”;swrlb:equal(?op,“==”)表示op為等價判定操作;haspubname(?x,?pub)表示實例x的一般語句變量為“pub”;strongRbetween(?sn,?pub)表示變量“sn”與變量“pub”間存在強相關性。其他基于SCD的單分支結構SWRL規則與規則1類似,限于篇幅,不再作詳細解釋。 2)多分支結構。三分支結構的一條SWRL規則如Rule- 2所示。其他的多分支情況對應的SWRL規則在這里不予展示,其基本原理是一致的。 Rule- 2:K-structure(?x)∧hasbranch(?x,3)∧ hassecretname(?x,?sn)∧hasoperator1(?x,?op1)∧ swrlb:equal(?op1,"==")∧hasoperator2(?x,?op2)∧ swrlb:equal(?op2,"==")∧hasoperator3(?x,?op3)∧ swrlb:equal(?op3,"==")∧haspubname(?x,?pub)∧ haspubvalue1(?x,?pv1)∧haspubvalue2(?x,?pv2)∧ haspubvalue3(?x,?pv3)∧swrlb:notEqual(?pv1, ?pv2)∧swrlb:notEqual(?pv1,?pv3)∧ swrlb:notEqual(?pv2,?pv3)→strongRbetween(?sn,?pub) 本文實驗環境為Windows 7操作系統,內存4 GB,CPU是Intel Core i5- 4590 3.30 GHz。本體編輯軟件為Protégé 3.4.7[15],推理引擎使用的是Jess 7.1p2。實驗分為三個部分:首先,將構建的控制結構本體與SWRL規則導入Jess[16]推理引擎中進行推理,得到隱含的變量間關系,從而驗證本文中方法的可行性;其次,采用公開樣本集進行測試,分析該方法的實用性;最后,針對推理引擎的推理性能進行大量的推理實驗,給出系統的性能分析。 安裝并配置推理引擎Jess,在規則編輯處添加設定的所有SWRL規則;通過Protégé本體構建工具添加控制結構的本體實例,實例的自動化添加可采用Jena提供的接口。 以程序2、3為例,程序3來自EC-SPRIDE(European Center for Security and Privacy by Design)研究機構貢獻的DroidBench1.2,它用來對手機的IMEI進行轉換以逃避檢測;將其與圖2(b)中的程序段添加到本體實例。詳細的SWRL規則和實驗結果示例如圖3所示。圖3的SWRL規則中,Branch1-Rule1和Branch1-Rule2表達的意思為:如果實例為單分支結構,且條件表達式的謂詞變量和一般語句變量均存在,那么操作為等價操作與非等價操作時的變量間關系不同,輸出不同推理結果。Branch2-Rule和Branch3-Rule等分別表示分支數為2和3等情況下的規則。 程序2 S1 secret1=get_input(); S2 switch(secret1){ S3 case ′a′:pub1=′a′;pub2=0;mt="post";break; S4 case′b′:pub1=′b′;pub2=0;mt="post";break; 為了分析深港股市股指收益率波動動態傳遞程度是否在“深港通”開通前后兩階段發生變化,將兩地市場的日收益率動態關聯性的數據分為前后兩段,然后進行配對樣本T檢驗,結果如表5所示。 S5 case ′c′:pub1=′c′;pub2=1;mt="post";break; S6 case ′d′:pub1=′d′;pub2=1;mt="post";break;} S7 send(pub1,pub2,mt); 圖3 SWRL規則和實驗結果示例 程序3 S1 private String obfuscateIMEI(String secret){ S2 String pub=""; S4 switch(c){ S5 case ′0′:pub+=′a′;break; S6 case ′1′:pub+=′b′;break; S7 case ′2′:pub+=′c′;break; S8 case ′3′:pub+=′d′;break; S9 case ′4′:pub+=′e′;break; S10 case ′5′:pub+=′f′;break; S11 case ′6′:pub+=′g′;break; S12 case ′7′:pub+=′h′;break; S13 case ′8′:pub+=′i′;break; S14 case ′9′:pub+=′j′;break; S15 default:System.err.println("Problem in obfuscate IMEI for character:"+c);} S16 } S17 return pub; S18 } 從實驗結果看,該推理系統可以對secret、pub、secret1、pub1、pub2、mt等變量之間是否存在隱式信息泄露作出準確判斷,圖3中的實驗推理結果如表4所示,推理結果是多個隱式流的變量關系集合,稱其為隱式流集。 在表4中:相關系數r為1的變量間存在基于SCD的隱式信息泄露,信息的映射關系是1- 2- 1(一對一);r∈(0,1)的變量間也存在基于SCD的隱式信息泄露,同時存在1- 2- 1與n- 2- 1(多對一)映射(或同時存在多個n- 2- 1映射);所謂多對一映射就是指多個基于SCD的分支語句中,存在兩個或以上分支的條件表達式對應的一般語句變量值相同;r=0的變量間不存在基于SCD隱式信息泄露。 表4 實驗推理結果 為驗證方法的實用性,實驗采用了樣本庫DroidBench[1]中的4個隱式流用例ImplicitFlow1~4以及樣本庫Android Malware Genome Project[17]中的3款隱私竊取惡意軟件GoldDream、DroidKungFu、GamblerSMS進行了測試,漏洞在DroidBench中的位置是已知的,3款惡意軟件均在特定的位置添加了隱式流漏洞;輔助工具為apk反編譯工具apktool、dex2jar。結果如表5所示,其中:“LOC”表示程序的規模,“Source/Sink”表示程序擁有的Source和Sink要素數量[18],R表示檢出的隱式流漏洞數,TR表示檢查后確認的真實隱式流漏洞數。 由表5的測試結果可知,本體模型能夠檢測出所有樣本中的隱式流漏洞24個,其中真實漏洞20個,檢測準確率達到83.3%。該結果表明,使用本體模型進行隱式流的檢測具有顯著的效果。 表5 樣本集實驗結果 本體模型與推理引擎結合的推理效率分析是必要的,結構合理的本體模型能夠提升推理效率。性能分析從兩個方面進行:首先,在本體中添加30個實例,該實例來源于惡意樣本中已知的隱式流控制結構,考慮30個本體實例的控制結構分支數依次遞增時的平均推理耗時,平均耗時數據取6組測試的平均值,單位均為ms,如圖4所示。其次,以6個本體實例為一組,6個實例分別為6種不同分支數的結構,遞增組數,觀察平均推理耗時的變化情況,如圖5所示。 圖4 分支數遞增的平均耗時曲線 對于只是實例數量增加的圖5,其耗時上升速度明顯低于圖4的分支數遞增導致的耗時上升速度,從而可得結論:推理性能的好壞取決于推理規則的復雜程度,隨著分支數的增加,規則變得復雜,因而耗時上升較快。 圖5 實例數遞增的平均耗時曲線 本文從Android隱式信息流的產生原因入手,分析了能夠產生隱式信息流的控制結構,并對控制結構的基本控制依賴關系與SCD關系進行了定義;分析出基于SCD的隱式流是導致隱式信息泄露的主要原因。為解決Android應用中隱式流的準確檢測問題,構建了控制結構領域本體模型,給出由隱式流分析得到的SWRL規則,并在本體中添加了樣本實例,共同導入到Jess進行了推理分析。對DroidBench和Malware Genome Project惡意軟件樣本的實驗結果表明,該模型能夠有效地進行隱式信息泄露的推理,且推理結果與人工分析得出的結論一致。 需要指出的是:基于松散控制依賴的隱式流無法建立變量間的一對一映射關系,對信息泄露威脅較小,故本文未予考慮;不足之處在于文中的本體實例尚未實現自動化添加,下一步可以采用Jena接口實現自動添加,提升效率。 References) [1] ARZT S, RASTHOFER S, FRITZ C, et al. FlowDroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for Android apps [J]. ACM SIGPLAN Notices, 2014, 49(6): 259-269. [2] GORDON M I, KIM D, PERKINS J, et al. Information-flow analysis of Android applications in DroidSafe [C]// Proceedings of the 22nd Network and Distributed System Security Symposium. San Diego, CA: ISOC, 2015: 1-16. [3] ENCK W, GILBERT P, HAN S, et al. TaintDroid: an information-flow tracking system for realtime privacy monitoring on smartphones [J]. ACM Transactions on Computer Systems, 2014, 32(2): 5-19. [4] SCHWARTZ E J, AVGERINOS T, BRUMLEY D. All you ever wanted to know about dynamic taint analysis and forward symbolic execution (but might have been afraid to ask) [C]// Proceedings of the 2010 IEEE symposium on Security and Privacy. Piscataway, NJ: IEEE, 2010: 317-331. [5] YOU W, LIANG B, LI J, et al. Android implicit information flow demystified [C]// Proceedings of the 10th ACM Symposium on Information, Computer and Communications Security. Now York: ACM, 2015: 585-590. [6] 過辰楷,許靜,司冠南,等.面向移動應用軟件信息泄露的模型檢測研究[J].計算機學報,2016,39(11):2324-2343.(GUO C K, XU J, SI G N, et al. Model checking for software information leakage in mobile application [J]. Chinese Journal of Computers, 2016, 39(11): 2324-2343.) [7] CLAUSE J, LI W, ORSO A. Dytan: a generic dynamic taint analysis framework [C]// Proceedings of the 2007 International Symposium on Software Testing and Analysis. New York: ACM, 2007: 196-206. [8] 杜小勇,李曼,王珊.本體學習研究綜述[J].軟件學報,2006,17(9):1837-1847.(DU X Y, LI M, WANG S. A survey on ontology learning research [J]. Journal of Software, 2006, 17(9): 1837-1847.) [9] 葛強,沈國華,黃志球,等.Web服務中支持本體推理的隱私保護研究[J].計算機科學與探索,2013,7(6):536-544.(GE Q, SHEN G H, HUANG Z Q, et al. Research on privacy protection based on ontology in Web service [J]. Journal of Frontiers of Computer Science and Technology, 2013, 7(6): 536-544.) [10] HORROCKS I, PATEL-SCHNEIDER P F, BOLEY H, et al. SWRL: a semantic Web rule language combining OWL and RuleML [R]. [S.l.]: W3C Member Submission, 2004. [11] BAO T, ZHENG Y, LIN Z, et al. Strict control dependence and its effect on dynamic information flow analyses [C]// Proceedings of the 19th International Symposium on Software Testing and Analysis. New York: ACM, 2010: 13-24. [12] KWON Y, KIM D, SUMNER W N, et al. LDX: Causality inference by lightweight dual execution [C]// Proceedings of the 2016 International Conference on Architectural Support for Programming Languages and Operating Systems. New York: ACM, 2016: 503-515. [13] 周亮,黃志球,倪川.基于SWRL規則的本體推理研究[J].計算機技術與發展,2015,25(10):67-70.(ZHOU L, HUANG Z Q, NI C. Research on ontology reasoning based on SWRL rules [J]. Computer Technology and Development, 2015, 25(10): 67-70.) [14] YADAV U, NARULA G S, DUHAN N, et al. Development and visualization of domain specific ontology using Protégé [J]. Indian Journal of Science and Technology, 2016, 9(16): 1-7. [15] MUSEN M A. The Protégé project: a look back and a look forward [J]. AI Matters, 2015, 1(4): 4-12. [16] BAK J, JEDRZEJEK C, FALKOWSKI M. Usage of the Jess engine, rules and ontology to query a relational database [C]// Proceedings of the 2009 International Workshop on Rules and Rule Markup Languages for the Semantic Web. Berlin: Springer, 2009: 216-230. [17] ZHOU Y, JIANG X. Dissecting android malware: characterization and evolution [C]// Proceedings of the 2012 IEEE Symposium on Security and Privacy. Piscataway, NJ: IEEE, 2012: 95-109. [18] RASTHOFER S, ARZT S, BODDEN E. A machine-learning approach for classifying and categorizing Android sources and sinks [C]// Proceedings of the 21nd Network and Distributed System Security Symposium. San Diego, CA: ISOC, 2014: 1-15. This work is partially supported by the National Natural Science Foundation of China (61370065, 61502040),the National Key Technology Research and Development Program of the Ministry of Science and Technology of China (2015BAK12B03- 03),the Opening Foundation of Key Laboratory of Internet Culture and Digital Dissemination (ICDDXN001). LIUQiyuan, born in 1992, M. S. candidate. His research interests include network security, malicious code analysis of intelligent terminal. JIAOJian, born in 1978, Ph. D., associate professor. His research interests include network measurement, network security. CAOHongsheng, born in 1989, M. S. candidate. His research interests include network security.2 基于本體的檢測模型
2.1 控制結構領域本體



2.2 基于SCD的IIF判定規則

2.3 構建SWRL規則
3 實驗結果與分析
3.1 推理實現


3.2 公開樣本集測試

3.3 推理性能分析


4 結語