Next Article in Journal
Fault Estimation of Rack-Driving Motor in Electrical Power Steering System Using an Artificial Neural Network Observer
Previous Article in Journal
Smart Random Walk Distributed Secured Edge Algorithm Using Multi-Regression for Green Network
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Low-Resource Malware Family Detection by Cross-Family Knowledge Transfer

1
School of Cyberspace Security, Beijing University of Posts and Telecommunications, Beijing 100876, China
2
School of Computer Science and Technology, Harbin Institute of Technology, Shenzhen 518055, China
3
School of Information Science and Technology, North China University of Technology, Beijing 100144, China
*
Authors to whom correspondence should be addressed.
Electronics 2022, 11(24), 4148; https://doi.org/10.3390/electronics11244148
Submission received: 21 October 2022 / Revised: 28 November 2022 / Accepted: 29 November 2022 / Published: 12 December 2022
(This article belongs to the Section Computer Science & Engineering)

Abstract

:
Low-resource malware families are highly susceptible to being overlooked when using machine learning models or deep learning models for automated detection because of the small amount of data samples. When we target to train a classifier for a low-resource malware family, the training data using the family itself is not sufficient to train a good classifier. In this work, we study the relationship between different malware families and improve the performance of the malware detection model based on machine learning method in low-resource malware family detection. First, we propose an empirical supportive score to measure the transfer quality and find that transferring performance varies a lot between different malware families. Second, we propose a Sequential Family Selection (SFS) algorithm to select multiple families as the training data. With SFS, we only transfer knowledge from several supportive families to target low-resource families. We conduct experiments on 16 families and 4 malware detection models, the results show that our model could outperform best baselines by 2.29% on average and our algorithm achieves 14.16% improvement in accuracy at the highest. Third, we study the transferred knowledge and find that our algorithm could capture the common characteristics between different malware families by proposing a supportive score and achieve good detection performance in the low-resource malware family. Our algorithm could also be applicable to image detection and signal detection.

1. Introduction

Android is an open-source system framework. It has become one of the most popular mobile ecosystems. With the popularity of mobile devices in daily life increasing every year, more researchers are paying attention to the security of the Android ecosystem [1]. Various malware detection approaches have been raised in our community.
Malware attempts to control the user’s use system without authorization, steal personal information, encrypt important electronic files or cause other damages. A malware family is composed of malware samples with common characteristics. Common characteristics usually include the same code segment, pattern, application characteristics and similar behavior. The number of each malware family varies from just a few to tens of thousands. Low resource malware family refers to a family with less data, and its data are not enough to train the malware detection model alone. Although low-resource malware families have less data volume, these malware families can still bring great software security risks. When we target to train a classifier for a low-resource malware family, the training data using the family itself are not sufficient to train a good classifier. Androzoo [2] currently contains 17,927,200 different APKs with hundreds of malware families. However, some malware families have less than 100 or 500 apks, which is not enough to train a good malware classifier. For the unpopular malware, we may never find enough samples even if we label all the existing apks. At the same time, it is hard for us to have sufficient labels in time with the continuous evolution of malware.
There are some widely used malware data sets, in which a large number of malware families have only a few data samples. For example, MalGenome [3] dataset covers 49 families, and each family contains 1 to 309 malware samples. The top three families occupy roughly 70% of the overall dataset, while over 30 families have less than 10 samples. The distribution suggested that, as long as the detection approach can successfully detect the top families, the overall result will be good enough. The malware families with few samples are ignored. If we directly use all the training datasets from other malware families, most of the malware detection models may not be robust enough to transfer between different malware families. To detect low-resource malware families, Tran et al. first used prototype learning to create prototype representations for the target malware family, and used the twin network to classify malware [4]. Subsequent work further improved the generation of prototype representations [5], or improved the training of twin networks using meta-learning [6,7,8] and contrastive loss functions [9]. Kamaci et al. [10] established novel distance concepts to measure the relative difference between two objects. Alsboui [11] proposed a graph-based dynamic multi-mobile agent itinerary planning method to cover all nodes in the network. However, these methods use only a small number of samples related to the target low-resource malware family for model training, ignoring the relationship between the target malware family and a large number of existing malware families. In this paper, we seek to study the relatedness of malware families and leverage the relatedness to improve the malware detection performance of low-resource families. Our work focuses on three research questions:
First, does use different malware families as training datasets could help the detection of target low-resource malware? Intuitively, training with similar malware tends to achieve better transferring to the low-resource malware family and dissimilar malware may even harm the performance. We propose to measure the similarity with empirical experiments. Specifically, we train a malware detection model with one family m t r a i n and test on the target family m t e s t , and define the test performance as the supportive score from m t r a i n to m t e s t . Our work shows that the transferring performance varies a lot between different malware families, and we could achieve good performance by selecting the family with the biggest supportive score.
Second, we further study whether it is more helpful to use multiple malware families as the training set? We found that if we neglect the differences between distinct malware families and train the model with all families in the possible training data, the malware detection performance may even be worse than only selecting one most supportive malware family. We propose a Sequential Family Selection (SFS) algorithm to carefully select multiple families as the training set. Our algorithm could be easily adapted to any detection model. We conduct experiments to validate its performance and test on 16 malware families and four representative detection models csbd, drebin, mamadroid, and droidsieve. Our results show that SFS improves the performance of all the malware detection models. We also evaluate the performance on datasets from future time and SFS still achieves better performances.
Third, we try to understand why the supportive score between some malware families is higher which means having better transferring performance. We hypothesize that this is because of the similar characteristics between different malware families. We study two popular characteristics about whether malware steals user data and whether it displays advertisements. We found that malware with the same characteristics tends to have high supportive scores. Most supportive relations are the same for different malware detection algorithms, while some are varied for different detection models. Our work makes three contributions:
  • We make the first systematic study of the relatedness between malware families. We propose to measure the malware family similarity with an empirical supportive score and find it is the key to good transfer performance.
  • We propose a new Sequential Family Selection algorithm to target the low-resource families and validate it on 16 families and 4 different malware models. Our results show that the combination of our algorithm and the malware detection model based on machine learning and deep learning method can greatly improve the performance of malware detection.
  • We study the relationship between the performance of knowledge transfer and the characteristics of malware. We found that the success of knowledge transfer is essentially due to the similar behavior characteristics between different malware families.

2. Related Work

In this section, we first overview the common Android malware detection methods. Then, we discuss low-resource malware detection.

2.1. Android Malware Detection Based on Machine Learning

Many researchers have studied various malware detection methods in our daily lives. Malware detection methods are emerging rapidly, such as methods based on static features [12,13,14,15,16], methods based on dynamic features, etc. [17,18,19,20,21].Static features of applications include API calls, permissions, opcode, etc. These are extracted by analyzing the structure of applications. Dynamic features such as system calls, behavior characteristics, network traffic, etc. [22].These features are extracted during the period when the application is running. Mudflow [23] uses the flows between APIs as the malware features to detect malware. Deep4maldroid [24] leverages the constructed graph to train malware detection models. DroidAPIMiner [25] provides a lightweight malware classifier by conducting a thorough analysis of apks at the API level. However, these Android malware detection methods are more concerned with the performance of the algorithm on the overall dataset and ignore the malware detection performance in the low-resource malware family.

2.2. Low-Resource Malware Detection Based on Machine Learning

To enhance the detection of low-resource malware families, several researchers have improved models to enhance the detection of low-resource malware families. In 2019, Tran et al. used prototype learning to create prototype representations for target malware families and used twin networks for malware classification [4]. The improvement of the subsequent work is divided into two main directions; first, to further improve the generation of prototype representations, Chai et al. used dynamic prototype networks to generate prototype representations [5] and Tang et al. used multilayer convolutional neural networks to generate prototype representations [6]. Second, to better train the network, Bai et al. used a contrast loss function to better train the twin network [9]. In addition, Tran et al. used meta-learning to train memory neural networks for malware family classification [26]. However, all these methods use only samples of the target malware family for model training and prediction, but ignore data samples of malware families related to the target malware family.
To address the problem of low-resource malware detection, some other researchers have increased the data samples of low-resource malware families by generating new data [27,28,29]. Zahra et al. used generative adversarial networks to increase the data samples of low-resource malware families by generating new sample signatures of malware  [30]. Chen et al. proposed a malware detection model called Adv4Mal, which generates new data based on specific signatures of malware to supplement the training data of the low-resource malware family [31]. These methods use artificially constructed data, while this paper uses real data related to the target malware family.
Table 1 shows the differences between these related work of low-resource malware detection based on machine learning method. This paper proposes sequential family selection algorithm that does not require the generation of any forged new data, but rather supplements the existing data with low-resource malware families. Meanwhile, the sequential family selection algorithm uses knowledge transferring among malware families to select relevant real data samples to improve the performance of low-resource malware family detection. Theoretically, the sequential family selection algorithm can be combined with the above malware detection methods and further improve its detection performance on low-resource malware families.

3. Methodology

In this section, we first introduce how to measure the similarity between different malware families. We could achieve good transferring performance on low-resource families by selecting a most similar malware family. Then we introduce a Sequential Family Selection (SFS) algorithm to select multiple families as training data and achieve better performance.

3.1. Malware Family Similarity

It is noticed that the malware detection performance differs significantly with different malware families in the training set when using the same malware detection algorithm. Moreover, the impact of different families differs while malware detection methods vary. It is interesting to explore the similarity between malware families. There are two general ways to measure the similarity between malware families, malware characteristics and empirical metrics.
Researchers obtain the characteristics of mobile applications through dynamic analysis and static analysis, including operation code, API calls, behavior characteristics et al. Malware families with similar characteristics are more likely to transfer knowledge to each other. The method of determining the similarity between malware families based on features is interpretable. However, it is hard to define all the characteristics of android applications, especially for the rarely studied low-resource malware families. Futhermore it is usually time-consuming to analyze the malware applications. We propose an empirical supportive score to measure the transfer quality. Specifically, we train a malware detection model with one family m t r a i n and test on the target family m t e s t , and define the test performance as the supportive score from m t r a i n to m t e s t . To achieve good performance on a given test set, we could select the family with the biggest supportive score as training data.
This quantitative relationship between malware families directly corresponds to the performance of malware detection performance and could help to improve the detection performance. We further explore the relationship between the characteristics of malware families and the supportive score. We find that the supportive score is highly correlated to the human summarized characteristics.

3.2. Sequential Family Selection (SFS) Algorithm

In this section, we first formalize the problem. Then we propose two baselines, the most supportive family only and the training with all the malware families. We further propose a new malware family selection algorithm to carefully select multiple families as the training set. Finally, we compare the performance of these four malware detection methods and validate our research questions. Formally, we target to test the performance of a target malware family m t , which have a validation and test dataset. The training data include a set of malware families S t r a i n = { m 1 , m 2 , , m n } , and each malware family corresponds to a training dataset D i , which contains malware from the corresponding family and randomly sampled benign. The benign samples of different groups of training data are not overlapping. We have two baseline settings for this problem. The first one is to train all the malware families in the training dataset and test on the target malware family. This is equivalent to neglecting the differences between different malware families. The second one is to find a training family which is the most supportive one to target the malware family. We empirically calculate the supportive malware family from the malware family m a to malware family m b by training on m a and test on m b .
To achieve better performance, we propose a Sequential Family Selection algorithm (SFS). SFS’s target is to select from a subset of malware families in training data. SFS starts from an empty set and selects families one by one. In each step, we will try to combine each candidate with the selected families and evaluation on the target test set. We select the best family with the best performance, i.e., with the biggest supportive score, and add it to the selected set. Formally, we initialize the selected family dataset S s e l e c t e d as empty set before selection, and all the families in the training data are in the candidate set. In the first step, we train each malware family in the candidate set separately and evaluate the target malware family m t . We add the malware family with the best performance into S s e l e c t e d . We also will remove the selected family from the candidate set. Secondly, we combine S s e l e c t e d with the other malware families in the candidate set separately and evaluate on m t . We select the malware family with the best combinations and add the malware into S s e l e c t e d . In the following steps, we repeat iteratively try to combine the malware families in the candidate set with S s e l e c t e d and add the best family into S s e l e c t e d . The algorithm terminates when we add all the families into S s e l e c t e d . Finally, we choose the combination with the best performance in all S s e l e c t e d history and return it as our final selection. We further describe the whole algorithm in Algorithm 1. Our algorithm is independent of the malware detection model and could improve the performance of any model.
Algorithm 1 Sequential Family Selection algorithm (SFS).
Input: A malware classifier C ( ) . A target malware family m t , includes a validation set D v a l i d and a test set D t e s t . A set of training malware families S t r a i n = { m 1 , m 2 , , m n } , each m i corresponds to a set of training samples D i .
Output: A subset of S t r a i n .
    1:
Suppose added training set S s e l e c t e d = ϕ , best training set S b e s t = ϕ , best validation performance is S c o r e b e s t =0.
    2:
while S t r a i n is not empty set do
    3:
     b e s t _ f a m i l y _ i n _ s t e p = N o n e , b e s t _ s c o r e _ i n _ s t e p = 0
    4:
    for  m i in S t r a i n  do
    5:
        current training set S c = S a d d e d { m i }
    6:
        train classifier with S c , model = C ( S c )
    7:
        test on D v a l i d , s c o r e = e v a l u a t i o n ( m o d e l ( D v a l i d ) )
    8:
        if  s c o r e > b e s t _ s c o r e  then
    9:
              b e s t _ s c o r e _ i n _ s t e p = s c o r e
    10:
            b e s t _ f a m i l y _ i n _ s t e p = m i
    11:
     S s e l e c t e d = S s e l e c t e d { b e s t _ f a m i l y _ i n _ s t e p }
    12:
     S t r a i n = S t r a i n { b e s t _ f a m i l y _ i n _ s t e p }
    13:
    if  b e s t _ s c o r e > S c o r e b e s t  then
    14:
         S b e s t = S s e l e c t e d
    15:
         S c o r e b e s t = b e s t _ s c o r e
    16:
return S b e s t

4. Experimental Setup

4.1. Malware Detection Approaches

Our method is designed to benefit malware detection by studying the relationship between the malware families. As for the malware detection approaches, we apply four popular malware detection methods csbd, drebin, mamadroid, and droidsieve.
Csbd [19] extracts the control flow graph as the features of malware detection. It was first proposed by Kevin from the University of Luxembourg. This method performs the static analysis on the application bytecode to extract the control flow graph, takes the basic blocks of the control flow graph as features of the application, and uses classification algorithms in machine learning to assign it. Drebin [20] uses multiple static analysis approaches to extract multiple features of the application from disassembled code and the information file as the features for Android malware detection. It is a lightweight detection method for Android malware. SVM algorithm is used to automate the classification of applications. Mamadroid [21] is a malware detection model based on application behavior. This method extracts and abstracts the sequence of calls between APIs in an application, constructs feature vectors based on Markov chain, and uses different classification algorithms in machine learning to assign applications. Droidsieve [22] utilizes the confusion invariant features and artifacts introduced by the confusion mechanism used in malware attacks to classify malware.

4.2. Malware Corpus

To prepare for our study on malware detection, we collect a set of Android applications from Androzoo, an open Android datasets collection project [2]. The Android apks from Androzoo were obtained from various app markets. As VirusTotal is broadly utilized for Android malware labeling, we use the scanned results of VirusTotal to resolve the labels of the collected Android apks. VirusTotal uses more than 70 anti-virus scanners and URL/domain block list services to check items [32]. The Android apk is labeled as benign software when no engines in VirusTotal marks it as positive. In order to ensure the reliability of the collected dataset, we label the apk as malware when at least five engines in VriusTotal label this apk as malicious. We use Euphony [33] to acquire more information about the malware family of each data in the collected apks. We collect a dataset containing over 20,000 malware with family-type information and 20,000 benign software, and the time span of the dataset is 2015 to 2016. Note that, we will construct different groups of training and test sets targeting diverse cases we have considered in this paper.

4.3. Testing Dataset

Many different malware families exist in our community. We pick 16 random families from the malware corpus for our study. To ensure the consistency of our experiments, the number of each malware family is 500. We then combine 500 benign software with each malware family to construct the test set. The collected malware families belong to different categories with different malicious characteristics. Table 2 shows the name and the description of the selected malware family. Note that the malware family in the test set does not appear in the training dataset.

5. Results and Discussions

In this section, we illustrate the impact of different malware families in training set on the malware detection and obtain the supportive score of the 16 malware families.

5.1. Dataset Construction

We construct 16 malware benchmarks to be used as the 16 test sets. Each test set consists of 1000 apks with 500 malware and 500 benign. The dataset used in this section is from 2015. The test set of each experiment contains merely one malware family. To minimize the variability of the experimental results, we perform each set of experiments five times. We then use the average of the five results as the final outcome of each experiment.

5.2. Supportive Score of Malware Families

We further analyze the impact of malware detection performance when using distinct malware families for training. Table 3, Table 4, Table 5, and Table 6 shows the accuracy of our experiment results for the different malware families in the training set. We bold the maximum values in Table 3, Table 4, Table 5, and Table 6 for the experimental groups that test the same malware family, which is the supportive score of the corresponding malware family.
It is interesting to find that accurate malware detection is possible when the malware families in the training and test sets are completely different. However, the malware detection performance differs between the four algorithms. The accuracy of malware detection between 37.7% pairs in csbd is higher than 55%, 79.1% pairs in drebin are higher than 55% and 51.6% pairs in mamadroid are higher than 55%. Moreover, 60.8% pairs in droidsieve are higher than 55%. It can be seen that only 25, 109, 36, and 72 (10.4%, 45.4%, 15%, and 30% in proportion) groups of experiments yield an accuracy of over 80%. The accuracy of malware detection is highly related to the malware family used in the training dataset. For example, gingermaster works the best and revmob performs the worst when testing the malware family ginmaster in csbd, with a difference of 22.2% in the terms of accuracy. The training set with leadbolt could achieve an accuracy of 92.3% when detecting plankton in drebin, but only 48.7% when using admogo as the training set.
Electronics 11 04148 i001

5.3. Low-Resource Malware Family Detection

In this section, we investigate the performance of our algorithm in the case of low-resource malware detection. We apply SFS algorithm to four malware detection method, csbd, drebin, mamadroid and droidsieve. Each malware detection method is performed in 16 sets of experiments.
Low-resource malware families refer to the malware families that have a small amount of data but do not have enough data to train a malware detection model. The target malware family with only 10 samples in the training set, can be considered as a low-resource malware family. Other malware families of each group of experiments have 500 samples. We first conduct the experiment using data from 2015.
For a detailed discussion, we illustrate the SFS process of the detection of plankton using drebin. The leftmost part of Figure 1 shows the first step of the SFS algorithm. We train the other 15 families separately. It can be seen that training on leadbolt could perform better than any other malware families. We take leadbolt as the base set of our next iteration of SFS. The rest of the malware families are combined with the base set leadbolt, separately. The second part of Figure 1 shows that adding gingermaster to leadbolt could perform the best. The combination of leadbolt and gingermaster is taken as a new training dataset for the next round of the experiment. This is repeated until all the malware families are added to the training set. The best solution for this method is “leadbolt + gingermaster + ginmaster + utchi + wapsx + mulad + droidkungfu”.
To ensure the validity of the experiments, when a certain number of malware samples are added in each round of experiments, we then combine them with the same number of benign samples. We also perform each experiment five times to minimize the error of the experimental results. The results of each experiment are obtained by taking the average of the five experiments. We compare the best malware detection performance of training with only one family, the malware detection performance trained with all families, and the malware detection performance using our algorithm. Table 7 shows the comparison of the malware detection performance between the three cases. It can be seen that SFS algorithm outperforms when applied to all the four malware detection methods. In particular, some low-resource malware family detection can be improved by over 10% in the terms of accuracy using our SFS algorithm, such as the detection of malware droidkunfu with Csbd and the detection of malware umeng with Drebin. The malware detection performance of different malware detection algorithms varies when malware families in the dataset are different. For example, the malware detection accuracy of Droidsieve is greater than 90% in 13 out of the 16 groups of experiments. With our SFS algorithm, the detection results using Droidsieve for artemis and ginmaster are improved by 6.4% and 8.12%, respectively. We also compare the average malware detection accuracy of the 16 malware families. The performance of the malware detection method using SFS algorithm has been improved. Mamadroid with SFS algorithm has the highest improvement in malware detection, which can reach 6.73%.
The Android mobile applications are constantly evolving with the rapid development of technology [52]. New malware is often constantly updated to evade malware detection. This leads to the fact that malware detection algorithms that can achieve very good results in one year may not be able to classify new malware produced in the next year.
To explore the sustainability of SFS algorithm, we use the model trained by the data collected in 2015 to test the data in 2016, that is, the malware detection classifier obtained by using outdated data is trained to detect future malware data samples by observing the performance of malware detection algorithm to further evaluate the sustainability of SFS algorithm.
It can be seen from Table 8 that SFS algorithm does not work well when some malware families, such as mulad and umeng, use the outdated data for training, but SFS algorithm still has a better detection performance for most low-resource malware family detection. Table 8 shows that SFS algorithm performs the best on average. It can be assumed that SFS algorithm can support the sustainability of malware detection algorithms. From the average value, the combination of SFS algorithm with csbd, drebin, mamadroid and droidsieve can improve their malware detection accuracy by 4.11%, 0.76%, 3.36% and 4.26%, respectively. For a specific malware family and detection algorithm, SFS algorithm can greatly improve its performance. For example, the malware detection algorithm csbd trained the malware detection classifier using data from 2015, and SFS algorithm still improve the detection accuracy of the malware family droidkungfu by 13.32% when detecting the malware family droidkungfu in 2016.

5.4. Zero-Resource Malware Family Detection

In this section, we further investigate the most extreme case of the low-resource malware family detection, which is the zero-resource malware family detection. Zero-resource is the most extreme case of low-resource malware family detection. Zero-resource detection means that the malware detection model has never seen this malware family, that is, the zero-resource malware family is not included in the training dataset. Table 9 shows the comparison of malware detection performance when the malware family to be detected does not exist in the training data set. It shows that SFS algorithm performs the best in all of the experiments when the malware family to be detected does not exist in the training dataset.
In 60.4% of the experiments, the malware detection performance training on all malware families is worse than the one training based on SFS. This shows that we cannot simply improve the malware detection performance on the target family by adding more but unrelated malware data. Using all malware families for training is equivalent to ignoring the differences between malware families in the hope of using one model to detect all malware. Our results also show this is a bad solution for malware detection.
The performance of SFS is higher than the two baselines in all of the experiments. This shows the effectiveness of SFS. This shows that carefully selecting multiple malware families is better than only selecting one most supportive family.
Figure 2 shows the performance of plankton in terms of accuracy. The size of the training set for the four malware detection methods in each experiment is the same. The horizontal coordinate indicates the name of the malware family for which the highest accuracy can be achieved by adding the target malware family. We could see that the malware detection accuracy of plankton reaches the highest in the middle of the process of SFS.
Electronics 11 04148 i002

6. Relationship between Malware Families

Our results show that it could be supported by training with different malware families for the low-resource malware detection. However, the performance varies between different malware families. Therefore, we further dwell on understanding under what circumstances could support the low resource malware detection? We hypothesize that the knowledge transfer between different malware families is because they have similar characteristics. In this section, we study two popular characteristics: whether malware steals user data and whether malware displays advertisements to mobile users.

6.1. Malware Categories

Steal Data. Some of the malware families could steal user information from the device. The report [53] points out that 60.7% of the applications collected Android ID and other unique device identification information, 55.4% of the applications collected application list information, 13.7% of the applications collected clipboard information, such information can be used for character portraits, personalized push, and other business. The sensitivity of this kind of information is relatively high.
Display Advertisements. Some of these malware families are sorted as adware. It is a malicious application that puts unneeded ads on users’ screens, especially when accessing web services. Adware lures users to view ads that offer lucrative products and entices them to click on that ad. Once the user clicks on the ad, the developer of the unwanted application generates revenue. Some common examples of adware include weight loss programs that make money in a shorter period of time and on-screen warnings about fake viruses.

6.2. Analysis

Table 10 shows the special characteristics of the 16 malware families. We label the malware with the characteristics of stealing user data or displaying advertisements as ‘∘’ and those without these characteristics as ‘×’. To better show the relationship between the malware detection performance and the malware characteristics, we further leverage TSNE to map the malware detection performance in Table 8 into two-dimension vectors. The results are shown in Figure 3 for all the four malware detection models.
In Figure 3, we could find that (1) most of the malware families with the same characteristics are close to each other for all the four malware classification models. For example, the malware families that steal user data such as ginmaster, gingermaster, and nandrobox are close to each other, and plankton and leadbolt are also close to each other. The malware families that display ads such as waps, wapsx, and umeng are always close to each other. This shows that most of the similarities could be captured by all the malware detection models. (2) The malware relatedness has a slight difference between different malware detection algorithms. For example, for both csbd and mamadroid, mulad is far from the ads cluster. However, in drebin and droidsieve, mulad is close to the ads cluster, while admogo is the opposite. This may be because that drebin and droidsieve are not good at capturing the corresponding similar characteristics between admogo and other ads malware.
The results show that most of the supportive scores match our human knowledge. A higher supportive score means the characteristics of different malware are more similar. If the target malware family uses similar technology or has similar targets to the training family, our model could leverage this knowledge and achieve good results.
Although summarizing common characteristics could improve the human understanding of the knowledge transfer, using an empirical supportive score is a better way if we only target to improve the low-resource malware family performance. There are two reasons: (1) Specific malware detection models may not be good at capturing the common characteristics even if they exist. For example, csbd and mamadroid show that mulad is similar to ads cluster while drebin or droidsieve cannot. In this case, it is better to use a different family for drebin or droidsieve algorithm. (2) Summarizing all characteristics need a huge effort from experts, and experts may have less interest to study the low-resource malware families because they often have less impact. In this case, an empirical supportive score is much easy to get and only costs computer resources.
Electronics 11 04148 i003

7. Conclusions and Future Work

Our work studies the cross-family knowledge transfer for low resource malware family detection. We quantify the knowledge transfer ability between malware families by supportive scores. We propose Sequential Family Selection algorithm to select multiple malware familes related to the target malware family to support low resource malware family detection based on the supportive scores of different malware families. The experiment shows that the Sequential Family Selection algorithm can better improve the performance of the malware detection model based on machine learning method in low-resource malware family detection. The research in this paper demonstrates that cross-family knowledge transfer can effectively improve the detection performance of low-resource malware. Furthermore, by analyzing the two behavioral characteristics of stealing user data and displaying advertisements, it could be found that the knowledge transfer between different malware families is due to their common characteristics.
In future work, we plan to set different weights on each malware family in the training dataset. The weights are based on the contribution to the target malware family detection. Each target malware family can select some specific families to improve its detection performance. New knowledge transfer methods can also be further explored to achieve better detection results for low-resource malware detection.

Author Contributions

Validation, methodology, Writing—original draft, Y.L.; Writing—review & editing, G.X. (Guoai Xu) and G.X. (Guosheng Xu); Validation, S.L. and C.D. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by National Natural Science Foundation of China under grant of No. 62172006 and the National Key Research and Development Program of China (grants No.: 2021YFB3101500).

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Allix, K.; Bissyandé, T.F.; Klein, J.; Le Traon, Y. AndroZoo: Collecting Millions of Android Apps for the Research Community. In Proceedings of the 13th International Conference on Mining Software Repositories (MSR’16), Austin, TX, USA, 14–15 May 2016; ACM: New York, NY, USA, 2016; pp. 468–471. [Google Scholar]
  2. Li, L.; Gao, J.; Hurier, M.; Kong, P.; Bissyandé, T.F.; Bartel, A.; Klein, J.; Traon, Y.L. Androzoo++: Collecting millions of android apps and their metadata for the research community. arXiv 2017, arXiv:1709.05281. [Google Scholar]
  3. Zhou, Y.; Jiang, X. Dissecting android malware: Characterization and evolution. In Proceedings of the 2012 IEEE Symposium on Security and Privacy, San Francisco, CA, USA, 24–25 May 2012; pp. 95–109. [Google Scholar]
  4. Tran, T.K.; Sato, H.; Kubo, M. Image-based unknown malware classification with few-shot learning models. In Proceedings of the 2019 Seventh International Symposium on Computing and Networking Workshops (CANDARW), Nagasaki, Japan, 26–29 November 2019; pp. 401–407. [Google Scholar]
  5. Chai, Y.; Du, L.; Qiu, J.; Yin, L.; Tian, Z. Dynamic prototype network based on sample adaptation for few-shot malware detection. IEEE Trans. Knowl. Data Eng. 2022. [Google Scholar] [CrossRef]
  6. Tang, Z.; Wang, P.; Wang, J. ConvProtoNet: Deep prototype induction towards better class representation for few-shot malware classification. Appl. Sci. 2020, 10, 2847. [Google Scholar] [CrossRef] [Green Version]
  7. Wang, P.; Tang, Z.; Wang, J. A novel few-shot malware classification approach for unknown family recognition with multi-prototype modeling. Comput. Secur. 2021, 106, 102273. [Google Scholar] [CrossRef]
  8. Zhu, J.; Jang-Jaccard, J.; Singh, A.; Watters, P.A.; Camtepe, S. Task-aware meta learning-based siamese neural network for classifying obfuscated malware. arXiv 2021, arXiv:2110.13409. [Google Scholar]
  9. Bai, Y.; Xing, Z.; Li, X.; Feng, Z.; Ma, D. Unsuccessful story about few shot malware family classification and siamese network to the rescue. In Proceedings of the 2020 IEEE/ACM 42nd International Conference on Software Engineering (ICSE), Seoul, Republic of Korea, 27 June–19 July 2020; pp. 1560–1571. [Google Scholar]
  10. Kamacı, H.; Marinkovic, D.; Petchimuthu, S.; Riaz, M.; Ashraf, S. Novel Distance-Measures-Based Extended TOPSIS Method under Linguistic Linear Diophantine Fuzzy Information. Symmetry 2022, 14, 2140. [Google Scholar] [CrossRef]
  11. Alsboui, T.; Hill, R.; Al-Aqrabi, H.; Farid, H.M.A.; Riaz, M.; Iram, S.; Shakeel, H.M.; Hussain, M. A Dynamic Multi-Mobile Agent Itinerary Planning Approach in Wireless Sensor Networks via Intuitionistic Fuzzy Set. Sensors 2022, 22, 8037. [Google Scholar] [CrossRef] [PubMed]
  12. Raff, E.; Nicholas, C. Lempel-Ziv Jaccard Distance, an effective alternative to ssdeep and sdhash. Digit. Investig. 2018, 24, 34–49. [Google Scholar] [CrossRef] [Green Version]
  13. Drew, J.; Moore, T.; Hahsler, M. Polymorphic malware detection using sequence classification methods. In Proceedings of the 2016 IEEE Security and Privacy Workshops (SPW), San Jose, CA, USA, 22–26 May 2016; pp. 81–87. [Google Scholar]
  14. Shabtai, A.; Moskovitch, R.; Feher, C.; Dolev, S.; Elovici, Y. Detecting unknown malicious code by applying classification techniques on opcode patterns. Secur. Inform. 2012, 1, 1. [Google Scholar] [CrossRef] [Green Version]
  15. Allix, K.; Bissyandé, T.F.; Jérome, Q.; Klein, J.; Le Traon, Y. Empirical assessment of machine learning-based malware detectors for Android. Empir. Softw. Eng. 2016, 21, 183–211. [Google Scholar] [CrossRef]
  16. Arp, D.; Spreitzenbarth, M.; Hubner, M.; Gascon, H.; Rieck, K.; Siemens, C. Drebin: Effective and explainable detection of android malware in your pocket. In Proceedings of the Network and Distributed System Security Symposium (NDSS), San Diego, CA, USA, 23–26 February 2014; Volume 14, pp. 23–26. [Google Scholar]
  17. Afonso, V.M.; de Amorim, M.F.; Grégio, A.R.A.; Junquera, G.B.; de Geus, P.L. Identifying Android malware using dynamically obtained features. J. Comput. Virol. Hacking Tech. 2015, 11, 9–17. [Google Scholar] [CrossRef]
  18. Cai, M.; Jiang, Y.; Gao, C.; Li, H.; Yuan, W. Learning features from enhanced function call graphs for Android malware detection. Neurocomputing 2021, 423, 301–307. [Google Scholar] [CrossRef]
  19. Dash, S.K.; Suarez-Tangil, G.; Khan, S.; Tam, K.; Ahmadi, M.; Kinder, J.; Cavallaro, L. Droidscribe: Classifying android malware based on runtime behavior. In Proceedings of the 2016 IEEE Security and Privacy Workshops (SPW), San Jose, CA, USA, 22–26 May 2016; pp. 252–261. [Google Scholar]
  20. Mariconti, E.; Onwuzurike, L.; Andriotis, P.; De Cristofaro, E.; Ross, G.; Stringhini, G. Mamadroid: Detecting android malware by building markov chains of behavioral models. arXiv 2016, arXiv:1612.04433. [Google Scholar]
  21. Suarez-Tangil, G.; Dash, S.K.; Ahmadi, M.; Kinder, J.; Giacinto, G.; Cavallaro, L. Droidsieve: Fast and accurate classification of obfuscated android malware. In Proceedings of the Seventh ACM on Conference on Data and Application Security and Privacy, Scottsdale, AZ, USA, 22–24 March 2017; pp. 309–320. [Google Scholar]
  22. Li, M.; Fang, Z.; Wang, J.; Cheng, L.; Zeng, Q.; Yang, T.; Wu, Y.; Geng, J. A Systematic Overview of Android Malware Detection. Appl. Artif. Intell. 2022, 36, 2007327. [Google Scholar]
  23. Avdiienko, V.; Kuznetsov, K.; Gorla, A.; Zeller, A.; Arzt, S.; Rasthofer, S.; Bodden, E. Mining apps for abnormal usage of sensitive data. In Proceedings of the 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, Florence, Italy, 16–24 May 2015; Volume 1, pp. 426–436. [Google Scholar]
  24. Hou, S.; Saas, A.; Chen, L.; Ye, Y. Deep4maldroid: A deep learning framework for android malware detection based on linux kernel system call graphs. In Proceedings of the 2016 IEEE/WIC/ACM International Conference on Web Intelligence Workshops (WIW), Omaha, NE, USA, 13–16 October 2016; pp. 104–111. [Google Scholar]
  25. Aafer, Y.; Du, W.; Yin, H. Droidapiminer: Mining api-level features for robust malware detection in android. In Proceedings of the International Conference on Security and Privacy in Communication Systems, Sydney, NSW, Australia, 25–28 September 2013; Springer: Cham, Switzerland, 2013; pp. 86–103. [Google Scholar]
  26. Tran, K.; Sato, H.; Kubo, M. MANNWARE: A malware classification approach with a few samples using a memory augmented neural network. Information 2020, 11, 51. [Google Scholar] [CrossRef] [Green Version]
  27. Kim, C.H.; Kabanga, E.K.; Kang, S.J. Classifying malware using convolutional gated neural network. In Proceedings of the 2018 20th International Conference on Advanced Communication Technology (ICACT), Chuncheon, Republic of Korea, 11–14 February 2018; pp. 40–44. [Google Scholar]
  28. Kim, J.Y.; Bu, S.J.; Cho, S.B. Zero-day malware detection using transferred generative adversarial networks based on deep autoencoders. Inf. Sci. 2018, 460, 83–102. [Google Scholar] [CrossRef]
  29. Hashemi, H.; Hamzeh, A. Visual malware detection using local malicious pattern. J. Comput. Virol. Hacking Tech. 2019, 15, 1–14. [Google Scholar] [CrossRef]
  30. Moti, Z.; Hashemi, S.; Karimipour, H.; Dehghantanha, A.; Jahromi, A.N.; Abdi, L.; Alavi, F. Generative adversarial network to detect unseen internet of things malware. Ad Hoc Netw. 2021, 122, 102591. [Google Scholar] [CrossRef]
  31. Chen, L.; Li, X.; Wu, D. Adversarially Reprogramming Pretrained Neural Networks for Data-limited and Cost-efficient Malware Detection. In Proceedings of the 2022 SIAM International Conference on Data Mining (SDM), Alexandria, VA, USA, 28–30 April 2022; pp. 693–701. [Google Scholar]
  32. VirusTotal. How It Works. Available online: https://support.virustotal.com/hc/en-us/articles/115002126889-How-it-works (accessed on 2 October 2022).
  33. Hurier, M.; Suarez-Tangil, G.; Dash, S.K.; Bissyandé, T.F.; Le Traon, Y.; Klein, J.; Cavallaro, L. Euphony: Harmonious unification of cacophonous anti-virus vendor labels for android malware. In Proceedings of the 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), Buenos Aires, Argentina, 20–21 May 2017; pp. 425–435. [Google Scholar]
  34. F-Secure. Trojan:Android/GinMaster.A. Available online: https://www.f-secure.com/v-descs/trojan_android_ginmaster.shtml (accessed on 2 October 2022).
  35. EnigmaSoft. Artemis Trojan. Available online: https://www.enigmasoftware.com/artemistrojan-removal/ (accessed on 2 October 2022).
  36. Spyware Removal Reviews. Android.Nandrobox. Available online: http://spywareremovalreviews.com/android-nandrobox/ (accessed on 2 October 2022).
  37. F-Secure. Trojan:Android/NandroBox.A. Available online: https://www.f-secure.com/v-descs/trojan_android_nandrobox.shtml (accessed on 2 October 2022).
  38. Antivirus, M.D. Trojan:AndroidOS/Plankton.gen!A. Available online: https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=Trojan%3AAndroidOS%2FPlankton.gen!A (accessed on 2 October 2022).
  39. Wikipedia. DroidKungFu. Available online: https://en.wikipedia.org/wiki/DroidKungFu (accessed on 2 October 2022).
  40. SOPHOS. First Malware Using Android Gingerbreak Root Exploit. Available online: https://nakedsecurity.sophos.com/2011/08/22/first-malware-using-android-gingerbreak-exploit/ (accessed on 2 October 2022).
  41. Lee, H.T.; Kim, D.; Park, M.; Cho, S.J. Protecting data on android platform against privilege escalation attack. Int. J. Comput. Math. 2016, 93, 401–414. [Google Scholar] [CrossRef]
  42. SanJuan, C. How to Remove Leadbolt Ads. Available online: https://www.viruspup.com/adware/remove-leadbolt-ads.html (accessed on 2 October 2022).
  43. Hart, P. How to Remove Android.Umeng—Adware Removal Guide. Available online: https://windowsbulletin.com/malware/adware/android-umeng (accessed on 2 October 2022).
  44. Arsene, L. Android Mobile Malware Report” June 2012. Available online: https://www.bitdefender.com/blog/hotforsecurity/android-mobile-malware-report-june-2012 (accessed on 2 October 2022).
  45. FortiGuard. Android/Waps.F. Available online: https://www.fortiguard.com/encyclopedia/virus/6287037 (accessed on 2 October 2022).
  46. FortiGuard. Adware/Domob. Available online: https://www.fortiguard.com/encyclopedia/virus/6207681 (accessed on 2 October 2022).
  47. MacUtility. If You Fear That You Have A Virus or Another Unwanted Program, You Can Identify It by Scanning Your System with the Appropriate Anti-Malware Tool. Available online: https://macutility.com/Potentially-Unwanted-App/remove-Android.MobWin-667.html (accessed on 2 October 2022).
  48. Hart, P. How to Remove ADWARE/ANDR.RevMob.A.Gen—Adware Removal Guide. Available online: https://windowsbulletin.com/malware/adware/adware-andr-revmob-a-gen (accessed on 2 October 2022).
  49. Doctor Web. March 2016 Mobile Malware Review from Doctor Web. Available online: https://news.drweb.com/show/review/?lng=en&i=9899 (accessed on 2 October 2022).
  50. SOPHOS. Android Wapsx. Available online: https://www.sophos.com/en-us/threat-center/threat-analyses/viruses-and-spyware/Android%20Wapsx/detailed-analysis (accessed on 2 October 2022).
  51. KAUR, G.; LASHKARI, A.H. Understanding Android Malware Families (UAMF)—The Foundations (Article 1). Available online: https://www.itworldcanada.com/blog/understanding-android-malware-families-uamf-the-foundations-article-1/441562 (accessed on 2 October 2022).
  52. Cai, H. Embracing mobile app evolution via continuous ecosystem mining and characterization. In Proceedings of the IEEE/ACM 7th International Conference on Mobile Software Engineering and Systems, Seoul, Republic of Korea, 13–15 July 2020; pp. 31–35. [Google Scholar]
  53. Cyberspace Association of China. Monitoring and Analysis Report on Collection and Use of Personal Information in Violation of Laws and Regulations of App. Available online: http://www.cac.gov.cn/2021-12/09/c_1640647038708751.htm (accessed on 2 October 2022).
Figure 1. Study of SFS for plankton using Drebin.The number in bolds and the red box show the best results.
Figure 1. Study of SFS for plankton using Drebin.The number in bolds and the red box show the best results.
Electronics 11 04148 g001
Figure 2. The performance of malware detection methods using SFS to detect plankton. (a) csbd. (b) drebin. (c) mamadroid. (d) droidsieve.
Figure 2. The performance of malware detection methods using SFS to detect plankton. (a) csbd. (b) drebin. (c) mamadroid. (d) droidsieve.
Electronics 11 04148 g002
Figure 3. The relationship between the malware detection performance and the malware characteristics. Red color represents the characteristics of displaying ads and blue color represents the characteristics of stealing user data. (a) csbd. (b) drebin. (c) mamadroid. (d) droidsieve.
Figure 3. The relationship between the malware detection performance and the malware characteristics. Red color represents the characteristics of displaying ads and blue color represents the characteristics of stealing user data. (a) csbd. (b) drebin. (c) mamadroid. (d) droidsieve.
Electronics 11 04148 g003
Table 1. Low-resource malware detection based on machine learning.
Table 1. Low-resource malware detection based on machine learning.
TypeTechniqueAuthor (Published Year)Disadvantage
Improvement of the generation of prototype representations.They used dynamic prototype network to generate prototype representations.Chai et al. (2022)  [5]The data samples of malware families related to the target malware family are ignored.
They used multilayer convolutional neural networks to generate prototype representations.Tang et al. (2020)  [6]
Improvement of the training network.They used a contrast loss function to better train the twin network.Bai et al. (2020)  [9]Samples of the target malware family were used only.
They used meta-learning to train memory neural networks for malware family classification.Tran et al. (2020)  [26]
Increase of data samples.They used generative adversarial networks to generate new sample signatures of malware.Zahra et al. (2021)  [30]Artificially constructed data are used only.
They proposed Adv4Mal to generate new data based on specific signatures of malware to supplement the training data of the low-resource malware family.Chen et al. (2020)  [31]
Table 2. The detailed description of the selected malware family.
Table 2. The detailed description of the selected malware family.
Malware FamilyDescription
GinmasterGinmaster is a Trojanized and re-packaged application family distributed in Chinese thirty-party stores targeting Android mobile devices [1]. GinMaster steals confidential information from the device and sends it to a remote website [34].
ArtemisThe Artemis Trojan is a Trojan infection that prevents computer users from using the infected computer effectively. If the Artemis Trojan is installed on a computer, the affected computer user will not be able to install or delete any new software [35].
NandroboxNandrobox is a Trojan horse for Android devices that steals information from the compromised device [36]. NandroBox sends out SMS messages to a specific number, and then intercepts incoming messages from that number to cover its tracks [37].
PlanktonPlankton is a trojan that affects mobile devices running the Android operating system. It may arrive as part of repackaged Android apps and downloaded from third-party Android app markets. It changes the device’s settings and steals information stored in the device [38].
DroidkungfuDroidKungFu is a malware that affects Android OS [38]. This malware is capable of rooting vulnerable Android phones and may successfully evade the detection from current mobile anti-virus software [39].
GingermasterGingerMaster is an Android malware that contains a root exploit packaged within an infected app [40]. GinegerMaster acts to be a normal application on the users’ phone, and once the application is launched on an Android device, it acquires root privileges through GingerBreak on the device and then accesses sensitive data [41].
LeadboltLeadbolt is a form of adware program that allows users to see numerous ads appearing on their computer screens. It is bundled with free or pirated software, and when users install such software, it enters their computer [42].
UmengUmeng is a known form of adware, a type of malicious software that runs on users’ computers to display unwanted ads without their consent. After installation, umeng starts displaying unwanted ads when you browse the Internet with your browser [43].
MuladMulad is mainly used to generate income by injecting Adsense code into legitimate free apps that are then repacked and uploaded to third-party marketplaces. While they are not malicious in nature, these apps are hijacked and used by others to generate income [44].
WapsWaps is classified as a file infector. It has the capability to propagate by attaching its code to other programs or files [45].
DomobDomob is a type of malware that has the capability to propagate by attaching its code to other programs or files [46].
MobwinMobwin is a type of potentially unwanted program and always pretends to be legitimate software that has the ability to help users remove PC threats and optimize system performance. Once installed on the device, Mobwin will scan users’ machines automatically and show you lots of system vulnerabilities, errors, and threats hidden in the laptop or computers [47].
RevmobRevMob is a type of malicious software that runs on users’ computers to display unwanted ads without their consent. Revmob starts displaying unwanted ads when users browse the Internet with their browser [48].
AdmogoAdmogo is an unwanted program module that is incorporated into Android applications and is responsible for advertising on mobile devices [49].
WapsxWapsx includes apps that incorporate an advertising package. The incorporation of an advertising package that has the capability to display advertisements in the notification tray may be potentially unwanted [50].
UtchiUtchi is a potentially unwanted malware family that comes bundled with genuine applications that are available free of cost. It automatically gets installed when the application it is bundled with is installed [51].
Table 3. Malware detection performance with different malware families in the training set using csbd. The number in bolds show the best results.
Table 3. Malware detection performance with different malware families in the training set using csbd. The number in bolds show the best results.
Testginmasterartemisnandroboxplanktondroidkungfugingermasterleadboltumengmuladwapsdomobmobwinrevmobadmogowapsxutchi
Train
ginmaster69.195.457.992.982.155.868.692.285.980.290.351.796.090.066.1
artemis63.195.052.584.469.451.773.984.372.973.681.759.996.573.263.0
nandrobox51.256.350.150.253.850.450.452.254.350.952.753.450.252.249.9
plankton50.252.349.949.751.750.650.150.453.250.052.253.349.951.149.9
droidkungfu52.053.151.450.554.250.750.274.357.294.468.853.499.255.650.0
gingermaster72.164.773.452.167.351.165.595.161.256.260.353.394.259.549.5
leadbolt51.952.049.771.150.751.650.253.253.650.052.153.349.851.149.6
umeng51.754.187.251.273.555.252.165.162.259.958.753.394.067.949.9
mulad51.152.750.050.579.059.150.350.254.252.482.753.453.753.650.0
waps57.266.963.351.259.755.152.165.582.955.255.353.459.097.868.0
domob51.652.951.450.382.553.250.550.264.755.966.553.555.553.750.0
mobwin50.752.749.849.956.852.050.049.956.453.353.253.153.952.249.8
revmob49.952.949.651.649.651.550.849.750.153.049.751.949.750.849.5
admogo50.552.550.050.866.452.150.350.253.953.452.360.853.451.650.0
wapsx56.662.350.050.955.653.550.550.578.293.750.752.853.450.168.1
utchi50.452.450.050.150.051.950.350.250.653.450.252.353.450.151.2
Table 4. Malware detection performance with different malware families in the training set using drebin. The number in bolds show the best results.
Table 4. Malware detection performance with different malware families in the training set using drebin. The number in bolds show the best results.
Testginmasterartemisnandroboxplanktondroidkungfugingermasterleadboltumengmuladwapsdomobmobwinrevmobadmogowapsxutchi
Train
ginmaster80.593.269.695.390.992.480.395.992.891.688.847.585.490.095.3
artemis79.792.151.592.493.391.275.995.585.293.290.390.594.777.992.9
nandrobox64.875.150.566.770.598.851.594.461.859.855.249.575.559.449.5
plankton53.252.449.951.952.999.451.760.853.550.452.350.049.853.377.5
droidkungfu73.064.483.357.373.697.377.797.382.795.094.748.998.185.394.3
gingermaster85.280.289.058.581.295.172.096.692.284.878.648.475.887.196.2
leadbolt76.257.071.292.373.078.973.593.080.383.374.048.949.581.295.6
umeng74.275.892.758.493.979.994.193.884.894.892.547.795.685.780.6
mulad53.857.859.250.383.064.2100.050.355.061.657.550.051.057.750.0
waps86.882.393.263.795.394.993.088.896.395.792.747.596.296.495.8
domob74.170.889.353.596.479.895.385.095.085.594.048.297.384.189.5
mobwin67.778.169.252.091.372.893.970.793.382.692.847.196.479.977.7
revmob59.554.548.752.349.259.096.249.965.455.950.754.048.452.948.1
admogo56.055.550.449.984.455.899.355.074.361.692.194.049.763.951.7
wapsx84.081.493.359.496.684.596.387.597.895.094.193.848.897.698.1
utchi57.451.549.450.550.754.699.252.649.667.154.252.049.449.562.4
Table 5. Malware detection performance with different malware families in the training set using mamadroid. The number in bolds show the best results.
Table 5. Malware detection performance with different malware families in the training set using mamadroid. The number in bolds show the best results.
Testginmasterartemisnandroboxplanktondroidkungfugingermasterleadboltumengmuladwapsdomobmobwinrevmobadmogowapsxutchi
Train
ginmaster74.445.747.881.777.870.375.779.979.474.663.239.984.781.888.6
artemis60.188.453.785.870.359.255.287.981.088.872.490.050.675.646.1
nandrobox51.655.949.851.854.949.652.150.752.257.653.349.550.051.049.5
plankton50.951.449.952.252.452.250.152.550.356.053.550.649.950.249.8
droidkungfu59.558.460.555.168.255.562.885.268.089.676.548.053.668.648.6
gingermaster69.273.184.149.482.956.865.181.070.680.765.047.392.077.895.7
leadbolt67.557.242.047.455.855.068.957.471.550.651.845.685.877.992.4
umeng72.153.048.147.176.972.967.646.673.975.071.141.887.781.689.7
mulad51.454.750.254.554.155.250.850.253.250.354.650.350.951.849.7
waps62.066.851.048.668.465.956.255.984.658.555.648.492.493.447.6
domob55.458.776.554.879.261.550.754.168.459.677.648.553.756.348.3
mobwin59.257.354.147.481.266.453.464.483.958.988.047.452.960.769.1
revmob49.851.149.949.849.951.649.949.849.850.149.852.249.949.949.8
admogo50.350.750.149.866.551.749.850.450.250.865.162.949.850.049.8
wapsx59.064.452.249.267.964.266.157.877.988.159.655.148.392.251.9
utchi50.450.749.951.050.252.350.550.449.849.849.753.949.949.950.2
Table 6. Malware detection performance with different malware families in the training set using droidsieve. The number in bolds show the best results.
Table 6. Malware detection performance with different malware families in the training set using droidsieve. The number in bolds show the best results.
Testginmasterartemisnandroboxplanktondroidkungfugingermasterleadboltumengmuladwapsdomobmobwinrevmobadmogowapsxutchi
Train
ginmaster80.497.087.394.194.164.478.999.394.692.694.150.298.098.097.4
artemis86.583.777.095.898.256.873.899.593.372.291.694.199.292.496.9
nandrobox50.355.450.050.852.550.150.067.950.250.452.650.050.151.250.0
plankton50.950.150.051.051.753.850.051.251.650.252.450.150.151.355.6
droidkungfu62.958.562.264.767.355.055.498.668.777.681.650.199.774.268.1
gingermaster81.884.976.866.294.254.160.799.890.766.583.450.599.288.470.2
leadbolt70.756.778.795.689.778.269.098.486.592.980.096.064.188.585.7
umeng76.665.896.078.989.582.272.463.288.495.494.450.298.393.168.0
mulad50.550.650.150.361.253.150.250.051.350.754.350.050.251.850.0
waps81.982.485.586.997.393.161.370.699.777.686.750.699.699.297.6
domob68.960.986.967.498.269.759.375.199.581.895.450.099.780.966.7
mobwin60.967.159.056.295.863.851.659.698.664.175.050.099.866.362.6
revmob49.850.749.950.249.851.653.949.849.949.949.852.049.849.849.8
admogo50.850.550.250.289.353.250.050.068.050.454.268.450.051.950.0
wapsx82.779.295.083.397.989.062.182.299.696.186.292.249.998.897.5
utchi50.050.050.050.050.051.750.050.050.050.050.052.250.050.150.0
Table 7. The comparison of low-resource malware family detection. The number in bolds shows the best results.
Table 7. The comparison of low-resource malware family detection. The number in bolds shows the best results.
CsbdDrebinMamadroidDroidsieve
OneAllSFSOneAllSFSOneAllSFSOneAllSFS
admogo93.2799.299.5189.7996.8398.9285.6389.5595.2697.4799.67100
artemis69.6871.7680.6676.2986.6688.5366.5468.5575.3385.7688.9692.16
domob96.5098.2099.2884.1696.8497.9283.5286.6290.3894.9098.4599.22
droidkungfu83.4977.3197.6588.1496.5598.2979.3984.8188.9895.1499.3199.55
gingermaster75.5187.2790.9379.8194.9596.2673.4075.9082.0392.0796.2499.01
ginmaster72.3378.0381.9977.5388.7189.6560.2366.8573.8284.5589.5592.67
leadbolt85.3567.6185.9778.2281.4387.0763.8958.9167.7384.9076.6984.90
mobwin94.3494.5596.3084.9594.0795.9771.0875.9678.7694.3996.4499.21
mulad93.5298.7299.2691.9797.0399.7789.3087.1192.2498.4199.6799.98
nandrobox95.6596.2296.8491.8094.4197.5586.5284.3691.5396.7698.2799.24
plankton94.2180.0694.2193.6995.5396.8886.6050.4986.7692.6396.8898.96
revmob84.2179.3489.2492.4391.0693.9093.1683.1393.1693.3393.4796.88
umeng91.0298.2299.3983.6684.8294.2662.4462.1571.2292.7190.0898.45
utchi10099.5310095.3197.1899.8490.2047.9892.2210099.69100
waps88.3294.594.8784.0594.8195.8778.1584.2588.6092.2297.6399.04
wapsx95.0298.198.3782.1496.8898.3181.8587.2091.5494.7399.3599.63
Average88.2888.6694.0385.8792.9995.5678.2474.6184.9793.1295.0297.43
Table 8. The malwaredetection ability when using the outdated training data. The number in bolds shows the best results.
Table 8. The malwaredetection ability when using the outdated training data. The number in bolds shows the best results.
CsbdDrebinMamadroidDroidsieve
OneAllSFSOneAllSFSOneAllSFSOneAllSFS
admogo69.3694.1793.0884.5093.8093.4876.4886.4687.1492.6698.5698.5
artemis65.2064.2569.5570.5272.0373.2862.2055.4966.4678.8877.1883.22
domob88.7084.4296.7681.2293.3293.3080.6682.885.3992.2295.4897.68
droidkungfu84.0278.0097.3686.9696.7897.5479.0385.4088.0094.6499.4099.22
gingermaster66.1877.7785.3678.1784.2385.2057.8474.4963.3785.891.2896.56
ginmaster60.7365.7971.9572.2187.8585.9060.5367.2065.2479.8889.1291.72
leadbolt72.0056.9965.5978.6266.9874.9660.6464.2365.1380.0058.5280.00
mobwin94.8796.3798.0685.7294.5497.2272.0273.8673.9693.7297.9498.92
mulad67.3373.9271.5669.7172.8669.1170.7863.1768.1070.8877.5477.00
nandrobox91.7592.6793.0388.2292.8295.0484.8472.3684.2491.9295.9496.22
plankton67.5160.6067.5175.3885.0886.4476.0056.7272.9072.3676.5888.96
revmob69.1664.7672.475.4273.9173.0971.9667.0371.9683.9878.6486.70
umeng70.1976.3470.3174.5470.3369.7757.0460.9552.6979.582.6689.26
utchi99.9099.4699.8895.5897.3299.6288.3350.9991.4399.9099.7499.80
waps88.4694.3195.0084.2794.6595.0377.9284.0387.1992.2097.0697.94
wapsx84.9394.5092.7082.4893.7193.3976.6182.4483.5889.4496.9299.08
Average77.5279.6583.7680.2285.6486.4072.0670.4875.4286.1288.2992.55
Table 9. The comparison of zero-resource malware family detection. The number in bolds shows the best results.
Table 9. The comparison of zero-resource malware family detection. The number in bolds shows the best results.
CsbdDrebinMamadroidDroidsieve
OneAllSFSOneAllSFSOneAllSFSOneAllSFS
admogo99.1698.7899.4498.1496.6098.9092.3791.0995.8099.7899.7499.98
artemis69.1275.9778.2482.3585.0386.6074.4268.2576.7184.9287.3290.18
domob94.4094.5297.9795.6896.5497.2089.5787.6091.7095.3698.4499.06
droidkungfu92.9495.9697.8296.6096.3497.5285.8486.0989.1998.1899.2899.36
gingermaster82.0784.7587.6394.8594.6296.0977.7875.1684.3798.2296.2899.01
ginmaster72.0874.4877.3886.7688.0288.4872.1268.4075.2086.4689.8092.12
leadbolt55.8054.5158.4199.9594.3699.9570.3161.5070.3172.4273.5482.62
mobwin90.2991.1795.1094.7393.9095.2677.6378.0178.4395.4296.3299.08
mulad95.1398.7599.2997.7796.6198.7187.8681.1091.0099.8099.7499.88
nandrobox95.3696.1496.9093.2894.2895.6288.4476.2593.0997.0497.0497.90
plankton71.0873.2175.3192.2689.2693.8055.0747.6059.4095.6295.6298.04
revmob59.8759.8361.2490.4890.9892.0289.9762.8089.9796.0293.3296.64
umeng73.9497.6798.6788.8183.8091.8175.7364.0075.7382.1688.5097.78
utchi68.1064.1468.1098.1497.0498.9695.6948.6095.6997.6298.1299.66
waps93.6575.2494.7294.9994.5796.0188.0684.5090.2096.1297.7899.00
wapsx97.8598.0998.4096.3896.8298.3493.3788.9993.3799.1899.3299.58
Average81.9383.3386.5493.8293.0595.3382.1473.1284.3993.4094.3996.87
Table 10. The characteristic of the malware families. The malware with the characteristics of stealing user data or displaying advertisements are labeled as ‘∘’ and those without these characteristics are labeled as ‘×’.
Table 10. The characteristic of the malware families. The malware with the characteristics of stealing user data or displaying advertisements are labeled as ‘∘’ and those without these characteristics are labeled as ‘×’.
Family NameSteal User DataDisplay Ads
Ginmaster×
Artemis××
Nandrobox×
Plankton×
Droidkungfu×
Gingermaster×
Leadbolt×
Umeng×
Mulad×
Waps×
Domob××
Mobwin××
Revmob××
Admogo×
Wapsx×
Utchi××
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Lin, Y.; Xu, G.; Du , C.; Xu , G.; Liu , S. Low-Resource Malware Family Detection by Cross-Family Knowledge Transfer. Electronics 2022, 11, 4148. https://doi.org/10.3390/electronics11244148

AMA Style

Lin Y, Xu G, Du  C, Xu  G, Liu  S. Low-Resource Malware Family Detection by Cross-Family Knowledge Transfer. Electronics. 2022; 11(24):4148. https://doi.org/10.3390/electronics11244148

Chicago/Turabian Style

Lin, Yan, Guoai Xu, Chunlai Du , Guosheng Xu , and Shucen Liu . 2022. "Low-Resource Malware Family Detection by Cross-Family Knowledge Transfer" Electronics 11, no. 24: 4148. https://doi.org/10.3390/electronics11244148

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop