tmxklab

[CodeEngn] Advance RCE L04 본문

War Game/CodeEngn

[CodeEngn] Advance RCE L04

tmxk4221 2021. 2. 17. 12:08

1. 문제

 

1) 문제확인

 


2. 접근방법

  • 패킹 x

 


3. 문제풀이

  • 패킹되지 않았는데 보이는 함수라고는 sub_4011AE()밖에 존재하지 않는다.

디버깅해보면서 확인해보자

  • 쭉 따라가다보면 0x401006부터 Dialog관련 함수들이 보인다.
  • 이를 통해 0x401006이 OEP인 것을 확인할 수 있다.

 

  • x32dbg에서 제공해주는 scylla플러그인을 사용해서 덤프해주자

 

  • 아이다에서 덤프파일을 확인해보면 제대로 함수들이 나오는 것을 확인할 수 있으며 성공관련 문자열을 참조하는 함수를 따라가보면 위 그림과 같이 sub_401114()에서 참조하는 것을 알 수 있다.

 

이제 저 함수를 중점적으로 디버깅해보자

  • Name에는 "CodeEngn"을 Serial에는 "1234"로 입력하였다.

  • 위 그림을 확인해보면 입력한 Serial값과 0x403104에 저장된 문자열과 비교한다.
  • 동일하면 eax값이 0으로 세팅되고 밑에 MessageBox()를 호출하게 된다.

  • 입력한 Serial값을 0x403104에 있는 문자열로 변경하고 실행하면 위 그림과 같이 나오게 된다.
  • 따라서, 입력해야 하는 Serial값이 "LOD-59919-A0024900"임을 알 수 있다.

'War Game > CodeEngn' 카테고리의 다른 글

[CodeEngn] Advance RCE L06  (0) 2021.02.17
[CodeEngn] Advance RCE L05  (0) 2021.02.17
[CodeEngn] Advance RCE L03  (0) 2021.02.17
[CodeEngn] Advance RCE L01  (0) 2021.02.17
[CodeEngn] Basic RCE L20  (0) 2021.02.04
Comments