Development of wrapper application to prevent reverse engineering of android applications

Android operating system is an open-source project developed by Google. It is based on the Linux kernel. According an article published in 2016, Google’s Android dominated the mobile operating system scene with an 87.5% market share. With more than 2 billion users and 3.5 million applications in the...

Full description

Bibliographic Details
Main Author: Gong, Jing
Other Authors: Liu Yang
Format: Final Year Project (FYP)
Language:English
Published: 2018
Subjects:
Online Access:http://hdl.handle.net/10356/74052
_version_ 1826119143876722688
author Gong, Jing
author2 Liu Yang
author_facet Liu Yang
Gong, Jing
author_sort Gong, Jing
collection NTU
description Android operating system is an open-source project developed by Google. It is based on the Linux kernel. According an article published in 2016, Google’s Android dominated the mobile operating system scene with an 87.5% market share. With more than 2 billion users and 3.5 million applications in the Google Play store, application development has become a lucrative gold mine with billions being made yearly. Android’s popularity has attracted its fair share of adversaries, such as reverse engineers and malware developers. Therefore, it is essential for a mechanism to be in place to safeguard the intellectual property of the Android developers. Several companies try to address this issue, with 2 major companies in China, Bangcle and Ijiami leading the pack. However, these wrapper applications proved to be effective in hiding the application codes only to a certain extend as several research papers have already proposed ways to bypass these wrapper applications. This report aims to analyse how both the packers and unpackers work and develop a new methodology of packing Android applications. The new methodology should change the structure the original Dex file while maintaining the original control flow of the application. Additional protection features anti-debugging and anti-tampering. Lastly, the new methodology is tested against current unpacking techniques to measure its effectiveness. Results show that application packed using the new methodology is undebuggable. Its source code is hidden and encrypted. Integrity of the source code is maintained by the anti-tampering feature. However, as the original source code gets more complicated, the application may not work as intended.
first_indexed 2024-10-01T04:55:17Z
format Final Year Project (FYP)
id ntu-10356/74052
institution Nanyang Technological University
language English
last_indexed 2024-10-01T04:55:17Z
publishDate 2018
record_format dspace
spelling ntu-10356/740522023-03-03T20:58:00Z Development of wrapper application to prevent reverse engineering of android applications Gong, Jing Liu Yang School of Computer Science and Engineering DRNTU::Engineering::Computer science and engineering::Software::Software engineering Android operating system is an open-source project developed by Google. It is based on the Linux kernel. According an article published in 2016, Google’s Android dominated the mobile operating system scene with an 87.5% market share. With more than 2 billion users and 3.5 million applications in the Google Play store, application development has become a lucrative gold mine with billions being made yearly. Android’s popularity has attracted its fair share of adversaries, such as reverse engineers and malware developers. Therefore, it is essential for a mechanism to be in place to safeguard the intellectual property of the Android developers. Several companies try to address this issue, with 2 major companies in China, Bangcle and Ijiami leading the pack. However, these wrapper applications proved to be effective in hiding the application codes only to a certain extend as several research papers have already proposed ways to bypass these wrapper applications. This report aims to analyse how both the packers and unpackers work and develop a new methodology of packing Android applications. The new methodology should change the structure the original Dex file while maintaining the original control flow of the application. Additional protection features anti-debugging and anti-tampering. Lastly, the new methodology is tested against current unpacking techniques to measure its effectiveness. Results show that application packed using the new methodology is undebuggable. Its source code is hidden and encrypted. Integrity of the source code is maintained by the anti-tampering feature. However, as the original source code gets more complicated, the application may not work as intended. Bachelor of Engineering (Computer Science) 2018-04-24T04:06:58Z 2018-04-24T04:06:58Z 2018 Final Year Project (FYP) http://hdl.handle.net/10356/74052 en Nanyang Technological University 43 p. application/pdf
spellingShingle DRNTU::Engineering::Computer science and engineering::Software::Software engineering
Gong, Jing
Development of wrapper application to prevent reverse engineering of android applications
title Development of wrapper application to prevent reverse engineering of android applications
title_full Development of wrapper application to prevent reverse engineering of android applications
title_fullStr Development of wrapper application to prevent reverse engineering of android applications
title_full_unstemmed Development of wrapper application to prevent reverse engineering of android applications
title_short Development of wrapper application to prevent reverse engineering of android applications
title_sort development of wrapper application to prevent reverse engineering of android applications
topic DRNTU::Engineering::Computer science and engineering::Software::Software engineering
url http://hdl.handle.net/10356/74052
work_keys_str_mv AT gongjing developmentofwrapperapplicationtopreventreverseengineeringofandroidapplications