완료됨
[rbp-0x70] 의미

[rbp-0x70] 일때, sfp가 0x7fffffffe4a0: 0x00007fffffffe560 라면
0x7fffffffe4a0 - 0x70을 의미하는 건가요? 아니면 0x00007fffffffe560 - 0x70을 의미하는 건가요??
해당 문제를 풀 때 sfp를 sel + 0x70으로 만드는 것을 보았을 때, 후자인 것 같은데 원래 알기로는 전자였어가지고...

#pwnable
작성자 정보
더 깊이 있는 답변이 필요할 때
드림핵 팀과 멘토에게 직접 문의해 보세요!
답변 1
avatar
qkrthfals
공부벌레
avatar
qkrthfals
공부벌레

[rbp-0x70] 은 rbp 레지스터를 기준으로 -0x70을 연산한 위치를 가리킵니다.
연산 당시 rbp 레지스터가 가지고 있는 값이 0x00007fffffffe560 이라면
[rbp-0x70] 은 0x00007fffffffe560-0x70인 0x7fffffffe4f0을 가리킵니다.

스택 프레임 포인터는 함수 종료 이후 이전 스택 프레임으로 복귀하기 위한 값이므로 연산과는 관계가 없습니다.

2024.06.29. 13:14