본문 바로가기

CodeEngn

[CodeEngn]Advance RCE 03 Write Up

https://codeengn.com/challenge/rce_advance/

 

CodeEngn [코드엔진] 리버스엔지니어링 컨퍼런스

CodeEngn Challenge 리버스엔지니어링을 어느정도 접한 분들을 위한 중급 단계 Manager >> Auth | Checkin List | Hall of Fame Challenge >> Basic | Advance | Pro | Malware | Crypto | Mobile RCE Advance Level Description Author Download Adv

codeengn.com

 

문제 설명

일단 파일을 실행하기 전 detect it easy를 통해 패킹을 확인해보자 

 

이번에는 패킹이 되어있지 않은 모습이다

프로그램을 실행해보자 

프로그램 실행 시 나타나는 화면

프로그램을 실행하면 이러한 모습이 나온다

name에 CodeEngn을 넣고 적절한 Serial 값을 입력하면 올바른 문구를 출력하는 듯하다

Test 화면

일단 올리디버거를 통해 분석을 해보자

일단 시리얼 값을 비교하는 함수가 존재할 것이다 

search for all intermodular calls 를 통해 살펴보자

lstrcmpA 함수가 눈에 들어온다 저 위치로 이동하여 확인해보자 

실패 문구와 함께 함수가 위치한 상태이다

String1과 String2에 들어온 값을 비교하는 듯하다 

00401196에 breakpoint를 걸어 확인해보자 

테스트삼아 1234를 입력하였더니 String2에는 입력한 값이 들어간 것을 알 수 있다

String1이 우리가 입력해야하는 적절한 문자열인듯 하다 

다시 실행하여 확인해보니 

정답

 

성공이다!

'CodeEngn' 카테고리의 다른 글

[CodeEngn]Advance RCE 06 Write Up  (5) 2024.10.31
[CodeEngn]Advance RCE 05 Write Up  (8) 2024.10.30
[CodeEngn]Advance RCE 04 Write Up  (0) 2024.09.11
[CodeEngn]Advance RCE 02 Write Up  (2) 2024.09.09
[CodeEngn]Advance RCE 01 Write Up  (2) 2024.09.07