Semantics-Guided Control-Flow Reconstruction for Firmware Binaries via Static Analysis
Control-flow reconstruction is a fundamental yet challenging problem in firmware analysis, particularly for stripped or raw-format binaries that lack symbolic metadata. Existing methods typically rely on syntax heuristics or format-specific patterns, which are inadequate for real-world firmware that includes indirect jumps, manually crafted assembly, and limited metadata.
We present a semantics-guided static analysis framework for accurate control-flow reconstruction in stripped ELF and raw-format firmware binaries. Our approach consists of two complementary components: (i) an intra-procedural control-flow reconstruction method that incrementally recovers direct branches, indirect jumps, and call-return flows via fixpoint-guided value-flow analysis; and (ii) an inter-procedural analysis that resolves indirect calls through cross-function value tracking and loop-structure matching. By decoupling control-flow reasoning from instruction semantics and function abstraction, our framework robustly handles tightly intertwined control-flow patterns and mitigates the impact of misanalysis.
We implement our approach in Scarf (\textit{\underline{S}emantics-guided} \textit{\underline{C}ontrol-flow} \textit{\underline{A}nalysis} for \textit{\underline{R}aw and} \textit{\underline{F}irmware binaries}) and evaluate it on over 300 real-world firmware binaries in both ELF and raw formats. Compared with state-of-the-art reverse engineering tools, Scarf consistently achieves higher precision in control-flow recovery and demonstrates clear advantages on raw firmware, especially in resolving indirect jumps, call–return flows, and indirect calls. These results demonstrate that semantics-guided analysis provides a robust and scalable foundation for control flow reconstruction in metadata-deficient firmware.
Wed 8 JulDisplayed time zone: Eastern Time (US & Canada) change
14:00 - 15:30 | Program analysis 2Research Papers / Ideas, Visions and Reflections at MB 3.430 Chair(s): Amiangshu Bosu Wayne State University | ||
14:00 10mTalk | Class Archetypes: Principles, Detection, Evolution Ideas, Visions and Reflections Mattia Giannaccari REVEAL @ Software Institute – USI, Lugano, Switzerland, Marco Raglianti REVEAL @ Software Institute – USI, Lugano, Switzerland, Michele Lanza Software Institute - USI, Lugano | ||
14:10 20mTalk | Improving Data Leakage Detection in Machine Learning Notebooks through Static Slicing and Structured LLM Prompts Research Papers Taha Draoui University of Michigan-Flint, Mohamed Wiem Mkaouer University of Michigan-Flint, Christian D. Newman Rochester Institute of Technology | ||
14:30 20mTalk | TypePro: Boosting LLM-Based Type Inference via Inter-Procedural Slicing Research Papers linTeyu Xiamen University, Minghao Fan Xiamen University, Huaxun Huang Xiamen University, Zhirong Shen Xiamen University, Rongxin Wu Xiamen University Pre-print | ||
14:50 20mTalk | Sound Termination and Non-Termination Analysis of C Programs with Bit-Precise Bounded Semantics and Advanced Constructs Research Papers Negar Fathi University of Nebraska–Lincoln, Hiroshi Unno Tohoku University, Tachio Terauchi Waseda University, Rahul Purandare University of Nebraska-Lincoln Pre-print | ||
15:10 20mTalk | Semantics-Guided Control-Flow Reconstruction for Firmware Binaries via Static Analysis Research Papers Fengjuan Gao Nanjing University of Science and Technology, Qingjie Zhu Nanjing University, Yi Zhang Nanjing University, Yu Wang Nanjing University, Xuandong Li Nanjing University, Ke Wang Nanjing University | ||