Skip to main content
Log in

Mobile application tamper detection scheme using dynamic code injection against repackaging attacks

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

The Android platform, with a large market share from its inclusive openness, faces a big problem with repackaging attacks, because reverse engineering is made easy due to the signature method that allows self-sign and also due to application structure. A repackaging attack is a method of attack, where an attacker with malicious intent alters an application distributed on the market to then redistribute it. The attacker injects into the original application illegal advertisement or malicious code that extracts personal information, and then redistributes the app. To protect against such repackaging attacks, obfuscation methods and tampering detection schemes to prevent application analysis are being developed and applied to Android applications. However, through dynamic analysis, protection methods at the managed code can be rendered ineffective, and there is a need for a protection method that will address this. In this paper, we show that, using Dalvik monitor, protection methods at the managed code level can be dynamically analyzed. In addition, to prevent a tampered application from running, we propose a tampering detection scheme that uses a dynamic attestation platform. It consist of two phases; (1) detection code injection: inject tamper detecting code into an application and (2) code attestation: attest the injected code on the platform. The proposed scheme first uses the tamper detection method at the platform level to inspect execution codes executed in real time and to fundamentally intercept repackaged applications.

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

Similar content being viewed by others

References

  1. Kopetz H (2011) Internet of things. In: Real-time systems. Springer, Berlin, pp 307–323

  2. Wang X, Yang Y, Zeng Y, Tang C, Shi J, Xu K (2015) A novel hybrid mobile malware detection system integrating anomaly detection with misuse detection. In: Proceedings of the 6th international workshop on mobile cloud computing and services. ACM, pp 15–22

  3. Arp D, Spreitzenbarth M, Hubner M, Gascon H, Rieck K. Drebin: efficient and explainable detection of android malware in your pocket. In: Proc. of 17th network and distributed system security symposium, NDSS, vol 14

  4. Enck W, Octeau D, McDaniel P, Chaudhuri S (2011) A study of android application security. In: USENIX security symposium, vol 2, p 2

  5. Jung JH, Kim JY, Lee HC, Yi JH (2013) Repackaging attack on android banking applications and its countermeasures. Wirel Pers Commun 73(4):1421–1437

    Article  Google Scholar 

  6. Aucsmith D (1996) Tamper resistant software: an implementation. In: Information hiding. Springer, Berlin, pp 317–333

  7. Stringer. https://jfxstore.com/stringer/

  8. Allatori. http://www.allatori.com/

  9. Dexprotector. https://dexprotector.com/

  10. Dexguard. https://www.guardsquare.com/dexguard

  11. Schulz P (2012) Code protection in android. Insititute of Computer Science, Rheinische Friedrich-Wilhelms-Universitgt, Bonn

    Google Scholar 

  12. Collberg C, Thomborson C, Low D (1997) A taxonomy of obfuscating transformations. Tech. rep., Department of Computer Science, The University of Auckland, New Zealand

  13. Brzozowski M, Yarmolik VN (2007) Obfuscation as intellectual rights protection in VHDL language. In: 6th international conference on computer information systems and industrial management applications, CISIM’07. IEEE, pp 337–340

  14. Low D (1998) Java control flow obfuscation. Ph.D. thesis, Citeseer

  15. Forman IR, Forman N, Ibm JV (2004) Java reflection in action

  16. Piao Y, Jung JH, Yi JH (2016) Server-based code obfuscation scheme for apk tamper detection. Secur Commun Netw 9(6):457–467

    Article  Google Scholar 

  17. Android reverse engineering and defenses. https://bluebox.com/wp-content/uploads/2013/05/AndroidREnDefenses201305.pdf

  18. Fake encryption sample. https://github.com/blueboxsecurity/DalvikBytecodeTampering

  19. Apvrille A (2013) Playing hide and seek with Dalvik executables. In: Hack. Lu, October (2013)

  20. Cho H, Lim J, Kim H, Yi JH (2016) Anti-debugging scheme for protecting mobile apps on android platform. J Supercomput 72(1):232–246

    Article  Google Scholar 

  21. Petsas T, Voyatzis G, Athanasopoulos E, Polychronakis M, Ioannidis S (2014) Rage against the virtual machine: hindering dynamic analysis of android malware. In: Proceedings of the seventh European workshop on system security. ACM, p 5

  22. Alliance OH (2011) Android overview. Open Handset Alliance, USA

    Google Scholar 

  23. Apktool. http://ibotpeaches.github.io/Apktool/

  24. Baksmali. https://github.com/JesusFreke/smali

  25. Yan LK, Yin H (2012) Droidscope: seamlessly reconstructing the OS and Dalvik semantic views for dynamic android malware analysis. In: USENIX security symposium, pp 569–584

  26. Android open source project. https://source.android.com/

  27. Yi JH, Cho H, Bang J, Ji M (2015) Application code analysis apparatus and method for code analysis using the same. KR Patent 101557455

  28. Developers A (2009) Android activity

  29. Bellare M, Canetti R, Krawczyk H (1996) Keying hash functions for message authentication. In: Advances in cryptology, CRYPTO’96. Springer, Berlin, pp 1–15

  30. Eclipse. https://eclipse.org/

  31. Viega J, Messier M, Chandra P (2002) Network security with openSSL: cryptography for secure communications. O’Reilly Media Inc., Sebastopol

    Google Scholar 

  32. Ware B et al (2002) Open source development with LAMP: using Linux, Apache, MySQL and PHP. Addison-Wesley Longman Publishing Co., Inc., Boston

    Google Scholar 

Download references

Acknowledgments

This research was supported by a Global Research Laboratory (GRL) program through the National Research Foundation of Korea (NRF-2014K1A1A2043029).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jeong Hyun Yi.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Cho, H., Bang, J., Ji, M. et al. Mobile application tamper detection scheme using dynamic code injection against repackaging attacks. J Supercomput 72, 3629–3645 (2016). https://doi.org/10.1007/s11227-016-1763-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-016-1763-2

Keywords

Navigation