Iriton's log

[CodeEngn] Basic RCE - L05 본문

Reversing/Wargame

[CodeEngn] Basic RCE - L05

Iriton 2023. 11. 15. 10:05

이 프로그램의 등록키는 무엇인가


풀이

무슨 프로그램인지는 잘 모르겠다.

이것저것 눌러보니 등록키가 저런 숫자와 영어 조합인 거 같은데

코드 분석으로 찾으면 되는 거 같다.

PEiD로 확인해 보니 UPX로 패킹되어 있는 것을 확인할 수 있었다.

이제 UPX 패킹은 익숙하다.

등록키를 찾기 위해

cmd를 통해 언패킹을 해준 뒤 올리디버거로 열어볼 것이다.

언패킹 하는 법: [upx가 다운받아져 있는 파일에 05.exe를 옮긴 뒤 cmd 실행 - upx.exe -d 05.exe]

 

그럼 이런 화면이 뜬다.

등록키를 정상 입력됐을 때 뜰 만한 문구를 찾기로 했다.

[우클릭 - Search for - All referenced text strings]

 

그럼 이렇게 텍스트를 띄우는 코드들이 뜬다.

저 중에서 "Congrats! You cracked this CrackMe!" 라는 문구가 의심이 가니 더블클릭 해줬다.

(그 위쪽에 있는 등록키 값 배열과 같아 보이는 GFX-754-IER-954도 의심스러웠지만 심증 뿐이라서

좀 더 확실한 애로 선택했다.)

 

분기문 시작 부분에 BP를 걸어두고 프로그램을 작동시킨 뒤

한줄씩 실행해봤다.

 

 

Resgister User을 EDX에 저장한 뒤 오는 CALL 코드 함수 내부에 진입하였을 때 화면이다.

EDX와 EAX를 비교하는 코드가 보인다.

두 값이 같다면 점프문을 활용하여 POP코드로 이동했다.

 

이때 EAX, EDX 값을 비교해 보니 EAX는 내가 입력한 값이다.

그럼 EDX인 Register User이 답이 되겠다.

시리얼값도 마찬가지로 분석해 보면 아까 의심했던 값인

GFX-754-IER-954이다.

 

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

[CodeEngn] Basic RCE - L08  (1) 2023.11.15
[CodeEngn] Basic RCE - L06  (0) 2023.11.15
[CodeEngn] Basic RCE - L04  (0) 2023.11.14
[CodeEngn] Basic RCE - L02  (0) 2023.11.14
[CodeEngn] Basic RCE - L01  (0) 2023.11.14
Comments