해킹 공부/리버싱

CodeEngn_Basic RCE L06 (OEP, unpacking, strings)

O'bin 2022. 10. 9. 23:23

 

 

 

 

 1.  문제 파일 실행

 

문제 파일(06.exe) 실행 시 시리얼값을 입력받아 확인하는 메세지창이 뜬다.

 

 

 

 

 2.  PEiD로 패킹 정보 확인 및 upx 언패킹

 

PEiD로 확인 결과 upx로 패킹되었음을 알 수 있다.

 

 

 

upx 사용 위해선 대상 파일과 upx.exe가 같은 위치에 있어야 한다.

 

 

upx.exe와 문제 파일을 같은 위치에 두고 그 위치에서 powershell(or cmd)를 열어 upx 언패킹을 진행한다.

 

 

 

 3.  OEP 및 Serial 확인

 

 

언패킹 후 디버거로 파일을 열어 분석을 시작한다.

정답 인증에 OEP(Original Entry Point)가 필요하기 때문에 디버거에서 파일 실행 시 가장 먼저 위치하는 진입 지점 00401360을 기억해놓자.

 

 

 

 

 

마우스 오른쪽 버튼 클릭 -> Search for -> All referenced text strings 로 프로그램 내 문자열을 확인한 결과

시리얼번호로 추정되는 문자열을 찾았다.

 

 

 

정답 인증은 OEP(Original Entry Point) + Serial이므로 00401360AD46DFS547을 입력하니 성공했다.

 

 

 

 


OEP 개념, UPX 언패킹, Strings 분석을 이용해 풀 수 있는 문제였다.