반환 지향 프로그래밍
ROP(반환 지향 프로그래밍)는 공격자가 기존 코드를 통해 제어 흐름을 지시함으로써 악의적인 결과를 초래하는 일반적인 코드 재사용 공격입니다. ROP 공격은 스택 스매싱 공격의 고급 버전을 나타냅니다. 스택 버퍼 오버플로는 일반적으로 길이가 고정된 버퍼를 사용하여 프로그램이 의도한 데이터 구조 외부의 프로그램 호출 스택에 있는 메모리 주소에 쓸 때 발생합니다.
ROP는 대상 시스템에서 코드를 실행할 수 있도록 하는 exploit 기술입니다. 공격자는 호출 스택을 제어함으로써 컴퓨터에서 실행되는 신뢰할 수 있는 기존 소프트웨어의 흐름을 제어하고 의도한 것과 다른 작업을 수행하도록 조작합니다.