Write Up/CodeEngn

[CodeEngn] Basic RCE L11

jxx_yxjx 2022. 11. 3. 18:20

OEP를 찾으시오. Ex) 00401000 / Stolenbyte 를 찾으시오.
Ex) FF35CA204000E84D000000 정답인증은 OEP+ Stolenbyte
Ex ) 00401000FF35CA204000E84D000000

먼저 문제파일을 다운로드 받아주고 PEiD에 넣어 패킹 상황을 살펴본다.

확인 결과 패킹되어 있으므로 upx -d 옵션으로 언패킹 해준다.

언패킹 후 이뮤니티 디버거에서 해당 파일을 열어보았다.

시작주소가 OEP이므로 OEP는 00401000으로 보인다.

이후 Stolenbyte를 찾기 위해 우클릭 -> search for -> find all commands에 popad를 검색해보았으나 해당 정보를 얻을 수 없었다.

패킹 전 파일을 다시 디버거에서 실행시켜보도록 하자.

하단은 언패킹 이전 상태의 원본 문제 파일을 디버거에 가져온 화면이다.

이후 다시  Stolenbyte를 찾기 위해 우클릭 -> search for -> find all commands에 popad를 검색해보았다.

이번에는 원하던 Stolenbyte를 얻을 수 있었다. 6A0068002040006812204000

따라서 OEP + Stolenbyte =  004010006A0068002040006812204000