Programação orientada para retorno
A programação orientada para retorno (ROP) é um ataque típico de reutilização de código, onde um invasor controla diretamente o fluxo através do código existente com um resultado malicioso. O ataque ROP representa uma versão avançada de um ataque de empilhamento. Um transbordamento de pilha de buffer ocorre quando um programa escreve para um endereço de memória na pilha de chamada do programa fora da estrutura de dados pretendida, normalmente com um buffer de comprimento fixo.
ROP é uma técnica de exploit que permite a execução de código no sistema de destino. Ao obter controle da pilha de chamada, o invasor controla o fluxo de software confiável existente em execução no computador e manipula-o para realizar uma tarefa que não a pretendida.