
[FTZ] 해커스쿨 FTZ level 9
2021. 3. 26. 19:32
Wargame/Hackerschool FTZ
문제 힌트를 확인한 결과입니다. fgets 함수를 통해 buf에 입력을 받는데, buf의 크기인 10보다 큰 40 byte 만큼 입력을 받고 있습니다. 따라서 버퍼 오버플로우가 발생합니다. 이때 우리의 목표는 level 10의 권한으로 쉘을 실행시키는 것으로, buf2의 값이 "go"일 때 level 10의 권한으로 "/bin/bash"가 실행됩니다. 따라서 버퍼 오버플로우를 통해 buf2의 값을 "go"로 변경하면 될 것으로 보입니다. 그럼 이제 offset을 구하고 payload를 작성해보겠습니다. Offset 구하기 gdb를 이용해 디버깅을 해보겠습니다. 그런데 /usr/bin/bof 파일에 gdb를 실행시키니 permission denied가 뜹니다. 그래서 hint에서 주었던 소스 코드를 가지고..