Prison Break of Android Reflection Restriction and Defense
Zhen Ling, Ruizhao Liu, Yue Zhang, Kang Jia, Bryan Pearson, Xinwen Fu, Junzhou Luo
Abstract
Java reflection technique is pervasively used in the Android system. To reduce the risk of reflection abuse, Android restricts the use of reflection at the Android Runtime (ART) to hide potentially dangerous methods/fields. We perform the first comprehensive study of the reflection restrictions and have discovered three novel approaches to bypass the reflection restrictions. Novel reflection-based attacks are also presented, including the password stealing attack. To mitigate the threats, we analyze these restriction bypassing approaches and find three techniques crucial to these approaches, i.e., double reflection, memory manipulation, and inline hook. We propose a defense mechanism that consists of classloader double checker, ART variable protector, and ART method protector, to prohibit the reflection restriction bypassing. Finally, we design and implement an automatic reflection detection framework and have discovered 5,531 reflection powered apps out of 100,000 downloaded apps, which are installed on our defense enabled Android system of a Google Pixel 2 to evaluate the effectiveness and efficiency of our defense mechanism. Extensive empirical experiment results demonstrate that our defense enabled system can accurately obstruct the malicious reflection attempts.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers1
Ask how each one uses itBuilds on3
- Harvesting Runtime Values in Android Applications That Feature Anti-Analysis TechniquesSiegfried Rasthofer, Steven Arzt, Marc Miltenberger, Eric BoddenNDSS 2016 · 157 citations
- Cloak and Dagger: From Two Permissions to Complete Control of the UI Feedback LoopYanick Fratantonio, Chenxiong Qian, Simon P. Chung, Wenke LeeS&P 2017 · 126 citations
- Breaking Secure Pairing of Bluetooth Low Energy Using Downgrade AttacksYue Zhang, Jian Weng, Rajib Dey, Yier Jin et al.USENIX Security 2020
Related papers
- Tackling runtime-based obfuscation in Android with TIROMichelle Y. Wong, David LieUSENIX Security 2018 · 59 citations
- See No Evil: Phishing for Permissions with False TransparencyGüliz Seray Tuncay, Jingyu Qian, Carl A. GunterUSENIX Security 2020
- An Empirical Study of Web Resource Manipulation in Real-world Mobile ApplicationsXiaohan Zhang, Yuan Zhang, Qianqian Mo, Hao Xia et al.USENIX Security 2018 · 15 citations
- Demystifying Android Non-SDK APls: Measurement and UnderstandingShishuai Yang, Rui Li, Jiongyi Chen, Wenrui Diao et al.ICSE 2022 · 14 citations
- Ghost in the Binder: Binder Transaction Redirection Attacks in Android System ServicesXiaobo Xiang, Ren Zhang, Hanxiang Wen, Xiaorui Gong et al.CCS 2021 · 4 citations
