[클라우드 바우처] 80% 할인된 금액으로 드림핵 엔터프라이즈를 도입해 보세요. 자세히 알아보기
libc.symbols['__libc_start_main'] + 231

libc.symbols['__libc_start_main'] + 231 이 부분이 이해가 되지 않습니다.
fho 실행 파일 gdb에서 스택 찍어보면 ret에 찍혀 있는 주소값이 있고
해당 주소값을 확인해보면 __libc_start_main + 205라고 되어있는데요 왜 231이 답이되는걸까요?

#pwnable
작성자 정보
답변 3
Hmin
강의 수강: 10

버전에 따라 다릅니다.
일단 저의 경우 libc-2.31 버전을 사용하는데 libc-2.31에서는 main 함수의 return address가 <__libc_start_main+243> 입니다.

ret의 값이 __libc_start_main + 205라고 하셨는데 사진을 봐야 알 듯합니다.

https://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_system&no=1825

2022.08.08. 16:41
이무쿤
대표 업적 없음

image.png
image.png

인 상태에서 ret 주소는 0x00007ffff7dfd7fd 일텐데요,

image.png

이렇게 gdb로 찍어보면 +205로 찍힙니다.

2022.08.11. 15:04
Hmin
강의 수강: 10

image.png
main의 ret위치에 bp를 설정합니다.
그리고 run을 하면

image.png
disasm 창에서 ret에 __libc_start_main+243이 들어있는것을 확인하실 수 있습니다.

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