728x90
[HackCTF] x64 Buffer Overflow
Date | |
---|---|
Tags | report |
1. 문제
5번 문제인 64bof_basic을 먼저 실행 시켜보면 다음과 같다
해당 문제는 RELRO, NX 비트가 걸려있기 때문에 쉘코드의 실행이 불가하고, got 오버라이트도 불가하다. 그리고 64비트 elf 파일인 것을 알 수 있다.
이것만 봐서는 어떠한 동작을 하는 코드인지 모르기 때문에 아이다를 이용하여 바이너리를 뜯어보았다.
scanf를 이용하여 bof가 가능 할 것으로 보이는데, 보호기법때문에 got overwrite와 쉘코드 삽입은 불가하다.
2. 접근방법
이 역시 주어진 함수가 있는지 확인해 보았다.
해당 함수를 실행만 시키면, 쉘이 떨어질 것이다. 따라서 scanf를 이용하여 ret 주소를 callMeMaybe 함수의 주소로 바꿔주면 된다.
3. 풀이
메모리 구조는 다음과 같다
sfp까지의 거리가 272(0x110)이므로 ret 까지의 거리는 +8 인 280바이트이다
callmeMaybe 함수 주소
4. 몰랐던 개념
이번 문제는 딱히 없었다.
728x90
'워게임 > HackCTF' 카테고리의 다른 글
[HackCTF] yes or no (0) | 2020.04.11 |
---|---|
[HackCTF] x64 Simple size BOF (0) | 2020.04.11 |
[HackCTF] Simple Overflow ver2 (0) | 2020.04.11 |
[HackCTF] RTL World (0) | 2020.04.11 |
[HackCTF] poet (0) | 2020.04.11 |