[Plaid CTF 2015] Pwnable - EBP
문제Pwnable (160 pts)nc 52.6.64.173 4545 Download: %p%o%o%p. 문제를 설명만 봐도 대략적으로 포맷스트링 취약점을 이용한 것이라 판단하고 분석해보면 포맷스트링 버그가 맞다. 문제를 풀고 나서 다른 팀의 답을 보니 -_-; 문제 의도랑은 다르게 풀었나 싶다. 아마도 문제 의도는 포맷스트링 취약점과 Fake EBP 기법을 이용하여 푸는 것이라고 판단된다.소스 코드 자체는 간단하게 디버깅 가능하지만 보기 편하게 Hex-ray로 디컴파일 한 내용은 다음과 같다. 여기서 포맷스트링 취약점이 존재하는 지점은 make_response()의 snprintf()가 호출되는 지점이다. 거의 모든 영역에서 실행이 가능한 것으로 확인되기 때문에 쉘코드를 버퍼에 두고 흐름을 쉘코드로 바..