5번 문제입니다.
PEID로 열면 UPX 패킹이 되어있는것을 알 수 있습니다.
upx툴로 언패킹 해줍니다.
언패킹 된 모습입니다.
언패킹 후 05.exe의 첫 실행화면입니다. name입력 부분과 serial 입력 부분이 있습니다.
ollydbg로 열어서 분석해보겠습니다.
제일 먼저 문자열을 확인해보겠습니다. 그냥 실행 했을때 확인할 수 있는 문자열들이 보이면서 문제의 단서가 될만한 문자열도 보입니다. F8로 계속 디버깅을 하다가 입력 부분에서 호출되는 함수를 따라 들어가겠습니다.
사용자가 입력한 값과 프로그램에서 원하는 값이 EAX와 EDX에서 ESI와 EDI로 MOV된 후 비교됩니다.
그리고 결과에 따라 분기문에서 경우가 나뉩니다.
따라서 문제에서 원하는 문자열을 입력하면 문제가 풀립니다.
'Wargame > CodeEngn challenge' 카테고리의 다른 글
CodeEngn basic Level 8 풀이 (0) | 2016.09.12 |
---|---|
CodeEngn basic Level 7 풀이 (0) | 2016.09.12 |
CodeEngn basic Level 6 풀이 (0) | 2016.09.11 |
CodeEngn basic Level 4 풀이 (0) | 2016.09.11 |
CodeEngn basic Level 3 풀이 (0) | 2016.09.11 |