촉촉한초코칩
CodeEngn Basic RCE L14 본문
언패킹한 후 OllyDbg로 열어준다.
그리고 파일을 실행해보면 이런 화면이 나오는데, Name과 Serial을 입력하라고 한다.
Name은 이미 문제에 나와있기 때문에 Serial만 구하면 된다.
먼저 두 개 다 정답으로 입력했을 때 나오는 메세지를 찾아보았다.
Name과 Serial을 입력하면 정답과 비교한다. (EAX, ESI) 그러므로 ESP 여기에 정답이 있을 것이라고 생각했다.
그런데 OllyDbg로는 실행이 잘 안되는 것 같아서 Immunity Debugger를 다운받았다.
디버거에서 실행하면 프로그램이 실행되는데, Name으로는 CodeEngn을 넣고 Serial에는 아무 값이나 넣어보았다.
그러면 내가 넣은 값이 보인다.
그리고 CMP를 비교해서 Serial이 맞을 때 / 틀릴 때 비교해서 메시지를 출력시킨다.
여기서 POP ESI는 ESI에 값을 넣는다는 의미이기 때문에 여기가 정답일 것이라고 추측했다.
사용자가 입력하는 값은 10진수이고 저장된 값은 16진수이기 때문에 진수변환을 해줘야 한다.
→ 76193
'Study > Reversing' 카테고리의 다른 글
CodeEngn Basic RCE L16 (0) | 2022.11.25 |
---|---|
CodeEngn Basic RCE L15 (0) | 2022.11.22 |
CodeEngn Basic RCE L13 (0) | 2022.11.17 |
CodeEngn Basic RCE L12 (0) | 2022.11.15 |
CodeEngn Basic RCE L10 (0) | 2022.11.09 |