티스토리 뷰
FTZ Level12
아래의 소스를 보면 str 변수에 gets()로 입력을 받고 출력하는 간단한 프로그램입니다.
프로그램을 tmp로 복사해서 gdb로 분석을 시작해 봅시다!!!
gdb로 attackme 파일을 열어보면 main+3에서 스택에 0x108의 공간을 할당하는 것을 확인 할 수 있습니다.
0x108 - 0x8 은 256byte입니다.
0x8 Dummy 입니다.
main+9에서는 스택에 0x8의 공간을 할당하는 것을 확인 할 수 있습니다.
0x4 SFP값이고요, 0x4 RET값 입니다.
최종적으로 아래의 표와 같이 스택이 이루어 지는 것을 알 수 있습니다.
RET [4] |
SFP [4] |
Dummy [8] |
Str [256] |
str의 시작 주소는 0xbfffde58입니다.
그럼 Level11과 같이 쉘 코드를 만들어 익스하시면 됩니다.
'Pwnable > FTZ' 카테고리의 다른 글
FTZ Level14 (0) | 2018.11.14 |
---|---|
FTZ Level13 (0) | 2018.11.14 |
FTZ Level11 (0) | 2018.11.14 |
FTZ Level10 (0) | 2018.11.14 |
FTZ Level9 (1) | 2018.11.14 |
댓글
최근에 올라온 글
- Total
- Today
- Yesterday