Stack integrity for practical code-reuse attack defense
In recent years, code-reuse attacks (CRA) have become increasingly stealthy and destructive to modern software systems. However, existing control-flow integrity techniques mainly focus on control-flow paths and give limited consideration to the program’s overall execution state. To address this problem, we propose StackPatroller, a stack-integrity-based runtime supervision framework that enforces program integrity through configurable policies. Specifically, StackPatroller monitors runtime stack contexts to detect early deviations from normal execution, enabling the identification of whole-function reuse (including return-to-libc) and certain forward-edge attacks earlier—within user mode before any unintended system calls occur. Compared to previous approaches, StackPatroller leverages the program stack as a structured and predictable representation of execution state. This provides a reliable indicator for early anomaly detection during CRA and eliminates the need for specialized hardware support. To validate our approach, we implement a prototype of StackPatroller and evaluate it on representative real-world software samples. The evaluation results show that our prototype can effectively detect CRA with an average performance overhead of 7.8%.
Authors
- Jun Song (ORCID: https://orcid.org/0000-0003-3820-7632)
- Juan Wang (ORCID: https://orcid.org/0000-0001-8813-7842)
- Fan Yang (ORCID: https://orcid.org/0000-0002-5329-081X)
- Yuanheng Xu (ORCID: https://orcid.org/0009-0007-0894-8081)
- Siyu Zhang (ORCID: https://orcid.org/0009-0002-1818-164X)
Institutions
- China University of Geosciences (CN)
- Wuhan University (CN)
Publication Details
- Journal
- Journal of Computer Security
- Published
- 2026-07-30
- DOI
- https://doi.org/10.1177/0926227x261462131
- Primary Topic
- Security and Verification in Computing
- Type
- article
- Field-Weighted Citation Impact
- 0.00