ASTANA: Practical String Deobfuscation for Android Applications Using Program Slicing

04/06/2021
by   Martijn de Vos, et al.
0

Software obfuscation is widely used by Android developers to protect the source code of their applications against adversarial reverse-engineering efforts. A specific type of obfuscation, string obfuscation, transforms the content of all string literals in the source code to non-interpretable text and inserts logic to deobfuscate these string literals at runtime. In this work, we demonstrate that string obfuscation is easily reversible. We present ASTANA, a practical tool for Android applications to recovers the human-readable content from obfuscated string literals. ASTANA makes minimal assumptions about the obfuscation logic or application structure. The key idea is to execute the deobfuscation logic for a specific (obfuscated) string literal, which yields the original string value. To obtain the relevant deobfuscation logic, we present a lightweight and optimistic algorithm, based on program slicing techniques. By an experimental evaluation with 100 popular real-world financial applications, we demonstrate the practicality of ASTANA. We verify the correctness of our deobfuscation tool and provide insights in the behaviour of string obfuscators applied by the developers of the evaluated Android applications.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/11/2020

Hidden in Plain Sight: Obfuscated Strings Threatening Your Privacy

String obfuscation is an established technique used by proprietary, clos...
research
12/11/2018

Generating Summaries for Methods of Event-Driven Programs: an Android Case Study

Developers often dedicate a great amount of time to program comprehensio...
research
07/25/2018

RuntimeSearch: Ctrl+F for a Running Program

Developers often try to find occurrences of a certain term in a software...
research
03/17/2020

An Efficient Implementation of Manacher's Algorithm

Manacher's algorithm has been shown to be optimal to the longest palindr...
research
10/14/2019

Comment on "AndrODet: An adaptive Android obfuscation detector"

We have identified a methodological problem in the empirical evaluation ...
research
09/15/2022

AutoUpdate: Automatically Recommend Code Updates for Android Apps

Android developers frequently update source code to improve the performa...
research
04/20/2022

Exploring Widevine for Fun and Profit

For years, Digital Right Management (DRM) systems have been used as the ...

Please sign up or login with your details

Forgot password? Click here to reset