Download presentation
Published byCassandra Nash Modified over 9 years ago
1
Automated malware classification based on network behavior
2013 international conference on computing , networking and communications, communications and information security symposium Author : Saeed Nari , Ali A. Ghorbani Speaker : Wen Lin Yu /17
2
outline Introduction Related works Automated Malware Classification Evaluation Conclusion /17
3
Introduction Malware software has long become one of the major security threats on the Internet . Anti-virus programs primarily use content-based signatures in order to identify and classify malwares into their respective families. 1. 何謂 malware 2. 一般anti-virus 使用 content based 方法去作分類 malware 及偵測 4. content based 壞處在於說如果今天病毒變種了 新型病毒再content 上可能會有些許不同,導致無法被偵測出來 /17
4
Content-based approaches :
This approach is not very accurate due to the existence of obfuscation , polymorphic and metamorphic techniques widely used by modern malware . Behavior-based approaches: Analysis by system call Network activity Content based 精准度不高 . polymorphic 和 metamorphic 技術的應用 導致 病毒難以被偵測 這兩者都會在傳遞的時候去改變code 本身 polymorphic 比較容易被偵測 因為本身 virus body 相同 但病毒本身雖然code改變了 但是行為跟溝通模式沒有改變 Behavior 通常分析 system call 或是網路的活動 /17
5
Related work Content-based approach
Kolter and Maloof applied machine learning to classify malicious executables using n-grams of byte codes as features . Tian used features from printable strings contained in malware samples to distinguish between malicious and benign executables. 1. 利用 基於 disassemble 玩的 byte codes 去做 malware feature 分析 壞處是 需要disassemble 速度慢 2, 分析 malware 裡面 可以被印出的 string 有哪些 === 當然以上的假設都是基於 malware 可以被拆解出來看 且disassemble 速度慢 沒效率 當下一代病毒出來 特徵以及 有不同content 時 此種方法偵測率就會降低 /17
6
Behavior-based approaches :
Lee and Mody represent malware samples with sequences of system calls and use string edit distance to classify them . Bailey apply normalized compression distance(NCD) as a similarity measure for classifying malware samples. Rieck use the information contained in the analysis reports created by CWSandBox . Behavior based 方法通常是去計算 兩個 profile 的 distance 大小 也就是相似度 system calls 方式去建立 malware profile string edit distance 去分類 2. Bailey 改善edit distance 並且利用 NCD (另一個數學公式 ) 3. Cwsandbox 07 年其他人發表的paper 自動化分析binary /17
7
This paper focus on how to automated classification malware by network behavior . And consider the dependencies between network flows. 1. 此篇重點在於 如何利用惡意軟體網路活動的情形 來自動分類 而與其他篇paper 不同的是 ,他們多考慮了 network flow 之間的相關性 因為作者認為現今的 malware 都會跟外部的 host 去做溝通 所以他相信有一的機會可以利用 network behavior 就可以分類malware /17
8
Automated Malware classification
Network Trace (pcap files) Flow Extraction Behavior Tree Generation Classification Feature Extraction 利用 network traces 形成 pcap files 將每一個flow extraction 之後形成一個 behavior profile graph 型式 將 graph feature 拉出來之後 (後面會定義 feature 有哪些 ) 最後利用 已知 labled 好的sample data set 去當做 training data 和 test data /17
9
Flow Extraction Network flows are extracted from pcap files based on port numbers and protocols using TShark utility . Tshark 是 wireshark 提供的命令列指令 /17
10
We use dependencies between network flows to create behavior profile.
Behavior graphs Existing works on behavior based classification use network flow information such as port number and protocol to create profiles. We use dependencies between network flows to create behavior profile. 1. 為了可以精準的分類 ,我們需要一個詳細的 malware behavior ,根據 port number 和 protocol 可以去建立 behavior profile 2. 根據不同種的 flow 據建立 一個完整的 behavior profile /17
11
Example behavior graph
每一個node 回用不同 protocol 連線的 flow 而此種graph 的 edge 唯有方向性的 DNS flow 回傳的 ip address 和 其他的 flow 的 ip address 一樣時 則 A-> B /17
12
Features based on the behavior graphs :
Feature Extraction There are two approaches for comparing and classifying the malware samples based on the behavior graphs. Graph edit distance Distance based on maximum common sub-graph Features based on the behavior graphs : Graph size Root out-degree Average out-degree Maximum out-degree Number of specific nodes Feature extraction 目前熱門方法有以下兩種 1. xxxxx 2. xxxxx 由於去計算 兩個graph edit distance 或是 最大的相同子圖所花時間很長 ,在時間上無法達到即時偵測 在這邊作者選擇 feature based 方法 ,而feature based 方法需考慮到下面幾點 1. 5. 計算特殊node數量是用來區分 相似架構但是不同 node labels /17
13
Using classification algorithms provided by WEKA library .
Classifying malware samples to their respective families using the feature vectors extracted in the previous step. Using classification algorithms provided by WEKA library . 這邊最主要目的就是將上一步驟 選出來的feature vector 喂進去WEKA 去label 相對應的 families WEKA 是一個 open source 的軟體 本身提供許多 machine learning 上面的演算法提供使用者去做分類 使用c4.5 algo 去產生決策樹 /17
14
Evaluation Labeling the Dataset
We used the malware dataset provided by Communication Research Center Canada(CRC) . Malwares will be assigned a label by 11 anti-viruses scanners . We identified 13 malware families with this approach . 1. 資料是沒有 label 過的 2. 所以利用現有的 antivirus 去做一個類似 label 投票的動作,選出最多antiviurs 所掃出的label 結果當作此malware label 當然還有設定不同的 門檻 門檻值越高則 dataset 數量越少 作者這邊設定 去分別作 training data && test data /17
15
Dataset size Majority Threshold 6 7 8 Dataset Size 3768 3347 2907 /17
16
Classification Accuracy
1. 作者將 剛剛的 dataset 分成 training data test data 2. 未來加入 system call 分析 作者認為還可以在超越其他 防毒系統 /17
17
Conclusion The framework author proposed outperforms five anti- virus programs in classifying malware samples . The experiment author made only show that the framework has better performance than other five , but doesn’t show that it has better detection rate than other . 作者題出了一格自動化分類malware 的架構 ,優於其他家5個 anyi-virus system 而我比較好奇的是,在未知一個程式是malware 的情況下 , 他的d detection rate 和其他家想比不知道是如何 ? /17
18
Thank you /17
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.