JOP(Jump-Oriented Programming)
JOP(Jump-Oriented Programming) JOP는 JMP 명령어를 이용하여 프로그램의 흐름을 제어하는 Exploit 기술 이다. JOP의 Gadget은 "Exploit에 필요한 코드 + JMP 명령어" 이와 같은 형태이며, 예를 들어 다음과 같은 Gadgets 이 사용된다. x64환경에서 함수의 첫번째 인자 값에 0을 저장 : "mov rdi, 0; jmp [R9]" x64환경에서 함수의 두번째 인자 값에 RSP에 저장된 값을 저장 : "mov rsi, [rsp]; jmp [R9]" JOP는 여러개의 Gadget들을 실행하기 위해 별도의 Gadget과 구조가 필요하다. "Example of JOP" 설명. JOP Gadget들의 주소 값은 0x1000 ~ 0x1018 영역에 저장되어 있다...
Pwnable Exploitation/08.JOP(Jump-Oriented Programming)
2020. 7. 6. 21:05