촉촉한초코칩

CodeEngn Basic RCE L14 본문

Study/Reversing

CodeEngn Basic RCE L14

햄친구베이컨 2022. 11. 17. 18:48

 

언패킹한 후 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