ROP

naibu3 · August 15, 2024

En la mayoría de sistemas modernos no hay popsibilidad de ejecutar instrucciones almacenadas en el stack, normalmente tienen activado el NX bit.

Por lo que surgió una técnica que consiste en utilizar las instrucciones ó gadgets del propio binario.

De esta forma, sobrescribimos la dirección de retorno por una del stack, en la que mediante un Buffer overflow, hayamos almacenado la de alguno de estos gadgets, seguida de los argumentos que más nos convengan. Cuando dicho gadget termine de ejecutarse, podemos poner la dirección de otro gadget (y encadenar tantos como sean necesarios).

Un concepto relacionado e interesante son las Weird Machines.

Twitter, Facebook