Generating Evasive Malware using Generative Adversarial Network
Android is one of the most used mobile operating systems, which has a rich application market with a diversity of applications from multiple resources. This popularity encouraged the adversaries to target the platform by injecting the market with malware. Thus, researchers intensively studied defensive approaches using machine learning to analyse the appearance of certain suspicious features and detect well-known and novel malicious applications. The detection is based on a machine learning classifier that classifies the application as either malware or goodware. However, it has been found that machine learning models are vulnerable to multiple adversarial attacks. One of these attacks is known as evasion, in which the so-called adversarial examples are carefully crafted to mislead the target classifier into the wrong predication, enabling the malware samples to evade the detection and be classified as goodware. Therefore, this project aims to explore the machine learning vulnerability by generating adversarial examples using GAN to evade DREBIN detection, a state-of-the-art algorithm for android malware detection. Features selection have been implemented in the project to reduce the features space. The threshold-moving technique was applied to the target model to replicate the results of DREBIN. In our attack approach, we trained the Adversarial Malware GAN model under a limited knowledge scenario to produce features added to samples, crafting adversarial examples that can be misclassified as goodware. Our approach was successfully causing misclassification to the target model and reaching a high evasion rate in different experiments. The generator was well producing a reasonable number of features, but without diversity in the features.