Machine learningExploit technique

Return-Oriented Programming

Return-Oriented Programming (ROP) is an exploit technique that chains together short sequences of instructions (gadgets) from existing executable code to perform arbitrary computation, bypassing security defenses like code injection prevention. Introduced by Hovav Shacham in 2007, ROP exploits code reuse to execute malicious logic even when data execution prevention (DEP) and code signing prevent direct code injection. ROP is considered one of the most powerful exploit techniques against modern defense mechanisms and has been demonstrated to be Turing-complete.

Open in MethodMindSoonVideoSoon

Read the full method

Members only

Sign in with a free account to read this section.

Sign in

Sources

  1. Shacham, H. (2007). The geometry of innocent flesh on the bone: Return-into-libc without function calls (on the x86). In Proceedings of the 14th ACM Conference on Computer and Communications Security (CCS 2007), pp. 552-561. DOI: 10.1145/1315245.1315313
  2. Roemer, R., Buchanan, E., Shacham, H., & Savage, S. (2012). Return-oriented programming: Systems, languages, and applications. ACM Transactions on Information and System Security (TISSEC), 15(1), 1-34. DOI: 10.1145/2133375.2133377

Related methods

ScholarGateReturn-Oriented Programming (Return-Oriented Programming (ROP)). Retrieved 2026-06-04 from https://scholargate.app/en/cryptography/return-oriented-programming