x32는 카나리가 어...
어찌저찌 풀기는 했는데, 카나리가 4byte니까 당연히 rbp-4에 있을 줄 알았는데 rbp-8에 있고 rbp-4에는 뜬금없이 GOT가 있어서 동적디버깅 전까지는 왜 안풀리나 했네요.
근데 저 주소 접근하려고 해도 열리지가 않아서, 뭔가요?🤔
아니 근데 애초에 저게 왜 저기있어요?
#pwnable
작성자 정보
답변
1
demo
대표 업적 없음
아는 것에 한해서 말씀드리자면..
함수 호출 시 특정 레지스터를 보존해야하는 경우가 있습니다
메인함수 시작 부분을 보면 ebp를 push하고 추가로 edi를 넣고 있습니다.
ebp-0x04에는 edi가 들어있어 ebp-0x08에 카나리를 저장하는 것으로 보입니다.
edi는 메인함수가 종료되기 전에 main+345에서 복원됩니다.