Jump to content
Nytro

Return-Oriented Programming without Returns

Recommended Posts

Posted

Return-Oriented Programming without Returns

ABSTRACT

We show that on both the x86 and ARM architectures it is possible

to mount return-oriented programming attacks without using return

instructions. Our attacks instead make use of certain instruction

sequences that behave like a return, which occur with sufficient

frequency in large libraries on (x86) Linux and (ARM) Android to

allow creation of Turing-complete gadget sets.

Because they do not make use of return instructions, our new

attacks have negative implications for several recently proposed

classes of defense against return-oriented programming: those that

detect the too-frequent use of returns in the instruction stream;

those that detect violations of the last-in, first-out invariant normally

maintained for the return-address stack; and those that modify

compilers to produce code that avoids the return instruction.

1. INTRODUCTION

This paper is about the feasibility of certain defenses against

return-oriented programming. In the last year, several natural defenses

have been proposed that target properties of return-oriented

attacks and are intended to be simpler and have lower overhead than

a comprehensive defense such as Control-Flow Integrity (CFI) [1,

14].1 In this paper, we show that these narrowly tailored defenses

are incomplete by devising a new variant of return-oriented programming

that evades them. Our results call into doubt the usefulness

of these ad-hoc defenses.

Download:

http://www.cs.jhu.edu/~s/papers/noret_ccs2010/noret_ccs2010.pdf

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...