17 April 2026 in ACM Transactions on Software Engineering and Methodology
With the rapid advancement of machine learning (ML), ML-based Android malware detection has gained significant popularity due to its ability to automatically learn malicious patterns from Android apps. However, the lack of an in-depth and systematic analysis of existing research makes it difficult to obtain a holistic understanding of the state of the art in this field. In this work, we present the most comprehensive investigation to date of ML-based Android malware detection systems, combining both empirical and quantitative analyses. We first organize prior work into a unified taxonomy based on Android app representations and the ML modeling pipeline. Building on this taxonomy, we design a general-purpose framework for ML-based Android malware detection and re-implement 12 representative approaches from three research communities—software engineering, security, and machine learning. Using this framework, we conduct a large-scale evaluation across three key dimensions: detection effectiveness, robustness to real-world challenges, and efficiency. Despite extensive research efforts and encouraging results, our findings reveal that existing learning-based Android malware detectors still face significant challenges, including vulnerability to malware evolution and susceptibility to adversarial attacks. We attribute these limitations to the detectors’ ability to capture and leverage malware semantics, defined as semantic information that characterizes malicious behaviors derived from APK features. Finally, we summarize our key insights and provide actionable recommendations to guide future research in this domain.
1 October 2026 in Proceedings of the ACM on Software Engineering
The rapid evolution of WebAssembly (Wasm) has led to significant implementation inconsistencies between its specification and the behavior of various Wasm runtimes, posing critical threats to application reliability and security. Verifying that a runtime's implementation adheres to the natural-language specification is a profound challenge. While Large Language Models offer a promising way to bridge the semantic gap between specification text and source code, their inherent fallibility makes them untrustworthy for direct verification. In this paper, we introduce WASCII, a novel framework for bridging specification and implementation with execution-based validation. Our approach first constructs a Check Tree from the natural-language specification, which captures the validation rules that runtimes must enforce. We then align runtime code to the Check Tree, and employ a Clean Room design with execution-based validation to ensure the correctness of the bridging. The validated test cases are then used for cross-runtime differential testing to identify behavioral inconsistencies. Evaluated on seven major Wasm runtimes, WASCII identified 248 differential behaviors, among which 35 are confirmed as previously unknown specification conformance issues, with 17 confirmed or fixed by developers. These results demonstrate that our approach is a highly effective strategy for discovering subtle yet critical bugs in complex systems.