받은 바이너리부터 IDA로 열어봤다. 바이너리 자체는 되게 간단하다. x86_32 syscall table 확인해보면 stdout에 출력하고, stdin을 read 해주는 간단한 바이너리라는 것을 알 수 있다. 바이너리 mitigation은 안 보인다. NX 안걸려있어서 execute 권한이 스택에 있다. 여기서 bof가 터진다. 처음에는 bof로 ret를 덮고, eip는 32비트니까 대충 NOP Sled 태워서 익스하려고 했다. 근데 0x3c라서 안 되겠다 싶었다. IDA를 다시 보니까 처음에 esp를 push 하는 게 보인다. 그래서 esp leak 하고 익스해야겠다고 생각했다. ubuntu20.04 로컬 환경에서 leak을 진행했다. push 이렇게 되니까, 0x18 만큼 덮으면 esp 전까지 덮인..