Format #1
-
[Binary Exploitation] Format #1CTF write_up/NACTF 2019. 9. 24. 00:23
일단 c코드를 확인해 보겠습니다. vuln함수의 FSB 취약점을 이용해서 num의 값을 42로 맞춰주면 Clear 되는 것 같습니다. 파일을 실행해 보면 다음과 같은 문자열이 출력됩니다. 앞전 format-0문제와 똑같이 4번 오프셋에 값이 들어 갑니다. %n이란? 앞에 나온 문자열의 공간의 개수 만큼을 다음 주소에 넣어 주는 것 입니다. 이러한 코드가 있을때 num의 값은 4라는 값이 들어가게 됩니다. 123\0 => 4개의 공간을 차지하기 때문입니다. 그렇다면 일단 num 인자가 어디에 있는지 확인해 보겠습니다. vuln+77에 break를 걸고 확인해 보겠습니다. buf 변수의 ret에는 main으로 나가는 주소값이 있을 것이므로 미리 확인해 가겠습니다. RET의 주소는 0x080492a9입니다. ..