Návratově orientované programování
Návratově orientované programování (angl. return-oriented programming; ROP) patří mezi typické útoky, při kterých útočník zneužije kód aplikace, aby nad ní získal kontrolu za účelem provedení škodlivé akce. Jedná se o pokročilou verzi útoku pomocí přetečení zásobníku (tzv. stack-smashing). K přetečení zásobníkového bufferu dochází, když program zapíše data na paměťovou adresu ve volacím zásobníku programu mimo zamýšlenou datovou strukturu – obvykle do bufferu s pevně danou délkou.
ROP je technika exploitace, prostřednictvím které je možné spustit kód na cílovém systému. Po získání kontroly nad zásobníkem volání útočník ovládne tok existujícího důvěryhodného softwaru spuštěného v počítači a manipuluje s ním tak, aby provedl jinou než zamýšlenou úlohu.