Skip to main content

IIFA: Modular Inter-app Intent Information Flow Analysis of Android Applications

  • Conference paper
  • First Online:
Security and Privacy in Communication Networks (SecureComm 2019)

Abstract

Android apps cooperate through message passing via intents. However, when apps have disparate sets of privileges inter-app communication (IAC) can accidentally or maliciously be misused, e.g., to leak sensitive information contrary to users’ expectations. Recent research has considered static program analysis to detect dangerous data leaks due to inter-component communication (ICC), but suffers from shortcomings for IAC with respect to precision, soundness, and scalability.

As a remedy we propose a novel pre-analysis for static ICC/IAC analysis. Our main contribution is the first fully automatic ICC/IAC information flow analysis that is scalable for realistic apps due to modularity, avoiding combinatorial explosion: Our approach determines communicating apps using short summaries rather than inlining intent calls between components and apps, which entails simultaneously analyzing all apps installed on a device.

Using benchmarks we establish that IIFA outperforms state-of-the-art analyses in terms of precision and recall. But foremost, applied to the 90 most popular applications from the Google Playstore, IIFA demonstrated its scalability to a large corpus of real-world apps.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    getXXXExtra methods retrieve type-specific data from a received intent that has been added through the corresponding putExtra method.

  2. 2.

    The getXXXExtra’s key is determined via backward slicing.

  3. 3.

    We utilize the categorization of sources and sinks from R-Droid [3].

  4. 4.

    https://github.com/mig40000/ICC-Benchmark.

  5. 5.

    Note that any other tool that resolves intra-component flows (in particular those of Table 3 except for DIALDroid) would also have been a possible base analysis, but may have interfered with our ICC/IAC model.

References

  1. 2.0, A.: Apktool. GitHub, July 2017. https://ibotpeaches.github.io/Apktool/

  2. Arzt, S., Rasthofer, S., Fritz, E.A.: Flowdroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for android apps. ACM SIGPLAN Not. 49(6), 259–269 (2014)

    Article  Google Scholar 

  3. Backes, M., Bugiel, S., Derr, E., Gerling, S., Hammer, C.: R-droid: Leveraging android app analysis with static slice optimization. In: 11th ACM on ASIACCS. pp. 129–140. ACM (2016)

    Google Scholar 

  4. Bosu, A., Liu, F., Yao, D.D., Wang, G.: Collusive data leak and more: large-scale threat analysis of inter-app communications. In: AsiaCCS 2017, Abu Dhabi, United Arab Emirates, April 2–6, 2017, pp. 71–85 (2017)

    Google Scholar 

  5. Chan, P.P., Hui, L.C., Yiu, S.M.: Droidchecker: analyzing android applications for capability leak. In: Proceedings of the Fifth ACM Conference on Security and Privacy in Wireless and Mobile Networks, pp. 125–136. ACM (2012)

    Google Scholar 

  6. Christian Fritz, S.A., Rasthofer, S.: Droid-benchmarks. https://github.com/secure-software-engineering/DroidBench. Accessed Dec 2017

  7. Freke, J.: Baksmali. https://github.com/JesusFreke/smali

  8. Fuchs, A.P., Chaudhuri, A., Foster, J.S.: Scandroid: automated security certification of android. University of Maryland, Technical report (2009)

    Google Scholar 

  9. Google: Android intent documentation. https://developer.android.com/reference/android/content/Intent.html. Accessed May 2017

  10. Google: Dalvik byteycode documentation. https://source.android.com/devices/tech/dalvik/dalvik-bytecode. Accessed May 2017

  11. Gordon, M.I., Kim, D., Perkins, J.H., Gilham, L., Nguyen, N., Rinard, M.C.: Information flow analysis of android applications in droidsafe. In: NDSS (2015)

    Google Scholar 

  12. Grech, N., Kastrinis, G., Smaragdakis, Y.: Efficient reflection string analysis via graph coloring. In: Millstein, T. (ed.) ECOOP. vol. 109, pp. 26:1–26:25 (2018)

    Google Scholar 

  13. IBM: Ibm security appscan source. https://www-03.ibm.com/software/products/en/appscan. Accessed May 2017

  14. Klieber, W., Flynn, L., Bhosale, A., Jia, L., Bauer, L.: Android taint flow analysis for app sets. In: Proceedings of the 3rd ACM SIGPLAN International Workshop on the State of the Art in Java Program Analysis, pp. 1–6. ACM (2014)

    Google Scholar 

  15. Li, L.: Apk combiner. GitHub, December 2014. https://github.com/lilicoding/ApkCombiner

  16. Li, L., Bartel, A., Bissyandé, E.A.: Iccta: detecting inter-component privacy leaks in android apps. In: Proceedings of the 37th International Conference on Software Engineering, vol. 1. pp. 280–291. IEEE Press (2015)

    Google Scholar 

  17. Oberheide, J., Miller, C.: Dissecting the android bouncer. SummerCon2012, New York (2012)

    Google Scholar 

  18. Octeau, D., Luchaup, D., Dering, M., Jha, S., McDaniel, P.: Composite constant propagation: application to android inter-component communication analysis. In: Proceedings of the 37th International Conference on Software Engineering, vol. . pp. 77–88. IEEE Press (2015)

    Google Scholar 

  19. Octeau, D., McDaniel, P., Jha, S., Bartel, A., Bodden, E., Klein, J., Le Traon, Y.: Effective inter-component communication mapping in android with EPICC: an essential step towards holistic security analysis. In: Proceedings of the 22nd USENIX Security Symposium,pp. 543–558 (2013)

    Google Scholar 

  20. Pauck, F., Bodden, E., Wehrheim, H.: Do android taint analysis tools keep their promises? In: Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering. ESEC/FSE 2018, ACM, New York (2018)

    Google Scholar 

  21. Qiu, L., Wang, Y., Rubin, J.: Analyzing the analyzers: Flowdroid/ICCTA, Amandroid, and Droidsafe. In: Proceedings of the 27th ACM SIGSOFT International Symposium on Software Testing and Analysis, pp. 176–186. ACM (2018)

    Google Scholar 

  22. Wei, F., Roy, S., Ou, X., et al.: Amandroid: a precise and general inter-component data flow analysis framework for security vetting of android apps. In: Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, pp. 1329–1341. ACM (2014)

    Google Scholar 

  23. Zhang, Z., Feng, X.: AndroidLeaker: a hybrid checker for collusive leak in android applications. In: Larsen, K.G., Sokolsky, O., Wang, J. (eds.) SETTA 2017. LNCS, vol. 10606, pp. 164–180. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69483-2_10

    Chapter  Google Scholar 

Download references

Acknowledgements

This work was partially supported by the German Federal Ministry of Education and Research (BMBF) through the project SmartPriv (16KIS0760) and the German Research Foundation (DFG) via the collaborative research center “Methods and Tools for Understanding and Controlling Privacy” (SFB 1223), project B02.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Abhishek Tiwari .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 ICST Institute for Computer Sciences, Social Informatics and Telecommunications Engineering

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Tiwari, A., Groß, S., Hammer, C. (2019). IIFA: Modular Inter-app Intent Information Flow Analysis of Android Applications. In: Chen, S., Choo, KK., Fu, X., Lou, W., Mohaisen, A. (eds) Security and Privacy in Communication Networks. SecureComm 2019. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 305. Springer, Cham. https://doi.org/10.1007/978-3-030-37231-6_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-37231-6_19

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-37230-9

  • Online ISBN: 978-3-030-37231-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics