Returorienteret programmering
Returorienteret programmering (ROP) er et typisk angreb til genbrug af kode, hvor en hacker dirigerer kontrolflowet gennem eksisterende kode med et skadeligt resultat. ROP-angreb repræsenterer en avanceret version af et stack-smashing-angreb. Overløb af en stakbaseret buffer opstår, når et program skriver til en hukommelsesadresse i programmets opkaldsstak uden for den tilsigtede datastruktur, som regel med en buffer med fast længde.
ROP er en udnyttelsesteknik, der gør det muligt at køre kode på målsystemet. Ved at få kontrol over opkaldsstakken styrer hackeren flowet af eksisterende godkendt software, der kører på computeren, og manipulerer den til at udføre en anden opgave end den tilsigtede.