char buf[0x28](40bytes)인데.. 첫번째 payload에 b'A' * 0x30(48bytes)만큼 넣어야 작동하는 이유가 뭐죠??
char buf0x28인데.. 첫번째 payload에 b'A' * 0x30(48bytes)만큼 넣어야 작동하는 이유가 뭐죠??
#pwnable
Author
Answers
1
wyv3rn
무플 방지 위원회장
어셈블러 코드를 보시면 아시겠지만 실제로는 그만큼 스택을 할당하기 때문입니다.
이는 컴파일 시 발생하며, 효율적인 메모리 관리를 위해 더미가 추가된 것입니다.
그런 경우가 잘 없긴 한데, 코드만으로 스택의 크기를 확인하는 것은 오류가 발생할 가능성이 항상 있습니다.