The Android operating system has been the most popular for smartphones and
tablets since 2012. This popularity has led to a rapid raise of Android malware
in recent years. The sophistication of Android malware obfuscation and
detection avoidance methods have significantly improved, making many
traditional malware detection methods obsolete. In this paper, we propose
DL-Droid, a deep learning system to detect malicious Android applications
through dynamic analysis using stateful input generation. Experiments performed
with over 30,000 applications (benign and malware) on real devices are
presented. Furthermore, experiments were also conducted to compare the
detection performance and code coverage of the stateful input generation method
with the commonly used stateless approach using the deep learning system. Our
study reveals that DL-Droid can achieve up to 97.8% detection rate (with
dynamic features only) and 99.6% detection rate (with dynamic + static
features) respectively which outperforms traditional machine learning
techniques. Furthermore, the results highlight the significance of enhanced
input generation for dynamic analysis as DL-Droid with the state-based input
generation is shown to outperform the existing state-of-the-art approaches.