Reversing/CodeEngn

[CodeEngn] RCE basic L08 풀이

chan2s 2025. 9. 1. 11:53

Q8. OEP를 구하시오 Ex) 00400000

[그림 1] 08.exe 최초 실행

평범한 계산기 프로그램으로 보였다. 간단한 연산도 잘 수행해냈다.

[그림 2] OllyDbg 08.exe 로드

OllyDbg로 열어보려고 하니 Compressed code라고 알림창이 하나 출력되었다.
실행 압축된 코드라고 하니 어떤 실행 압축 프로그램인지 알아내기 위해서 ExeinfoPE 프로그램을 이용하였다.

[그림 3] Exeinfo PE 08.exe 로드

해당 프로그램을 이용해서 08.exe를 분석해보니 UPX 실행 압축된 프로그램이라고 한다.

[그림 4] 08.exe UPX 언패킹

upx -d 08.exe

따라서 UPX 언패킹 툴을 이용하여 언패킹을 진행한다.

[그림 5] 01012475 EP 확인

이제 OEP를 알아내기 위해서 언패킹한 08.exe를 다시 ollydbg로 로드해보았다.
디버깅 후 프로그램을 종료하면 EP로 돌아오게 되는데, 언패킹을 진행한 프로그램의 EP는 OEP이므로 정답을 찾아낼 수 있다. 

따라서 OEP는 01012475 이다.

'Reversing > CodeEngn' 카테고리의 다른 글

[CodeEngn] RCE basic L10 풀이  (3) 2025.09.01
[CodeEngn] RCE basic L09 풀이  (2) 2025.09.01
[CodeEngn] RCE basic L07 풀이  (2) 2025.09.01
[CodeEngn] RCE basic L06 풀이  (3) 2025.09.01
[CodeEngn] RCE basic L05 풀이  (3) 2025.08.31