An Android Inline Hooking Framework for the Securing Transmitted Data
Information leaks can occur through many Android applications, including unauthorized access to sensors data. Hooking is an important technique for protecting Android applications and add security features to them even without its source code. Various hooking frameworks are developed to intercept ev...
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2020-07-01
|
Series: | Sensors |
Subjects: | |
Online Access: | https://www.mdpi.com/1424-8220/20/15/4201 |
id |
doaj-fd53f441e75448f9aa53161882d6ce49 |
---|---|
record_format |
Article |
spelling |
doaj-fd53f441e75448f9aa53161882d6ce492020-11-25T01:27:45ZengMDPI AGSensors1424-82202020-07-01204201420110.3390/s20154201An Android Inline Hooking Framework for the Securing Transmitted DataYu-an Tan0Shuo Feng1Xiaochun Cheng2Yuanzhang Li3Jun Zheng4School of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, ChinaSchool of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, ChinaDepartment of Computer Science, Middlesex University, London NW4 4BE, UKSchool of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, ChinaSchool of Computer Science and Technology, Beijing Institute of Technology, Beijing 100081, ChinaInformation leaks can occur through many Android applications, including unauthorized access to sensors data. Hooking is an important technique for protecting Android applications and add security features to them even without its source code. Various hooking frameworks are developed to intercept events and process their own specific events. The hooking tools for Java methods are varied, however, the native hook has few methods. Besides, the commonly used Android hook frameworks cannot meet the requirement of hooking the native methods in shared libraries on non-root devices. Even though some approaches are able to hook these methods, they have limitations or are complicated to implement. In the paper, a feasible hooking approach for Android native methods is proposed and implemented, which does not need any modifications to both the Android framework and app’s code. In this approach, the method’s reference address is modified and control flow is redirected. Beyond that, this study combines this approach with VirtualXposed which aims to run it without root privileges. This hooking framework can be used to enforce security policies and monitor sensitive methods in shared objects. The evaluation of the scheme demonstrates its capability to perform hook operation without a significant runtime performance overhead on real devices and it is compatible and functional for the native hook.https://www.mdpi.com/1424-8220/20/15/4201sensitive information leakageAndroidnative hookELF file formatVirtualXposed |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Yu-an Tan Shuo Feng Xiaochun Cheng Yuanzhang Li Jun Zheng |
spellingShingle |
Yu-an Tan Shuo Feng Xiaochun Cheng Yuanzhang Li Jun Zheng An Android Inline Hooking Framework for the Securing Transmitted Data Sensors sensitive information leakage Android native hook ELF file format VirtualXposed |
author_facet |
Yu-an Tan Shuo Feng Xiaochun Cheng Yuanzhang Li Jun Zheng |
author_sort |
Yu-an Tan |
title |
An Android Inline Hooking Framework for the Securing Transmitted Data |
title_short |
An Android Inline Hooking Framework for the Securing Transmitted Data |
title_full |
An Android Inline Hooking Framework for the Securing Transmitted Data |
title_fullStr |
An Android Inline Hooking Framework for the Securing Transmitted Data |
title_full_unstemmed |
An Android Inline Hooking Framework for the Securing Transmitted Data |
title_sort |
android inline hooking framework for the securing transmitted data |
publisher |
MDPI AG |
series |
Sensors |
issn |
1424-8220 |
publishDate |
2020-07-01 |
description |
Information leaks can occur through many Android applications, including unauthorized access to sensors data. Hooking is an important technique for protecting Android applications and add security features to them even without its source code. Various hooking frameworks are developed to intercept events and process their own specific events. The hooking tools for Java methods are varied, however, the native hook has few methods. Besides, the commonly used Android hook frameworks cannot meet the requirement of hooking the native methods in shared libraries on non-root devices. Even though some approaches are able to hook these methods, they have limitations or are complicated to implement. In the paper, a feasible hooking approach for Android native methods is proposed and implemented, which does not need any modifications to both the Android framework and app’s code. In this approach, the method’s reference address is modified and control flow is redirected. Beyond that, this study combines this approach with VirtualXposed which aims to run it without root privileges. This hooking framework can be used to enforce security policies and monitor sensitive methods in shared objects. The evaluation of the scheme demonstrates its capability to perform hook operation without a significant runtime performance overhead on real devices and it is compatible and functional for the native hook. |
topic |
sensitive information leakage Android native hook ELF file format VirtualXposed |
url |
https://www.mdpi.com/1424-8220/20/15/4201 |
work_keys_str_mv |
AT yuantan anandroidinlinehookingframeworkforthesecuringtransmitteddata AT shuofeng anandroidinlinehookingframeworkforthesecuringtransmitteddata AT xiaochuncheng anandroidinlinehookingframeworkforthesecuringtransmitteddata AT yuanzhangli anandroidinlinehookingframeworkforthesecuringtransmitteddata AT junzheng anandroidinlinehookingframeworkforthesecuringtransmitteddata AT yuantan androidinlinehookingframeworkforthesecuringtransmitteddata AT shuofeng androidinlinehookingframeworkforthesecuringtransmitteddata AT xiaochuncheng androidinlinehookingframeworkforthesecuringtransmitteddata AT yuanzhangli androidinlinehookingframeworkforthesecuringtransmitteddata AT junzheng androidinlinehookingframeworkforthesecuringtransmitteddata |
_version_ |
1725103531396956160 |