frame pointer overflow

    [pwnable.xyz] J-U-M-P

    문제 풀이 환경 : Ubuntu 16.04 생각보다 간단했던 문제다. 📝 Analysis > Canary를 제외하고는 초록초록하다. 3번 메뉴는 뭔갈 leak 해주고, 1번은 Segmentation fault가 뜬다. · main 초기 세팅을 살펴보면, 미티게이션에서 canary 없었던 이유가 나만의 canary 만들기 때문이라는 걸 유추할 수 있다. v6(rbp - 0x8)에는 PIE offset + 0xba0 값을 먼저 저장해준다. 메뉴별 기능을 살펴보자. 메뉴 number 기능 1 v5(rbp - 0x10)에 저장한 나만의 canary 값이 전역 변수 canary 값과 같을 때 v6의 값을 주소로 call을 해준다. (어셈블리어로 보면 그렇다.) 2 v6의 하위 4Byte와 select를 xor 해..