코드엔진 Basic - 8번 문제 풀이

김왕구·2023년 7월 25일
0

CodeEngn

목록 보기
3/3

이번에 풀 문제는 CodeEngn Basic 8번입니다.

문제를 살펴보겠습니다.

이번 문제의 핵심은 OEP를 찾는 것입니다.
??? OEP만 구하면 된다고? 이거 진짜야??

이 문제를 보기 전, CodeEngn 6번 문제의 풀이를 보고 오지 않았다면, 반드시 보고 오시기 바랍니다.

1. 정보 수집

이번 문제에서 주어진 프로그램입니다.

ExeInfoPE

ExeInfoPE를 통하여 프로그램을 살펴보겠습니다.

위 정보에 따르면, UPX의 형태로 압축이 되어 있는 것으로 보입니다.

2. 분석

UPX의 형태로 프로그램이 압축 되어 있는 것을 확인했으니 OEP(Original Entry Point)를 찾아봅시다.

언패킹 스텁이 끝난 뒤, OEPjmp하는 코드가 보입니다.
이 코드를 따라가보니 아래와 같은 OEP를 찾을 수 있었습니다.

OEP

OEP0x01012475 입니다.


3. 정답

문제에서 OEP를 요구하고 있으므로 정답은 01012475가 됩니다.

정답인 것을 알 수 있었습니다.

다음은 9번 문제 풀이로 돌아오겠습니다. 감사합니다!

profile
시스템 보안과 운영체제 개발, Rust에 관심이 많은 학생

1개의 댓글

comment-user-thumbnail
2023년 7월 25일

공감하며 읽었습니다. 좋은 글 감사드립니다.

답글 달기