Skip to content

This project is to build machine learning models on the byte and asm files to predict which type of malware these files represent. The byte files contain the hexadecimal codes and the asm file contains the assembly language code which contains keywords, opcodes, registers, APIs. We have to extract features from these files and build the optimal …

Notifications You must be signed in to change notification settings

ashwin4glory/Microsoft-malware-prediction

Repository files navigation

Microsoft-malware-prediction

1.Business/Real-world Problem

1.1. What is Malware?

The term malware is a contraction of malicious software. Put simply, malware is any piece of software that was written with the intent of doing harm to data, devices or to people. Source: https://www.avg.com/en/signal/what-is-malware

1.2. Problem Statement

In the past few years, the malware industry has grown very rapidly that, the syndicates invest heavily in technologies to evade traditional protection, forcing the anti-malware groups/communities to build more robust softwares to detect and terminate these attacks. The major part of protecting a computer system from a malware attack is to identify whether a given piece of file/software is a malware.

1.3 Source/Useful Links

Microsoft has been very active in building anti-malware products over the years and it runs it’s anti-malware utilities over 150 million computers around the world. This generates tens of millions of daily data points to be analyzed as potential malware. In order to be effective in analyzing and classifying such large amounts of data, we need to be able to group them into groups and identify their respective families.

This dataset provided by Microsoft contains about 9 classes of malware. ,

Source: https://www.kaggle.com/c/malware-classification

1.4. Real-world/Business objectives and constraints.

Minimize multi-class error. Multi-class probability estimates. Malware detection should not take hours and block the user's computer. It should fininsh in a few seconds or a minute.

2. Machine Learning Problem

2.1. Data

2.1.1. Data Overview

Source : https://www.kaggle.com/c/malware-classification/data For every malware, we have two files .asm file (read more: https://www.reviversoft.com/file-extensions/asm) .bytes file (the raw data contains the hexadecimal representation of the file's binary content, without the PE header) Total train dataset consist of 200GB data out of which 50Gb of data is .bytes files and 150GB of data is .asm files: Lots of Data for a single-box/computer. There are total 10,868 .bytes files and 10,868 asm files total 21,736 files There are 9 types of malwares (9 classes) in our give data Types of Malware: Ramnit
Lollipop
Kelihos_ver3
Vundo
Simda
Tracur
Kelihos_ver1
Obfuscator.ACY
Gatak

About

This project is to build machine learning models on the byte and asm files to predict which type of malware these files represent. The byte files contain the hexadecimal codes and the asm file contains the assembly language code which contains keywords, opcodes, registers, APIs. We have to extract features from these files and build the optimal …

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published