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

UPX로 암호화 되어 있다.
9번 문제처럼 StolenByte가 POPAD 밑에 있을 수 있으니까 언패킹 하지 말고 열어보자.
9번 문제 : https://esyeonge.tistory.com/43?category=979957

9번 문제와 동일하게 POPAD 밑에 12바이트의 StolenByte가 보인다.
그리고 00407387에서 JMP를 하는 것으로 보아 0040100C가 OEP로 추측된다.
OEP+StolenByte의 값인
을 입력해보았다.
그랬더니 문제가 풀리지 않았다.

그래서 00407387 주소에 BP를 걸어두고 0040100C로 이동해보았더니 00401000부터 nop sled가 있는 것이 보였다.
원래라면 이 부분에 StolenByte가 들어가서 여기서부터 시작되었을 테니 OEP가 00401000이 되어야 한다.
OEP를 변경한 004010006A0068002040006812204000을 입력하였더니 문제가 풀렸다!
'Wargame > CodeEngn' 카테고리의 다른 글
CodeEngn Basic RCE L13 (0) | 2021.05.17 |
---|---|
CodeEngn Basic RCE L12 (0) | 2021.05.16 |
CodeEngn Basic RCE L10 (0) | 2021.05.10 |
CodeEngn Basic RCE L09 (0) | 2021.05.10 |
CodeEngn Basic RCE L08 (0) | 2021.05.10 |