Perpustakaan judul masih dalam tahap pengembangan, admin siap menampung kritik dan saran
Klasifikasi Malware Android Menggunakan Metode Support Vector Machine (SVM)
Raymon Purba (2018) | Skripsi | Teknik Informatika , Teknik Komputer
Bagikan
Ringkasan
Metode machine learning dapat digunakan untuk mengklasifikasikan aplikasi Android ke dalam kelompok malware dan jinak. Dalam penelitian tugas akhir ini akan dikaji tentang bagaimana caranya mengelompokkan aplikasi Android kedalam kelompok malware dan jinak dengan menggunakan metode machine learning. Proses klasifikasi aplikasi Android dengan menggunakan metode machine learning meliputi beberapa proses, yaitu praproses aplikasi Android, pengumpulan fitur, pemilihan fitur dan pelatihan model klasifikasi. Fitur-fitur yang digunakan dibagi ke dalam beberapa kelompok fitur atau disebut juga fitur set. Fitur set yang digunakan terbagi ke dalam tiga jenis, yaitu fitur set permission, fitur set API call dan fitur set network address. Praproses aplikasi Android yaitu melakukan disassemble file .apk menjadi file .dex dan file AndroidManifest.xml kemudian mengkonversi file .dex menjadi file .smali. Setelah praproses aplikasi Android, fitur-fitur dikumpulkan berdasarkan fitur set yang telah ditentukan. Dari sekitar 1800 file APK yang telah dikumpulkan, diperoleh sekitar 400 data untuk fitur set permission, sekitar 23.000 data untuk fitur set API call dan sekitar 1.500 data untuk fitur set network address. Karena jumlah fitur terlalu banyak, perlu dilakukan proses pemilihan fitur untuk mengurangi fitur-fitur yang dianggap tidak berpengaruh. Metode information gain digunakan untuk memilih beberapa fitur teratas dari setiap fitur set yang dianggap paling informatif. Fitur yang dipilih yaitu sejumlah 10, 30, 50 fitur teratas untuk setiap fitur set. Setelah proses pemilihan fitur, dilakukan pelatihan model klasifikasi dengan menggunakan algoritma support vector machine. Untuk memperbanyak variasi data, dilakukan proses k-fold cross validation terhadap seluruh data penelitian. Setelah model klasifikasi terbentuk, performanya diukur menggunakan nilai accuracy, precision, recall dan f-measure. Dari hasil eksperimen yang telah dilakukan, diperoleh model klasifikasi yang dilatih dapat menghasilkan nilai f-measure mencapai 95% dengan nilai k pada proses k-fold cross validation sebesar 3. Diantara semua fitur set, fitur set permission dapat menghasilkan model klasifikasi dengan performa paling baik. Kata Kunci : Android Malware, Support Vector Machine, Information Gain, Kfold Cross Validation, Static Detection.
Ringkasan Alternatif
Machine learning can be used to classify Android applications into groups of malware and benign. This final project will be studied about how to clasify Android applications into class of malware and benign by using machine learning method. Machine learning methods on Android applications domain includes several processes including Android applications pre-processing, populate features of Android applications, feature selection and classification model training. The features are divided into several groups of features called feature set. Consist of permissions, API calls and network addresses feature set. Preprocessing Android application by disassembling .apk files into .dex files and AndroidManifest.xml file then convert .dex files into .smali files. After the Android application pre-processing, populate features according to defined feature set. Of the approximately 1800 APK files that have been collected, about 435 data for feature set permissions, 24003 data for the API calls feature set and 1499 data for the network address feature set. Because the number of features are too many, some features are reduced that do not fit classification model. Therefore information gain are used to select the best features that considered informative. The selected features configuration are 10, 30, 50 top feature for each defined feature set. After the feature selection process, the model training is done by using the support vector machine algorithm. To increase the variation of data, the k-fold cross validation method are used to split all the collected data. Once the classification model is formed, its performance is measured using accuracy, precision, recall and f-measure. From the results of experiments performed, the best performance of the model trained using the support vector machine algorithm comes with a f-measure value of 95% with k-fold cross validation of 3. Also feature set permissions can produce models with best performance. Keywords: Android Malware, Support Vector Machine, Information Gain, K-fold Cross Validation, Static Detection.