Write Up/CodeEngn

[CodeEngn] Basic RCE L12

jxxwxx 2022. 11. 3. 19:05

Key를 구한 후 입력하게 되면 성공메시지를 볼 수 있다
이때 성공메시지 대신 Key 값이 MessageBox에 출력 되도록 하려면 파일을 HexEdit로 오픈 한 다음 0x???? ~ 0x???? 영역에 Key 값을 overwrite 하면 된다.
문제 : Key값과 + 주소영역을 찾으시오
Ex) 7777777????????

문제 파일을 다운로드 받고 PEiD에 던져보았다.

EP Section이 .text로 나타나므로 언패킹 없이 바로 디버거에서 열어보도록 하자.

이뮤니티 디버거에서 실행 파일을 열면 다음과 같은 화면을 볼 수 있다.

실행을 하다보면 하단과 같이 키값을 입력하는 창이 뜨고, 아무 키값을 치면 프로그램이 종료된다.

다시 돌아가서, 코드를 살펴보았다.

메시지박스에 Congratulation, you found the right key라는 문구가 뜨는 부분을 찾아냈고, 

상단에서 cmp문을 발견했다. cmp문에서 올바른 키 값과 비교한다고 생각했고 키 값은 7A2896BF라고 예상했다.

16진수를 10진수로 변환해준다.

키 값은 2049480383

HxD에 파일을 열어 성공메시지가 출력되는 지점을 찾았다.

2049480383 이 부분의 영역을 가져온다. 이 때 영역은 키 값 영역만큼만 가져와야하므로 0D3B ~ 0D45

답은 키 값 + 영역  20494803830D3B0D45