서브웨이

CodeEngn Basic RCE L05 풀이 본문

Reverse Engineering/CodeEngn

CodeEngn Basic RCE L05 풀이

샌드위치메이커 2020. 1. 3. 00:50

먼저 디버거에 올려보자.

뭔가 이상하다. 평소에 보던 어셈블리랑 다른 느낌이다. Detect It Easy를 돌려보자

UPX라는 것으로 패킹이 되어있다고 한다.

패킹이란 간단히 말하면 실행 압축인데, 파일 내부의 코드부분을 압축하여 저장하고있다가 실행할때 메모리에 압축된 코드를 풀어서 실행하는 기법이다. 패킹된 상태에선 어셈블리어로 보는것이 어렵다.

언패킹을 위해 툴을 써보자.

https://github.com/upx/upx/releases/tag/v3.94

 

upx/upx

UPX - the Ultimate Packer for eXecutables. Contribute to upx/upx development by creating an account on GitHub.

github.com

위의 링크로 가서 운영체제에 맞게 다운 받는 후 cmd로 언패킹을 한다.

그리고 언패킹한 파일을 디버거에 올리고 문자열을 검색하면 아래와 같이 나오는데

그러면 아이디와 시리얼로 추측되는 문자열을 찾을 수 있다.

해당 문자열이 위치한 곳으로 가보면

간단하게 아이디가 Registered User이고 시리얼이 GFX-754-IER-954인지 확인하는 코드임을 알 수 있다.

따라서 위의 아이디와 시리얼을 입력하면

성공메시지가 뜬다.

'Reverse Engineering > CodeEngn' 카테고리의 다른 글

CodeEngn Basic RCE L09 풀이  (0) 2020.01.08
CodeEngn Basic RCE L08 풀이  (0) 2020.01.07
CodeEngn Basic RCE L07 풀이  (0) 2020.01.07
CodeEngn Basic RCE L06 풀이  (0) 2020.01.04
CodeEngn Basic RCE L04 풀이  (0) 2020.01.02
Comments