Search arXivSearch

arXiv · 2501.04963

Shelving it rather than Ditching it: Dynamically Debloating DEX and Native Methods of Android Applications without APK Modification

Abstract

Today's Android developers tend to include numerous features to accommodate diverse user requirements, which inevitably leads to bloated apps. Yet more often than not, only a fraction of these features are frequently utilized by users, thus a bloated app costs dearly in potential vulnerabilities, expanded attack surfaces, and additional resource consumption. Especially in the event of severe security incidents, users have the need to block vulnerable functionalities immediately. Existing works have proposed various code debloating approaches for identifying and removing features of executable components. However, they typically involve static modification of files (and, for Android apps, repackaging of APKs, too), which lacks user convenience let alone undermining the security model of Android due to the compromising of public key verification and code integrity checks. This paper introduces 3DNDroid, a Dynamic Debloating approach targeting both DEX and Native methods in AnDroid apps. Using an unprivileged management app in tandem with a customized Android OS, 3DNDroid dynamically reduces unnecessary code loading during app execution based on a pre-generated debloating schema from static or dynamic analyses. It intercepts invocations of debloated bytecode methods to prevent their interpretation, compilation, and execution, while zero-filling memory spaces of debloated native methods during code loading. Evaluation demonstrates 3DNDroid's ability to debloat 187 DEX methods and 30 native methods across 55 real-world apps, removing over 10K Return-Oriented Programming (ROP) gadgets. Case studies confirm its effectiveness in mitigating vulnerabilities, and performance assessments highlight its resource-saving advantages over non-debloated apps.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Zicheng Zhang, Jiakun Liu, Ferdian Thung, Haoyu Ma, Rui Li, Yan Naing Tun, Wei Minn, Lwin Khin Shar, Shahar Maoz, Eran Toch, David Lo, Joshua Wong, Debin Gao. 2025-01-09. Shelving it rather than Ditching it: Dynamically Debloating DEX and Native Methods of Android Applications without APK Modification. https://arxiv.org/abs/2501.04963

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related papers

Attack Tree Distance: a practical examination of tree difference measurement within cyber security

Attack trees are a popular threat modeling method. In practice, there is often a need to compare attack tree models produced by human experts, based on both the structure of the tree and the meaning of the node labels. In this work, we investigate the problem of comparing attack trees and measuring their similarity. We define five different measures for measuring the distance between two attack trees: Label Distance (LD), Tree Edit Distance (TED), Radical Distance (RD), Multiset Distance (MSD) and Weighted Sum Distance (WSD). We further propose a repeatable method of both theoretical and experimental attack tree distance measures validation. Our theoretical validation consists of a series of basic transformations to evaluate the behavior of distance measures with respect to specific types of transformations that may appear between two attack trees. To experimentally validate our distance measures, we designed and executed a human study ($n=39$) to collect a dataset of attack trees to be used for evaluation and comparison of the measures. From our theoretical and experimental results, we find that applying semantic similarity as a means of comparing node labels is a valid approach. Further, we find four of the five attack tree distance measures are valid approaches in certain, varying circumstances. Our results suggest that these methods can already be used to identify similar real-world attack trees. Overall, this work lays the groundwork for improved threat model analysis, validation of AI-generated attack trees, and future research into threat similarity measurement in cybersecurity.

cs.CR

Probabilistic Modeling of Jailbreak on Multimodal LLMs: From Quantification to Application

Recently, Multimodal Large Language Models (MLLMs) have demonstrated their superior ability in understanding multimodal content. However, they remain vulnerable to jailbreak attacks, which exploit weaknesses in their safety alignment to generate harmful responses. Previous studies categorize jailbreaks as successful or failed based on whether responses contain malicious content. However, given the stochastic nature of MLLM responses, this binary classification of an input's ability to jailbreak MLLMs is inappropriate. Derived from this viewpoint, we introduce jailbreak probability to quantify the jailbreak potential of an input, which represents the likelihood that MLLMs generated a malicious response when prompted with this input. We approximate this probability through multiple queries to MLLMs. After modeling the relationship between input hidden states and their corresponding jailbreak probability using Jailbreak Probability Prediction Network (JPPN), we use continuous jailbreak probability for optimization. Specifically, we propose Jailbreak-Probability-based Attack (JPA) that optimizes adversarial perturbations on input image to maximize jailbreak probability, and further enhance it as Multimodal JPA (MJPA) by including monotonic text rephrasing. To counteract attacks, we also propose Jailbreak-Probability-based Finetuning (JPF), which minimizes jailbreak probability through MLLM parameter updates. Extensive experiments show that (1) (M)JPA yields significant improvements when attacking a wide range of models under both white and black box settings. (2) JPF vastly reduces jailbreaks by at most over 60\%. Both of the above results demonstrate the significance of introducing jailbreak probability to make nuanced distinctions among input jailbreak abilities.

cs.CR

Differential Fault Analysis of Lilliput under Random-Location Nibble Faults

Differential fault analysis (DFA) is an important technique for evaluating the implementation-level security of block ciphers. Many DFA attacks assume that the adversary can inject faults into a selected internal word, nibble, or branch. Such fixed-location assumptions are convenient for deriving key-recovery equations, but they may overestimate the adversary's spatial control and may obscure the branch-dependent leakage behavior of multi-branch structures. In this paper, we study the lightweight block cipher Lilliput under a fixed-timing full-branch random-location nibble fault model. The attacker is assumed to induce a nonzero nibble fault in round 27, while the affected branch is randomly distributed over all sixteen state branches and is unknown to the attacker. The main challenge is to convert faulty ciphertexts with unknown injection locations into usable key-recovery constraints. We analyze the fault propagation induced by the EGFN structure of Lilliput and derive ciphertext-difference conditions for identifying the injected branch. The proposed branch-identification approach has a DDT-based combinatorial estimate of at least 99.9909% and achieves 99.9983% accuracy in 2^{20} random fault simulations. Once the fault branch is determined, we classify the corresponding propagation patterns according to whether the injected fault value and the intermediate S-box output difference can be uniquely determined. For each case, we derive DDT-based constraints on the last-round and penultimate-round subkeys and combine multiple faulty ciphertexts by candidate-set intersection. Simulation experiments over 2^{15} trials show that the attack reaches key-recovery success rates of over 90%, 95%, and 99% with 32, 36, and 46 faulty ciphertexts, respectively. These results show that Lilliput exhibits exploitable branch-dependent leakage even when the attacker cannot control the exact fault location.

cs.CR