![article thumbnail image](https://blog.kakaocdn.net/dn/bj9Ogs/btq2kCdK6HX/DLFAPUM0AIEDu1ZQ5ySLk1/img.png)
1. 문제
앞선 14번 문제와 유사한 모습이다.
다만 여기선 check가 int형 포인터이다.
bof를 통해 check 값( 주소 값을 변경해서 ), 그 주솟값을 참고했을 때 0xdeadbeef 가 되게 해야한다.
-> 0xdeadbeef 의 주솟값을 구해서 check 값을 그것으로 변경해주면 될 것이다.
2. 문제 해결 과정
이제 그럼 구해야 할 것들 구해보자!
check : ebp-16
buf : ebp -56
check 와 buf 간 offset은 40이다.
그리고 0xdeadbeef 의 경우 프로그램에 직접 코딩되어 있어 코드 영역에 존재한다.
그래서 0xdeadbeef 의 주소를 구해보자!
따라서 payload는 다음과 같을 것이다.
"A"*40 + 0x80484b2
3. Exploit
'Wargame > Hackerschool FTZ' 카테고리의 다른 글
[FTZ] 해커스쿨 FTZ level 17 (0) | 2021.04.13 |
---|---|
[FTZ] 해커스쿨 FTZ level 16 (0) | 2021.04.13 |
[FTZ] 해커스쿨 FTZ level 14 (0) | 2021.04.12 |
[FTZ] 해커스쿨 FTZ level 13 (0) | 2021.04.12 |
[FTZ] 해커스쿨 FTZ level 12 (0) | 2021.04.12 |