Android Malware Detection using Support Vector Machine Classifier
- androguard - Reverse Engineering tool for android applications
- sklearn - Machine Learning library for python
- mongodb - A No-SQL database
- pymongo - Python driver for MongoDB
- Navigate to 'files' folder and place malware and benign apps into their respective folder.
- Run 'python add_db.py' to save all the features extracted from all apks.
- Run 'create_data.py' to get data from mongodb and save it to a csv file.
- Once the 'data.csv' file is created, Run 'python feature_selection.py ' to perform feature selection, this will create two files namely 'final_data.csv' with optimal features and 'final_selected_features.txt' which contains the selected features along with their value.
- Run 'python model_train.py <train_test/k-fold>' to train the model, a dump of the trained model is created.
- Finally run 'python predict.py ' to perform the classification of that given apk.
Happy Coding.