RiscyROP: Automated Return-Oriented Programming Attacks on RISC-V and ARM64

16Citations
Citations of this article
8Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Return-oriented programming (ROP) is a powerful run-time exploitation technique to attack vulnerable software. Modern RISC architectures like RISC-V and ARM64 pose new challenges for ROP execution due to the lack of a stack-based return instruction and strict instruction alignment. Further, the large number of caller-saved argument registers significantly reduces the gadget space available to the attacker. Consequently, existing ROP gadget tools for other processor architectures cannot be applied to these RISC architectures. Previous work on RISC-V provides only manual construction of ROP attacks against specially crafted programs, and no analysis of ROP attacks has been conducted for ARM64 yet. In this paper, we address these challenges and present RiscyROP, the first automated ROP gadget finding and chaining toolkit for RISC-V and ARM64. RiscyROP analyzes available gadgets utilizing symbolic execution, and automatically generates complex multi-stage chains to conduct arbitrary function calls. Our approach enables the first investigation of the gadget space on RISC-V and ARM64 real-world binaries. RiscyROP successfully builds ROP chains that enable an attacker to execute arbitrary function calls for the nginx web server as well as any binary that contains the libc library.

Cite

CITATION STYLE

APA

Cloosters, T., Paaßen, D., Wang, J., Draissi, O., Jauernig, P., Stapf, E., … Sadeghi, A. R. (2022). RiscyROP: Automated Return-Oriented Programming Attacks on RISC-V and ARM64. In ACM International Conference Proceeding Series (pp. 30–42). Association for Computing Machinery. https://doi.org/10.1145/3545948.3545997

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free