STACK

pwndbg> nearpc 0x400611
0x4005fe <main+25> lea rax, [rbp - 0x30]
0x400602 <main+29> mov rsi, rax
0x400605 <main+32> lea rdi, [rip + 0xa8] #0x4006b4
0x40060c <main+39> mov eax, 0
► 0x400611 <main+44> call __isoc99_scanf@plt __isoc99_scanf@plt

pwndbg> x/s 0x4006b4
0x4006b4: "%s
입력할 버퍼와 반환 주소 사이에 0x38만큼의 거리가 있다는데 [rbp - 0x30]를햇으면
30만큼잇는ㄴ게 아닌가요? 왜 38만큼잇는건가요?

#stack
작성자 정보
답변 1
avatar
Sechack
CTF First Place

return address는 rbp+8에 위치합니다. rbp에는 이전 함수의 스택 베이스 포인터. 즉 sfp가 존재해요.

2022.05.06. 22:58
질문에 대한 답을 알고 계신가요?
지식을 나누고 포인트를 획득해보세요.
답변하고 포인트 받기