Bridging Semantic Gap between Machine Learning and Malware Analysis


Paper Title: Mind the gap: on bridging the semantic gap between machine learning and malware analysis

Authors: Michael R.Smith, Armida J. Carbajal, Ramyaa Ramyaa, Nicholas T.Johnson, Bridget I. Haus, Christopher C.Lamb, W.Philip Kegelmeyer, Joe B. Ingram, Eva Domschot, Stephen J.Verzi

Venue: AISec’20: Proceedings of the 13th ACM Workshop on Artificial Intelligence and SecurityPages 49–60

URL: https://dl.acm.org/doi/10.1145/3411508.3421373

Problem: Machine Learning semakin banyak digunakan untuk deteksi Malware. Namun terdapat semantic gap antara Machine Learning dan Analis Malware.  Penggunaan Machine Learning fokus pada klasifikasi malware dan benign, sementara analis malware juga ingin memahami apa saja yang dilakukan malware (behaviour). Paper ini mempelajari tentang pengaruh feature semantic pada deteksi malware menggunakan machine learning

Contribution: 1. Memberikan perspektif teknik Machine Learning apa saja yang belum digunakan pada Analisa malware

2. Melakukan survey dataset yang digunakan machine learning untuk melakukan deteksi malware.

3. Mengembangkan metoda anotasi behaviour malware dengan matrix MITRE ATT&CK®

4. Melakukan anotasi dataset microsoft Malware classification Challenge dengan behaviournya

5. Melakukan training model Machine learning untuk deteksi behavioral

Method/solution: 1. Pengumpulan data, parsing dan labelling data dengan mengumpulkan data registry dari komputer Windows pada jaringan perusahaan selama 2 tahun.

2. Menggunakan PCA (Principal Component analysis) untuk mengurangi dimensi dataset

3. Pengujian dan perbandingan dari beberapa dataset malware : a) live malware repositoryes (VXheaven); b) Malimg; c)Microsoft malware classification challenge; d) EMBER; e) Malrec

4. Analisa dataset dan feature

5. Membangun behavioral based dataset

6. Pengujian behavioral labels

Main result: 1. Terkumpul 20 juta dataset

2. Dari hasil labeling diperoleh AUC 0,96 

3. Pada live malware dataset, peneliti hanya mendapatkan feature sederhana dari sampel malware. Terdapat kendala untuk membandingkan dataset yang berbeda, karena masing-masing repository memiliki subset malware yang berbeda. Namun jumlah sampel yang tersedia sangat banyak. Pada Virusshare tersedia 34 juta sampel malware

4.MalImg: menyediakan dataset malware dalam bentuk representasi gambar. Binary malware dikonversi menjadi gambar greyscale. Feature malware diekstrak menggunakan GIS. Menggunakan classifier 3-nearest neighbor diperoleh akurasi 97,18%. Menggunakan CNN 98,52%, dan dengan PCA dan SVM 99,8%. Terdapat 9458 sampel malware dari 25 family berbeda.

5. MS Malware classification: Dataset malware ditampilkan dalam bentuk representasi hexadesimal, tanpa PE header. Meta-information (function calls, op codes, strings, dll) yang diperoleh dari IDA assembler disediakan pada setiap malware. Performa dataset mencapai 99,7% akurasi menggunakan image-based feature

6. EMBER menyediakan 1,1 juga dataset malware. Hasil classifier mencapai 98,2 detection rate dengan AUC 0,9997

7. Malrec menyediakan traces dari eksekusi malware. Dengan dataset ini peneliti dapat memahami behavior malware pada komputer korban. Ada 66,301 rekaman eksekusi malware. Namun ukuran dataset ini sangat besar 1,3TB serta proses ekstraksi dataset juga tidak mudah.

8. Feature yang sering digunakan pada dataset Microsoft classification challenge untuk deteksi malware adalah: byte, MD1, ENT (Entropy byte), Haralick pada IMG1, Local Binary patterns pada IMG2,  dst

9. Feature yang memiliki impact besar pada dataset ember adalah: imports, section, histogram, byte entropy, dst.

10. Histogram cenderung menyebabkan overfitting.

11. PE Header merupakan fitur pembeda malware dan benign

12. Pada VX-Heaven, PE miner mencapai tingkat deteksi 99% hanya menggunakan informasi struktural (PE dan section header), DLL dan file object.

 

Limitation:

  1. Ada indikasi terjadinya overfitting pada hasil training.
  2. Model Machine Learning belum dapat mendeteksi malware baru.
  3. Feature Semantic masih belum digunakan pada model yang ada

Silahkan tuliskan tanggapan, kritik maupun saran