Skip to main content
Log in

The Android OS stack and its vulnerabilities: an empirical study

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

The wide and rapid adoption of Android-based devices in the last years has motivated the usage of Android apps to support a broad range of daily activities. In that sense, being the most popular mobile platform makes it an attractive target for security attacks. In fact, 1,489 security vulnerabilities have been reported in the last three years (2015-2017) for the Android OS (which is the underlying platform for Android-based devices). While there is a plethora of approaches and tools for detecting malware and security issues in Android apps, few research has been done to identify, categorize, or detect vulnerabilities in the Android OS. In this paper we present the largest study so far aimed at analyzing software vulnerabilities in the Android OS. In particular, we analyzed a total of 1,235 vulnerabilities from four different perspectives: vulnerability types and their evolution, CVSS vectors that describe the vulnerabilities, impacted Android OS layers, and their survivability across the Android OS history. Based on our findings, we propose a list of future actions that could be performed by researchers and practitioners to reduce the number of vulnerabilities in the Android OS as well as their impact and survivability.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. We used the base group attributes because it is the only mandatory group.

  2. https://tinyurl.com/yadtggsr

  3. https://tinyurl.com/y9u5odrv

  4. Meta-analysis is a statistical inference technique aimed at consolidating results from more than one study or experiment.

  5. We found 129 vulnerabilities for the 2017-2 period, but we excluded this semester from the RQ5 analysis because we do not have complete data for 2017-2.

  6. We were not able to classify the layer affected by 5 vulnerabilities.

  7. Note that there is also an Unclear category because in six cases we were not able to identify the type of change because of the patches complexity . For instance, in CVE-2016-3751 several changes were done over 207 files, thus it was not easy to categorize the changes.

  8. https://tinyurl.com/y777kx6s

  9. https://tinyurl.com/yblfv22p

  10. https://tinyurl.com/yaehg5b2

  11. https://tinyurl.com/ya8rbl7n

  12. https://tinyurl.com/ychpav57

  13. https://tinyurl.com/y6v7me9z

  14. For the base group attributes in CVSS 2.0, there are 729 possible combinations of attribute values. Therefore, the 1,235 analyzed vulnerabilities cover 6.72% (49 out of 729) of all the CVSS 2.0 vectors for the base group attributes.

  15. Compared to Linares-Vásquez et al. (2017), in our dataset we observed 354 new vulnerabilities in the Kernel that have been reported from November 2016 to August 2017.

  16. Note that we only report numbers for vulnerabilities in the AOSP apps and reported as vulnerabilities in the NVD database.

  17. Note that all p-values equal 1.0 after the holm correction procedure. Before that they were in any case all higher than 0.7.

References

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mario Linares-Vásquez.

Additional information

Communicated by: Lin Tan

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Mazuera-Rozo, A., Bautista-Mora, J., Linares-Vásquez, M. et al. The Android OS stack and its vulnerabilities: an empirical study. Empir Software Eng 24, 2056–2101 (2019). https://doi.org/10.1007/s10664-019-09689-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10664-019-09689-7

Keywords

Navigation