문제입니다.

"06.exe"를 실행해보니 입력란이 있고 시리얼을 체크하는 버튼이 있네요

체크 버튼을 눌렀을때

"Wrong serial!!!"이라는 메시지 박스가 나타났습니다.

파일을 한번 분석해보겠습니다.

PEID로 살펴본 결과 UPX로 패킹이 되어 있네요 ~

이번엔 UPX 툴을 이용하여 압축을 풀어보겠습니다.

upx -d [패킹된 파일명] -o [언팩될 파일명]

저는 06_unpack.exe 라는 명으로 언팩파일을 생성했습니다.

정상적으로 언팩했습니다.

이제 올리디버거로 OEP코드와 시리얼을 찾아보겠습니다.

올리디버거로 언팩된 파일을 열면 제일 먼저 보이는 주소가 OEP입니다.

즉, "00401360" 이 OEP주소입니다.

이제 시리얼을 찾아보겠습니다.

"Wrong serial!!!"이라는 메시지 박스를 띄우는 것을 알고 있기에

[Search for] -> [All intermodular calls]를 이용하겠습니다.

바로 수상한 문자열들이 보입니다.

저는 "AD46DFS547"이 시리얼일 것 같아서 더블클릭해서 바로 들어가 보았습니다.

"AD46DFS547"이 부분이 인자로 쓰인것으로 보아 무언가와 비교하는 함수 인 것 같아서 Break Point를 걸고 입력값으로 "1234"를 주고 실험을 했습니다.

결과는 "Wrong serial!!!"이 었습니다.

다음은 입력값에 "AD46DFS547"를 주고 실험했더니 아래와 같은 결과를 얻을 수 있었습니다.

OEP : 00401360

시리얼 : AD46DFS547

정답 : 00401360AD46DFS547

Basic RCE L06 성공!

'WAR GAME > CodeEngn(Basic)' 카테고리의 다른 글

Basic RCE L08  (2) 2020.04.29
Basic RCE L07  (2) 2020.04.29
Basic RCE L05  (2) 2020.04.29
Basic RCE L04  (2) 2020.04.29
Basic RCE L03  (2) 2020.04.28

+ Recent posts