Paper Title: Binary Malware image Classification using Machine learning with local binary pattern
Authors: Jhu-sin Luo, Dan chia-tien lo
Venue: 2017 IEEE international Conference on Big Data
URL: 10.1109/BigData.2017.8258512
Problem: Klasifikasi malware adalah bagian penting dalam pengamanan jaringan. Namun metode klasifikasi malware saat ini masih mengandalkan metode deteksi tradisional untuk mendeteksi malware, yaitu analisa statik dan dinamik. Teknik ini memiliki beberapa kelemahan, untuk itu dibutuhkan pendekatan baru dalam klasifikasi malware.
Contribution:
Mengajukan metode klasifikasi malware baru menggunakan image binary dan ekstraksi local binary pattern (LBP) feature
Method/solution:
- Melakukan konversi malware ke greyscale dalam range [0,255], dengan lebar fix dan tinggi bebas
- Binary malware dibaca sebagai sebuah vector 8 bit unsigned integer, kemudian diatur menjadi array 2D
- Setiap pixel dari image malware diatur menjadi grid 3×3 agar memudahkan proses ekstraksi descriptor LBP
- Nilai pixel central adalah threshold. * pixel tetangganya dibandingkan dengan nilai central pixel.
- Bila nilai pixel tetangganya lebih besar dari central pixel, maka nilai tetangga menjadi 1
- Bila lebih kecil dari threshold, maka ditulis 0.
- Hasil threshold dikalikan dengan weight yang merupakan pangkat 2.
- Central value adalah jumlah dari hasil perkalian.
- Untuk setiap pixel lakukan proses yang sama
- Descriptor LBP final didapatkan dengan menghitung histogram gambar
- Training dan testing menggunakan tensorflow
- Convolutional filter yang digunakan 3×3 dengan RelU, kemudah dilakukan 2×2 max pooling layer dengan stride 2 untuk downsample
- Nilai convolutional filter pertama adalah 16
- Ukuran convolutional filter kedua juga 3×3 dengan 32 filter.
- Output max pooling adalah multi dimensi
- Dataset terdiri dari 32 family dengan jumlah 12000 image malware greyscale.
- Tipe malware adalah trojan, password steeler dan virus
- 20% malware digunakan untuk training, dan sisanya untuk pengujian
- Menggunakan tensorflow untuk klasifikasi fitur LBP, dan menggunakan fitur LBP untuk training klasifier SVM dan classifier KNN
- Menggunakan fitur GIST dengan tensorflow dengan KNN dan SVM
Main result
- Malware family 28,29,30 yaitu Virut.A, Virut.AC dan Virut.AT lebih sulit untuk diklasifikasi
- Tensorflow dapat membedakan ketiga malware tersebut dengan akurasi yang lebih tinggi
- Waktu eksekusi lebih pendek dengan GPU
- Akurasi dengan fiture LBP lebih baik 93,17%
- Waktu eksekusi lebih baik daripada sistem pembanding
Limitation:
- Metode ini dapat dikelabui oleh malware yang di-rewrite dengan cara lain atau menggunakan instruksi yang berbeda
- Jumlah family malware terbatas
- Tidak mencoba menggunakan RGB