A Deep Dive into Function Inlining and its Security Implications for ML-based Binary Analysis
Omar Abusabha, Jiyong Uhm, Tamer Abuhmed, Hyungjoon Koo

TL;DR
This paper investigates how function inlining in compilers affects machine learning-based binary analysis security, revealing that aggressive inlining can alter static features and impact ML model robustness, with implications for binary analysis reliability.
Contribution
It provides the first comprehensive analysis of function inlining's security implications for ML-based binary analysis, including systematic evaluation under extreme inlining scenarios.
Findings
Inlining can affect ML model behaviors and security.
Static feature-based models are highly sensitive to inlining.
Compiler settings can be exploited to create evasive binaries.
Abstract
A function inlining optimization is a widely used transformation in modern compilers, which replaces a call site with the callee's body in need. While this transformation improves performance, it significantly impacts static features such as machine instructions and control flow graphs, which are crucial to binary analysis. Yet, despite its broad impact, the security impact of function inlining remains underexplored to date. In this paper, we present the first comprehensive study of function inlining through the lens of machine learning-based binary analysis. To this end, we dissect the inlining decision pipeline within the LLVM's cost model and explore the combinations of the compiler options that aggressively promote the function inlining ratio beyond standard optimization levels, which we term extreme inlining. We focus on five ML-assisted binary analysis tasks for security, using 20…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Advanced Malware Detection Techniques · Logic, programming, and type systems
