Identify Malware using Machine Learning
Budget: £20 – £250 GBP
First step is to make this software work for extracting the features: https://github.com/cisco/joy This software allows HTTP, TLS, TCP, UDP and DNS features to be extracted.
Once the software is working (part of this work), the features can be extracted and the data transformed (i.e., convert the text and other data into machine readable data) and label the extracted features. Test and train 5 ML algorithms (supervised and one unsupervised) using classification and multiclass classification algorithms. The ML should be able to classify Botnets (malware) and normal traffic across various datasets and across different variants of the Bot (Malware). The feature selection should be done two ways: Manual and automated. The manual feature selection should allow me to select which features I want to use for the classification., The automated feature selection can be done using algorithms such as CFS, ANOVA and another one that we can agree on. We must be able to feed into the model a brand-new dataset for testing. Measure the accuracy and so on using statistical calculation (Tables and graphical). The data will need to be analysed and appropriate graphs produced to help visualise the data. We can agree what statistical data to include to measure accuracy.
Once the software is working (part of this work), the features can be extracted and the data transformed (i.e., convert the text and other data into machine readable data) and label the extracted features. Test and train 5 ML algorithms (supervised and one unsupervised) using classification and multiclass classification algorithms. The ML should be able to classify Botnets (malware) and normal traffic across various datasets and across different variants of the Bot (Malware). The feature selection should be done two ways: Manual and automated. The manual feature selection should allow me to select which features I want to use for the classification., The automated feature selection can be done using algorithms such as CFS, ANOVA and another one that we can agree on. We must be able to feed into the model a brand-new dataset for testing. Measure the accuracy and so on using statistical calculation (Tables and graphical). The data will need to be analysed and appropriate graphs produced to help visualise the data. We can agree what statistical data to include to measure accuracy.