Dreamhack 난이도 이름 rop 미리 알고 올 것 PLT와 GOT 이해 스택 카나리(Stack Canary) 이해 SYSV 함수 호출 규약 워게임 <Return to Library> (RTL; Return to Library 기법) 문제에서 주어진 바이너리 파일의 C언어 소스코드는 아래와 같습니다. // Name: rop.c // Compile: gcc -o rop rop.c -fno-PIE -no-pie #include <stdio.h> #include <unistd.h> int main() { char buf[0x30]; setvbuf(stdin, 0, _IONBF, 0); setvbuf(stdout, 0, _IONBF, 0); // Leak canary puts("[1] Leak Canary"); write(1, "Buf: ", 5); read(0, buf, 0x100); printf("Buf: %s\n", buf); // Do ROP puts("[2] Input ROP ...
#ASLR
#rop
#ROP_chaining
#stack_canary
#system
#문제풀이
#버퍼오버플로우
#스택프레임
#자세함
#return_to_library
#return_oriented_programming
#bof
#dreamhack
#exploitation
#GOT
#GOT_overwrite
#NX
#pwn
#pwnable
#해설
원문링크 : [dreamhack.io] 「rop」 풀이