[Whitehat Conference 2024 Quals / pwnable] gf
CTF
attachmentAnalysisBSS의 src에 0xbc바이트를 입력받고 [1], stack의 dest에 0xbb바이트를 memcpy()로 복사하여 [2] stack buffer overflow가 발생한다. Canary가 없기 때문에 ROP가 가능하다.memcpy()에서 애매하게 0xbb바이트를 복사하는 이유를 알기 위해 memcpy() 이후의 stack 메모리를 보면,libc 주소의 상위 3바이트가 저장되어 있는 것을 확인할 수 있다. Libc 주소의 하위 1.5바이트는 고정이기 때문에 중간의 1.5바이트만 brute force하면 libc의 임의 주소로 한 번 return할 수 있다.ExploitationFirst attempt (failed)main()이 return하는 시점에서 rdi에 memc..