• 沒有找到結果。

第六章 實驗與討論

6.3 Monkey 與本行為觸發程式比較

網路行為統計(簡稱 nw)、system call 使用次數統計(簡稱 sys);以及上述三類特徵屬 性集合所產生的兩兩聯集,即網路行為與權限的聯集、網路行為與 system call 統計 的聯集、system call 與權限的聯集、和全部的特徵屬性所產生的聯集,本論文將依 序呈現以上特徵屬性集合所產生之機器學習結果。

為了幫助解讀機器學習產生之數據結果,本論文會於各表中作藍色文字之特別 標記,即為每一行結果之數值前五高者,以利本論文判斷哪些演算法較適合那些特 徵屬性,例如以 Accuracy 部分,表 6 所有演算法分類結果 Accuracy 部分由大到小 依序為 95.40% (RandomForest 50)、95.38% (RandomForest 100)、95.01% (SMO NPoly)、94.44% (RandomForest 10)、94.34% (Adaboost(REPTree))、94.10% (SMO Poly)、94.00% (LogitBoost(KNN))、…、82.97% (NaiveBayes),因此將 RandomForest 50、RandomForest 100、SMO NPoly、RandomForest 10、Adaboost(REPTree)這五個 Accuracy 資料標記成藍字。

使用不同行為觸發器,只會影響動態分析之結果,不會影響靜態分析之結果。

因此僅以宣告權限作為特徵屬性之結果,於不同的行為觸發器,並不會產生不同之 結果。因此本論文於宣告權限作為特徵屬性之結果,不作 Monkey 與 Robotium 之比 較,其產生的機器學習結果如表 6。

表 6 以宣告權限作為特徵屬性之結果

經由表 6 的實驗數據我們可以發現,其實藉由宣告的權限,我們就可以得到很 好的準確率結果,會有這樣的結果可能是大部分的惡意程式會宣告類似的權限,而 一般程式則較少會宣告這些權限。

表 7 則是單以網路封包資料洩漏行為作為特徵屬性,產生的分類結果,左邊是 以 Monkey 作為行為觸發器的結果、右邊則是本論文藉由 Robotium 函式庫所開發之 行為觸發器的結果,圖 21、圖 22、圖 23 則分別是依照表 7 產生的 Monkey 與本 論文行為觸發器之比較折線圖,nw(mk)代表以 Monkey 產生的網路封包資料洩漏行 為、nw(rb) 代表以本論文行為觸發器產生的網路封包資料洩漏行為,橫軸的各英文 字母代號請參閱表 5。

表 7 以網路封包資料洩漏行為作為特徵屬性之結果

圖 21 網路封包資料洩漏行為作為特徵屬性之 Accuracy 比較折線圖

圖 22 網路封包資料洩漏行為作為特徵屬性之 TPR 比較折線圖

圖 23 網路封包資料洩漏行為作為特徵屬性之 FPR 比較折線圖

經由表 7 與圖 21、圖 22、圖 23,我們可以很明顯看出原先 Monkey 的結果,

比本論文所開發的行為觸發程式來的準確。其實仔細考慮後,會發現這樣的結果是 有可能的,因為不管使用者有沒有使用惡意程式,惡意程式仍舊會執行這些網路封 包資料洩漏行為,而一般程式雖然也會有網路封包洩漏行為,但是卻是藉由使用者 執行該一般程式所產生的,因此當系統使用 Monkey 作為行為觸發程式時,Monkey 不管有沒有正確地點擊到惡意程式畫面上的物件,惡意程式仍舊會有網路封包洩漏 行為;一般程式則需要 Monkey 點擊到,方能產生該行為,於是演算法可以藉由這

樣的特徵屬性進行分類。換成本論文之行為觸發程式,因為本程式能夠確實分辨應 用程式畫面上物件並進行點擊,反而觸發一般程式的網路封包洩漏行為,導致最後 不管是惡意程式或者一般程式,皆會觀察到網路封包洩漏行為,以致這類特徵屬性 之結果 Monkey 較本行為觸發程式準確。

表 8 以 system call 次數統計作為特徵屬性之結果

圖 24 以 system call 次數統計作為特徵屬性之 Accuracy 比較折線圖

圖 25 以 system call 次數統計作為特徵屬性之 TPR 比較折線圖

圖 26 以 system call 次數統計作為特徵屬性之 FPR 比較折線圖

至於使用 system call 統計之部分,藉由表 8 和圖 24、圖 25、圖 26 我們可以 看到,可能是因為這類特徵屬性收集到其他程式行為,而不僅只是網路封包行為,

而且本行為觸發程式也能夠觸發應用程式以表現出這些 system call 行為,造成演算 法可以藉由這些行為進行分類,因此可以看到在這個部分,本行為觸發器的結果比 Monkey 來的好。

以下則是上述三類特徵屬性集合所產生的兩兩聯集,接下來表格與圖片會使用

簡稱表示即網路行為與權限的聯集(簡稱 nw+pm)、網路行為與 system call 統計的聯 集(簡稱 nw+sys)、system call 與權限的聯集(簡稱 sys+pm)、和全部的特徵屬性所產 生的聯集(簡稱 nw+sys+pm)。

表 9 以 nw+pm 作為特徵屬性之結果

圖 27 以 nw+pm 作為特徵屬性之 Accuracy 比較折線圖

圖 28 以 nw+pm 作為特徵屬性之 TPR 比較折線圖

圖 29 以 nw+pm 作為特徵屬性之 FPR 比較折線圖

網路行為與權限的聯集部分,因為 pm 不會造成 Monkey 與本行為觸發程式結 果不同,因此這部分只有 nw 會造成影響,於是結果類似單看 nw 部分。

表 10 以 nw+sys 作為特徵屬性之結果

圖 30 以 nw+sys 作為特徵屬性之 Accuracy 比較折線圖

圖 31 以 nw+sys 作為特徵屬性之 TPR 比較折線圖

圖 32 以 nw+sys 作為特徵屬性之 FPR 比較折線圖

網路行為與 system call 統計的聯集部分,則是因為 Monkey 於 nw 部分,數值 高過本行為觸發器太多,即使加上 sys 部分仍舊無法贏過 Monkey,因此這部分依 舊是 Monkey 勝出。

表 11 以 sys+pm 作為特徵屬性之結果

圖 33 以 sys+pm 作為特徵屬性之 Accuracy 比較折線圖

圖 34 以 sys+pm 作為特徵屬性之 TPR 比較折線圖

圖 35 以 sys+pm 作為特徵屬性之 FPR 比較折線圖

至於 system call 與權限的聯集部分,我們可以從表 6 與表 8 看到,因為 pm 對於各演算法的分類結果影響大於 sys,所以僅可以從表 11 和圖 33、圖 34、圖 35 觀察到,本行為觸發程式之結果比 Monkey 之結果來的有些微改善。

表 12 以 nw+sys+pm 作為特徵屬性之結果

圖 36 以 nw+sys+pm 作為特徵屬性之 Accuracy 比較折線圖

圖 37 以 nw+sys+pm 作為特徵屬性之 TPR 比較折線圖

圖 38 以 nw+sys+pm 作為特徵屬性之 FPR 比較折線圖

全部三類特徵屬性之結果部分,則是因為 nw 部分特徵屬性,造成最後仍舊是 Monkey 勝過本行為觸發程式。

雖然從這些圖表,我們可以發現本行為觸發程式產生之結果,並不會高於 Monkey 太多,但其實仔細考慮惡意程式與一般程式行為後,本論文應該確實製作 了一個不錯的行為觸發程式,能夠確實觸發一般程式行為,造成機器學習演算法無 法藉由本行為觸發程式產生之行為,對惡意程式與一般程式準確分類。

下圖是以 nw+sys+pm 作為特徵屬性,RandomForest 100 的機器學習結果產生出 的 ROC 曲線圖。

圖 39 以 nw+sys+pm 作為特徵屬性 RandomForest 100 的 ROC 曲線圖

相關文件