Improving dynamic analysis of android apps using hybrid test input generation

Improving dynamic analysis of android apps using hybrid test input generation

The Android OS has become the most popular mobile operating system leading to a significant increase in the spread of Android malware. Consequently, several static and dynamic analysis systems have been developed to detect Android malware. With dynamic analysis, efficient test input generation is needed in order to trigger the potential run-time malicious behaviours. Most existing dynamic analysis systems employ random-based input generation methods usually built using the Android Monkey tool. Random-based input generation has several shortcomings including limited code coverage, which motivates us to explore combining it with a state-based method in order to improve efficiency. Hence, in this paper, we present a novel hybrid test input generation approach designed to improve dynamic analysis on real devices. We implemented the hybrid system by integrating a random based tool (Monkey) with a state based tool (DroidBot) in order to improve code coverage and potentially uncover more malicious behaviours. The system is evaluated using 2,444 Android apps containing 1222 benign and 1222 malware samples from the Android malware genome project. Three scenarios, random only, state-based only, and our proposed hybrid approach were investigated to comparatively evaluate their performances. iSearch Mobile App For Searching Lost Person

Hybrid test input generation, on the other hand, is a technique that combines both manual and automated testing. It involves generating test cases that mimic user behavior and interactions with the app. By combining both techniques, developers can ensure that the app is thoroughly tested and is free from any security vulnerabilities.

The combination of dynamic analysis and hybrid test input generation offers several benefits. Firstly, it helps to identify vulnerabilities that may be missed during static analysis. Static analysis involves analyzing the code without executing it, whereas dynamic analysis involves analyzing the code while it is being executed. Therefore, dynamic analysis can detect vulnerabilities that may only be present during runtime.

Secondly, hybrid test input generation provides better code coverage. It helps to identify edge cases that may not be covered during manual testing. This, in turn, helps to improve the quality of the app and ensures that it is free from any bugs or vulnerabilities.

Lastly, dynamic analysis of Android apps using hybrid test input generation helps to improve the overall security of the app. With cyber-attacks becoming more sophisticated, it is crucial for developers to ensure that their apps are secure. Dynamic analysis helps to identify vulnerabilities that can be exploited by attackers and provides developers with the necessary information to fix them.

admin

Recent Posts

What Probability basics for machine learning with example code?

Probability is a fundamental concept in machine learning, as many algorithms and models rely on probabilistic reasoning. Here's a brief…

1 year ago

Application of machine learning with code example?

Certainly! Here's an example of how machine learning can be applied to predict whether a customer will churn (leave) a…

1 year ago

Python: Gridsearch Without Machine Learning with example code?

In the context of machine learning, grid search is commonly used to find the best hyperparameters for a model. However,…

1 year ago

Explain about Deep learning and machine learning with example?

Certainly! Let's start by explaining what machine learning and deep learning are, and then provide examples for each. Machine Learning:…

1 year ago

An example of machine learning deployment?

Sure, here's an example of deploying a machine learning model for a simple classification task using the Flask web framework:…

1 year ago

How will you retrieve data for prediction in machine learning with example code?

Retrieving data for making predictions using a trained machine learning model involves similar steps to retrieving training data. You need…

1 year ago